+ while (!Done) {
+ if (StrBuf_ServGetln(LineBuf) < 0)
+ break;
+ if ( (StrLength(LineBuf)==3) &&
+ !strcmp(ChrPtr(LineBuf), "000")) {
+ Done = 1;
+ }
+ StrBufAppendBuf(Buf, LineBuf, 0);
+ StrBufAppendBufPlain(Buf, HKEY("\n"), 0);
+ }
+ FreeStrBuf(&LineBuf);
+ break;
+ case 2:
+ break;
+ case 4:
+ text_to_server(bstr("g_input"));
+ serv_puts("000");
+ break;
+ case 6:
+ len = atol(&ChrPtr(Buf)[4]);
+ StrBuf_ServGetBLOBBuffered(Buf, len);
+ break;
+ case 7:
+ len = atol(&ChrPtr(Buf)[4]);
+ junk = malloc(len);
+ memset(junk, 0, len);
+ serv_write(junk, len);
+ free(junk);
+ break;