Why use both "End" and "EndMessage" to signify that a message has ended? Surely we can just use "End"?
Ian. On 18 Jan 2006, at 09:49, Matthew Toseland wrote: > We now have a very basic FCP implementation working in 0.7, from build > 362 onwards. > > $ telnet 127.0.0.1 8000 > Trying 127.0.0.1... > Connected to 127.0.0.1. > Escape character is '^]'. > ClientHello // client to node > Name=hello1 > ExpectedVersion=0.7.0 > End > NodeHello // node to client > FCPVersion=0.7.0 > Version=Fred,0.7,1.0,361 > Node=Fred > EndMessage > ClientPut // client to node, with payload > URI=KSK at blahblahblah.86149 > DataLength=9 > Identifier=6 > End > Hello !! > InsertSuccessful // node to client > Identifier=6 > URI=freenet:KSK at blahblahblah.86149 > EndMessage > ClientGet // client to node > Identifier=haha > URI=freenet:KSK at blahblahblah.86149 > End > > > This is not set in stone, I welcome suggestions for improvement! > > Currently defined messages (client to node): > > ClientHello > Name=<client name> > ExpectedVersion=0.7.0 > End > > ClientGet > IgnoreDS=false // true = ignore the datastore > DSOnly=false // true = only check the datastore, don't route (~= > htl 0) > URI=KSK at gpl.txt > Identifier=Request Number One > Verbosity=0 // no status, just tell us when it's done > ReturnType=direct // return all at once over the FCP connection > MaxSize=100 // maximum size of returned data (all numbers in hex) > MaxTempSize=1000 // maximum size of intermediary data > MaxRetries=100 // automatic retry supported as an option > EndMessage > > ClientPut > URI=CHK@ // could as easily be an insertable SSK URI > Metadata.ContentType=text/html > DataLength=19000 // hex for 100kB > Identifier=Insert-1 // identifier, as always > Verbosity=0 // just report when complete > MaxRetries=999999 // lots of retries > Data > <data> > > Node to client: > > NodeHello > FCPVersion=<protocol version, 0.7.0> > Node=Fred > Version=Fred,0.7,1.0,361 > EndMessage > > PutSuccessful > Identifier=<identifier> > URI=<uri to fetch> > EndMessage > > PutFailed > Code=9 // error code > Identifier=1 // identifier > ExpectedURI=freenet:KSK at hello.toad // insert URI if it succeeded > CodeDescription=Insert collided with different, pre-existing data > at the > same key // description of error > ExtraDescription=Hmmm // more info on the error > EndMessage > > GetFailed > Code=<error code> > CodeDescription=<description of error code> > ExtraDescription=<extra description of this specific error> > Fatal=<true|false; true means there isn't much point retrying as it's > probably an error with the data> > Identifier=<identifier passed in by client> > EndMessage > > ProtocolError // indicates an FCP protocol error > Code=1 // error code > CodeDescription=ClientHello must be first message // description of > error > ExtraDescription=Duh // more info on the error > Fatal=false // means the connection stays open > EndMessage > > IdentifierCollision // client tried to reuse an Identifier > Identifier=1 > EndMessage > -- > Matthew J Toseland - toad at amphibian.dyndns.org > Freenet Project Official Codemonkey - http://freenetproject.org/ > ICTHUS - Nothing is impossible. Our Boss says so. > _______________________________________________ > Tech mailing list > Tech at freenetproject.org > http://emu.freenetproject.org/cgi-bin/mailman/listinfo/tech
