Network Block Device @PACKAGE_VERSION@
Data Structures | Defines | Enumerations | Functions | Variables

nbd.h File Reference

Go to the source code of this file.

Data Structures

struct  nbd_request
struct  nbd_reply

Defines

#define NBD_SET_SOCK   _IO( 0xab, 0 )
#define NBD_SET_BLKSIZE   _IO( 0xab, 1 )
#define NBD_SET_SIZE   _IO( 0xab, 2 )
#define NBD_DO_IT   _IO( 0xab, 3 )
#define NBD_CLEAR_SOCK   _IO( 0xab, 4 )
#define NBD_CLEAR_QUE   _IO( 0xab, 5 )
#define NBD_PRINT_DEBUG   _IO( 0xab, 6 )
#define NBD_SET_SIZE_BLOCKS   _IO( 0xab, 7 )
#define NBD_DISCONNECT   _IO( 0xab, 8 )
#define NBD_SET_TIMEOUT   _IO( 0xab, 9 )
#define NBD_SET_FLAGS   _IO( 0xab, 10 )
#define NBD_CMD_MASK_COMMAND   0x0000ffff
#define NBD_CMD_FLAG_FUA   (1<<16)
#define NBD_FLAG_HAS_FLAGS   (1 << 0)
#define NBD_FLAG_READ_ONLY   (1 << 1)
#define NBD_FLAG_SEND_FLUSH   (1 << 2)
#define NBD_FLAG_SEND_FUA   (1 << 3)
#define NBD_FLAG_ROTATIONAL   (1 << 4)
#define NBD_FLAG_SEND_TRIM   (1 << 5)
#define nbd_cmd(req)   ((req)->cmd[0])
#define NBD_REQUEST_MAGIC   0x25609513
#define NBD_REPLY_MAGIC   0x67446698

Enumerations

enum  {
  NBD_CMD_READ = 0, NBD_CMD_WRITE = 1, NBD_CMD_DISC = 2, NBD_CMD_FLUSH = 3,
  NBD_CMD_TRIM = 4
}

Functions

struct nbd_request __attribute__ ((packed))

Variables

__be32 magic
__be32 type
char handle [8]
__be64 from
__be32 len
struct nbd_reply __attribute__

Define Documentation

#define NBD_CLEAR_QUE   _IO( 0xab, 5 )

Definition at line 25 of file nbd.h.

#define NBD_CLEAR_SOCK   _IO( 0xab, 4 )

Definition at line 24 of file nbd.h.

Referenced by disconnect(), main(), and setsizes().

#define nbd_cmd (   req)    ((req)->cmd[0])

Definition at line 51 of file nbd.h.

#define NBD_CMD_FLAG_FUA   (1<<16)

Definition at line 41 of file nbd.h.

Referenced by main(), and mainloop().

#define NBD_CMD_MASK_COMMAND   0x0000ffff

Definition at line 40 of file nbd.h.

Referenced by main(), and mainloop().

#define NBD_DISCONNECT   _IO( 0xab, 8 )

Definition at line 28 of file nbd.h.

Referenced by disconnect().

#define NBD_DO_IT   _IO( 0xab, 3 )

Definition at line 23 of file nbd.h.

Referenced by main().

#define NBD_FLAG_HAS_FLAGS   (1 << 0)

Definition at line 44 of file nbd.h.

Referenced by negotiate().

#define NBD_FLAG_READ_ONLY   (1 << 1)

Definition at line 45 of file nbd.h.

Referenced by negotiate(), and setsizes().

#define NBD_FLAG_ROTATIONAL   (1 << 4)

Definition at line 48 of file nbd.h.

Referenced by negotiate().

#define NBD_FLAG_SEND_FLUSH   (1 << 2)

Definition at line 46 of file nbd.h.

Referenced by negotiate().

#define NBD_FLAG_SEND_FUA   (1 << 3)

Definition at line 47 of file nbd.h.

Referenced by negotiate().

#define NBD_FLAG_SEND_TRIM   (1 << 5)

Definition at line 49 of file nbd.h.

Referenced by negotiate().

#define NBD_PRINT_DEBUG   _IO( 0xab, 6 )

Definition at line 26 of file nbd.h.

#define NBD_REPLY_MAGIC   0x67446698

Definition at line 58 of file nbd.h.

Referenced by main(), and mainloop().

#define NBD_REQUEST_MAGIC   0x25609513

Definition at line 57 of file nbd.h.

Referenced by main(), and mainloop().

#define NBD_SET_BLKSIZE   _IO( 0xab, 1 )

Definition at line 21 of file nbd.h.

Referenced by setsizes().

#define NBD_SET_FLAGS   _IO( 0xab, 10 )

Definition at line 30 of file nbd.h.

Referenced by setsizes().

#define NBD_SET_SIZE   _IO( 0xab, 2 )

Definition at line 22 of file nbd.h.

#define NBD_SET_SIZE_BLOCKS   _IO( 0xab, 7 )

Definition at line 27 of file nbd.h.

Referenced by setsizes().

#define NBD_SET_SOCK   _IO( 0xab, 0 )

Definition at line 20 of file nbd.h.

Referenced by finish_sock().

#define NBD_SET_TIMEOUT   _IO( 0xab, 9 )

Definition at line 29 of file nbd.h.

Referenced by set_timeout().


Enumeration Type Documentation

anonymous enum
Enumerator:
NBD_CMD_READ 
NBD_CMD_WRITE 
NBD_CMD_DISC 
NBD_CMD_FLUSH 
NBD_CMD_TRIM 

Definition at line 32 of file nbd.h.


Function Documentation

struct nbd_request __attribute__ ( (packed)  )

Variable Documentation

struct nbd_reply __attribute__

Referenced by size_autodetect().

__be64 from

Definition at line 75 of file nbd.h.

char handle[8]

Definition at line 74 of file nbd.h.

Referenced by main().

__be32 len
__be32 magic

Definition at line 72 of file nbd.h.

Referenced by ask_list(), main(), negotiate(), and send_reply().

__be32 type

Definition at line 73 of file nbd.h.