X-Git-Url: https://git.kernel.dk/?p=fio.git;a=blobdiff_plain;f=server.h;h=c85f1bcc36e090431423e9f39f7a143477b5510a;hp=d66782d532a6124c8364afec6e66ad29da584f44;hb=794d69ca97738736844ee6a6da37f1ef686578cb;hpb=82fa6b21d98da1341a54f415e43940213b39f18b diff --git a/server.h b/server.h index d66782d5..c85f1bcc 100644 --- a/server.h +++ b/server.h @@ -13,10 +13,9 @@ struct fio_net_cmd { uint16_t opcode; /* command opcode */ uint32_t flags; /* modifier flags */ uint64_t serial; /* serial number */ - uint32_t pad; uint32_t pdu_len; /* length of post-cmd layload */ - uint32_t cmd_crc32; /* cmd checksum */ - uint32_t pdu_crc32; /* payload checksum */ + uint16_t cmd_crc16; /* cmd checksum */ + uint16_t pdu_crc16; /* payload checksum */ uint8_t payload[0]; /* payload */ }; @@ -24,19 +23,25 @@ enum { FIO_SERVER_VER = 1, FIO_SERVER_VER1 = 1, - FIO_SERVER_MAX_PDU = 4096, + FIO_SERVER_MAX_PDU = 64, FIO_NET_CMD_QUIT = 1, FIO_NET_CMD_JOB = 2, - FIO_NET_CMD_JOB_END = 3, - FIO_NET_CMD_ACK = 4, - FIO_NET_CMD_NAK = 5, - FIO_NET_CMD_TEXT = 6, + FIO_NET_CMD_ACK = 3, + FIO_NET_CMD_NAK = 4, + FIO_NET_CMD_TEXT = 5, + + FIO_NET_CMD_F_MORE = 1, + + /* crc does not include the crc fields */ + FIO_NET_CMD_CRC_SZ = sizeof(struct fio_net_cmd) - + 2 * sizeof(uint16_t), }; extern int fio_server(void); extern int fio_server_text_output(const char *, unsigned int len); extern int fio_server_log(const char *format, ...); +extern int fio_net_send_cmd(int, uint16_t, const char *, off_t); extern int fio_client_connect(const char *); extern int fio_client_send_ini(const char *);