summaryrefslogtreecommitdiffstats
path: root/src/types.h
blob: 3005f62e1a04f717cc7a6fb6bfff8dd3bba7bbea (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#ifndef TYPES_H_
#define TYPES_H_

#include "config.h"

// ioctl
#define DNBD3_MAGIC  'd'
#define IOCTL_SET_HOST	_IO(0xab, 1)
#define IOCTL_SET_PORT	_IO(0xab, 2)
#define IOCTL_CONNECT	_IO(0xab, 3)

// network
#define CMD_GET_BLOCK   1
#define CMD_GET_SIZE    2

#pragma pack(1)
typedef struct dnbd3_request {
	uint16_t cmd;
	uint64_t offset;
	uint64_t size;
	char handle[8];
} dnbd3_request_t;
#pragma pack(0)

#pragma pack(1)
typedef struct dnbd3_reply {
	uint16_t cmd;
	uint64_t filesize;
	char handle[8];
} dnbd3_reply_t;
#pragma pack(0)

#endif /* TYPES_H_ */