all repos — xrxs @ b738d29f389d11012b9f4b82164422f487659bb2

experimental networked application/game server with 9p

design notes on 9p directory structure
Iris Lightshard nilix@nilfm.cc
PGP Signature
-----BEGIN PGP SIGNATURE-----

iQIzBAABCAAdFiEEkFh6dA+k/6CXFXU4O3+8IhROY5gFAmDHxXEACgkQO3+8IhRO
Y5g98Q/9ECtf5Hx8IoFAUUSuniDNqxN0S9xY93k2lk+PSOZM8NWqZLkCGsRrFa4o
w/uTQxMOTuhZrtLoASkerP+PoRzlsBRc3S3ii70om0/BfgvSU7XYZiyKK9kyi1b8
PANNSQ/CB4pi2bdwgMn1PL9/0aVUfIic+OXkZFHBmfSSAWoXKR6tdsh5t22xqTDe
G3cQUyJBD0gNJDBYoMrGPQRbfo4y4SPdG7RpXpcfOptg0MR5PYOyUxaGUiPRgQHm
I+hdDSLepp7NLeaDONzeP0tgZTmjjUCo7ZGNzuTKwyTBKMLvKvDoc9KlPKszjBuT
jckwmTFgQBfou5iBVeMYGCLMkNzP9S93xO551RQcyucMr1KgNSNW2v8KkWwfOS20
shszyVZ1BoLCnEnRhw7mUuYa/eiarPaynO2VFtLayAk6v/R+sg35nBZsXFAaJ/6Y
5hvlPkIQ6K0JX0DSij65IuwglZHxBm8hfSEyk7KvUIDrGTsBdamzoH1brt+R7vWV
8fw+g8jMwJsaiAwlLnlG3x/eOmiu0xhtS4iCev/H7Un6CWlshF1tY41shspwq40A
LYWHcp/QF/RWDYfQOrfamW4m6ZS0YFIiWCR9uKRcIwjyfvwW5vWzRH5zxnTl7MpF
dvb3VLW0A3rkryxO6jx8ykD+K5lBpABV0uSAtO8JU7LCiyYg8bY=
=6NVU
-----END PGP SIGNATURE-----
commit

b738d29f389d11012b9f4b82164422f487659bb2

parent

ed686913d24dd38bd8225bc3296f702e92305a26

1 files changed, 32 insertions(+), 0 deletions(-)

jump to
A DESIGN

@@ -0,0 +1,32 @@

+[9p directory structure] +/ctl: control file for inputing system commands + load CART: load a cartridge + create REALM: create a new realm (start a new game or app session) + protect REALM: protect the realm with auth data + enter REALM: join an existing realm + leave: leave the current realm + save: save the current universe to the realm + reset: reset the cartridge (attempts to leave the realm, but doesn't save) + unload: unload the cartridge + shutdown: disconnect from the xrxs server + +/carts/: available game/app cartridges for this server + +/realms/: open/saved realms + realms can either be solo, open, or protected; + open or protected realms can have limited member numbers + depending on the cartridge, these settings can be user-managed or managed by the cartridge itself + +/realm/REALM/index: realm data readable by the client before entering, eg: + 1 4 1 + first number is number of members + second is member limit + third is 1 if protected, 0 if not + 0 1 1 represents a protected solo realm that is empty (saved game with password) + 0 1 0 represents an unprotected solo realm that is empty (saved game with no password) +/realms/REALM/members: members of the realm +realms/REALM/allowed: allowed membernames (if empty, anyone is allowed) +realms/REALM/password: realm password +realms/REALM/universe/: universe data synced to the realm + +/universe/: arbitrary game data not yet synced to the realm