Network Block Device  @PACKAGE_VERSION@
Data Fields
CLIENT Struct Reference

Data Fields

off_t exportsize
 size of the file we're exporting
 
char * clientname
 peer
 
char * exportname
 (processed) filename of the file we're exporting
 
GArray * export
 array of FILE_INFO of exported files; array size is always 1 unless we're doing the multiple file option
 
int net
 The actual client socket.
 
SERVERserver
 The server this client is getting data from.
 
char * difffilename
 filename of the copy-on-write file, if any
 
int difffile
 filedescriptor of copyonwrite file.
 
u32 difffilelen
 number of pages in difffile
 
u32 * difmap
 see comment on the global difmap for this one
 
gboolean modern
 client was negotiated using modern negotiation protocol
 
int transactionlogfd
 fd for transaction log
 
int clientfeats
 Features supported by this client.
 

Detailed Description

Definition at line 242 of file nbd-server.c.

Field Documentation

int CLIENT::clientfeats

Features supported by this client.

Definition at line 259 of file nbd-server.c.

Referenced by handle_export_name().

char* CLIENT::clientname

peer

Definition at line 244 of file nbd-server.c.

Referenced by authorized_client(), copyonwrite_prepare(), and set_peername().

int CLIENT::difffile

filedescriptor of copyonwrite file.

Todo:
shouldn't this be an array too? (cfr export) Or make -m and -c mutually exclusive

Definition at line 252 of file nbd-server.c.

Referenced by copyonwrite_prepare(), expflush(), expread(), expwrite(), and mainloop().

u32 CLIENT::difffilelen

number of pages in difffile

Definition at line 255 of file nbd-server.c.

Referenced by expwrite().

char* CLIENT::difffilename

filename of the copy-on-write file, if any

Definition at line 251 of file nbd-server.c.

Referenced by copyonwrite_prepare(), and mainloop().

u32* CLIENT::difmap

see comment on the global difmap for this one

Definition at line 256 of file nbd-server.c.

Referenced by copyonwrite_prepare(), expread(), expwrite(), and mainloop().

GArray* CLIENT::export

array of FILE_INFO of exported files; array size is always 1 unless we're doing the multiple file option

Definition at line 246 of file nbd-server.c.

Referenced by expflush(), exptrim(), rawexpread(), rawexpwrite(), and setupexport().

char* CLIENT::exportname

(processed) filename of the file we're exporting

Definition at line 245 of file nbd-server.c.

Referenced by copyonwrite_prepare(), serveconnection(), set_peername(), and setupexport().

off_t CLIENT::exportsize

size of the file we're exporting

Definition at line 243 of file nbd-server.c.

Referenced by copyonwrite_prepare(), handle_export_name(), main(), mainloop(), negotiate(), serveloop(), and setupexport().

gboolean CLIENT::modern

client was negotiated using modern negotiation protocol

Definition at line 257 of file nbd-server.c.

Referenced by handle_export_name(), and mainloop().

int CLIENT::net

The actual client socket.

Definition at line 249 of file nbd-server.c.

Referenced by handle_export_name(), main(), mainloop(), negotiate(), serveconnection(), and serveloop().

SERVER* CLIENT::server

The server this client is getting data from.

Definition at line 250 of file nbd-server.c.

Referenced by authorized_client(), expflush(), expread(), expwrite(), handle_export_name(), main(), mainloop(), negotiate(), rawexpwrite(), serveconnection(), serveloop(), set_peername(), and setupexport().

int CLIENT::transactionlogfd

fd for transaction log

Definition at line 258 of file nbd-server.c.

Referenced by handle_export_name(), mainloop(), serveconnection(), and serveloop().


The documentation for this struct was generated from the following file: