15#include <netinet/in.h>
32#define DSI_BLOCKSIZ 16
43#define DSI_DATASIZ 8192
71#define DSIFL_REQUEST 0x00
72#define DSIFL_REPLY 0x01
76#define DSIOPT_SERVQUANT 0x00
77#define DSIOPT_ATTNQUANT 0x01
80#define DSIFUNC_CLOSE 1
84#define DSIFUNC_TICKLE 5
85#define DSIFUNC_WRITE 6
90#define DSIERR_OK 0x0000
91#define DSIERR_BADVERS 0xfbd6
92#define DSIERR_BUFSMALL 0xfbd5
93#define DSIERR_NOSESS 0xfbd4
94#define DSIERR_NOSERV 0xfbd3
95#define DSIERR_PARM 0xfbd2
96#define DSIERR_SERVBUSY 0xfbd1
97#define DSIERR_SESSCLOS 0xfbd0
98#define DSIERR_SIZERR 0xfbcf
99#define DSIERR_TOOMANY 0xfbce
100#define DSIERR_NOACK 0xfbcd
103#define DSI_DEFQUANT 2
104#define DSI_SERVQUANT_MAX 0xffffffffL
105#define DSI_SERVQUANT_MIN 0x0004A2E0L
106#define DSI_SERVQUANT_DEF DSI_SERVQUANT_MIN
109#define DSI_AFPOVERTCP_PORT 548
114 const char * ,
const char * ,
115 const int ,
const int ,
132#define dsi_wrtreply(a,b) dsi_cmdreply(a,b)
137extern ssize_t
dsi_read(
DSI *,
void *,
const size_t);
141#define dsi_serverID(x) ((x)->serverID++)
142#define dsi_send(x) do { \
143 (x)->header.dsi_len = htonl((x)->cmdlen); \
144 dsi_stream_send((x), (x)->commands, (x)->cmdlen); \
146#define dsi_receive(x) (dsi_stream_receive((x), (x)->commands, \
147 DSI_CMDSIZ, &(x)->cmdlen))
static void header(void)
Definition speedtest.c:570
Definition include/atalk/dsi.h:52
uint16_t serverID
Definition include/atalk/dsi.h:68
char noreply
Definition test/testsuite/dsi.h:59
size_t datalen
Definition include/atalk/dsi.h:71
struct sockaddr_storage server client
Definition include/atalk/dsi.h:59
size_t cmdlen
Definition include/atalk/dsi.h:71
struct itimerval timer savetimer
Definition test/testsuite/dsi.h:50
sigset_t sigblockset
Definition test/testsuite/dsi.h:49
off_t read_count
Definition include/atalk/dsi.h:72
pid_t(* proto_open)(struct DSI *)
Definition include/atalk/dsi.h:92
uint32_t datasize
Definition include/atalk/dsi.h:67
off_t write_count
Definition include/atalk/dsi.h:72
int serversock
Definition include/atalk/dsi.h:75
uint32_t server_quantum
Definition include/atalk/dsi.h:67
uint16_t clientID
Definition include/atalk/dsi.h:68
void(* proto_close)(struct DSI *)
Definition include/atalk/dsi.h:93
uint8_t data[DSI_DATASIZ]
Definition include/atalk/dsi.h:70
int socket
Definition include/atalk/dsi.h:74
char status[1400]
Definition include/atalk/dsi.h:56
uint32_t attn_quantum
Definition include/atalk/dsi.h:67
char child
Definition test/testsuite/dsi.h:59
char inited
Definition test/testsuite/dsi.h:59
struct itimerval timer
Definition include/atalk/dsi.h:60
const char * program
Definition test/testsuite/dsi.h:60
int statuslen
Definition include/atalk/dsi.h:55
uint8_t * commands
Definition include/atalk/dsi.h:69
int asleep
Definition test/testsuite/dsi.h:57
Definition include/atalk/dsi.h:36
uint8_t dsi_command
Definition include/atalk/dsi.h:38
uint32_t dsi_code
Definition include/atalk/dsi.h:41
uint32_t dsi_len
Definition include/atalk/dsi.h:44
uint16_t dsi_requestID
Definition include/atalk/dsi.h:39
uint32_t dsi_reserved
Definition include/atalk/dsi.h:45
uint8_t dsi_flags
Definition include/atalk/dsi.h:37
Definition cnid_metad.c:110
size_t dsi_write(DSI *, void *, const size_t)
Definition dsi_write.c:52
size_t dsi_stream_read(DSI *, void *, const size_t)
Definition dsi_stream.c:523
size_t dsi_writeinit(DSI *, void *, const size_t)
Definition dsi_write.c:26
void dsi_setstatus(DSI *, uint8_t *, const int)
int dsi_stream_send(DSI *, void *, size_t)
Definition dsi_stream.c:568
ssize_t dsi_readinit(DSI *, void *, const size_t, const size_t, const int)
Definition dsi_read.c:26
DSI * dsi_init(const char *, const char *, const char *, const int, const int, const uint32_t)
#define DSI_CMDSIZ
Definition test/testsuite/dsi.h:42
void dsi_writeflush(DSI *)
Definition dsi_write.c:70
int dsi_stream_receive(DSI *, void *, const size_t, size_t *)
#define DSI_DATASIZ
Definition test/testsuite/dsi.h:43
size_t dsi_stream_write(DSI *, void *, const size_t)
ssize_t dsi_read(DSI *, void *, const size_t)
Definition dsi_read.c:54
void dsi_readdone(DSI *)
Definition dsi_read.c:48