u_int32_t attn_quantum, datasize, server_quantum;
u_int16_t serverID, clientID;
u_int8_t *status, commands[DSI_CMDSIZ], data[DSI_DATASIZ];
- int statuslen, datalen, cmdlen;
+ int statuslen;
+ unsigned int datalen, cmdlen;
size_t read_count, write_count;
+ int asleep; /* client won't reply AFP 0x7a ? */
/* inited = initialized?, child = a child?, noreply = send reply? */
char child, inited, noreply;
const char *program;
extern void dsi_opensession __P((DSI *));
extern int dsi_attention __P((DSI *, AFPUserBytes));
extern int dsi_cmdreply __P((DSI *, const int));
-extern void dsi_tickle __P((DSI *));
+extern int dsi_tickle __P((DSI *));
extern void dsi_getstatus __P((DSI *));
extern void dsi_close __P((DSI *));
+extern void dsi_sleep __P((DSI *, const int ));
/* low-level stream commands -- in dsi_stream.c */
extern size_t dsi_stream_write __P((DSI *, void *, const size_t));
extern size_t dsi_stream_read __P((DSI *, void *, const size_t));
extern int dsi_stream_send __P((DSI *, void *, size_t));
-extern int dsi_stream_receive __P((DSI *, void *, const int, int *));
+extern int dsi_stream_receive __P((DSI *, void *, const size_t, size_t *));
/* client writes -- dsi_write.c */
extern size_t dsi_writeinit __P((DSI *, void *, const size_t));