Simplified NBD handle comparisons
8 bytes, therefore a uing64_t to compare to, no need for memcmp() Signed-off-by: Michel Pollet <buserror@gmail.com>
This commit is contained in:

committed by
Patrick J Cherry

parent
e3360a3a1b
commit
956a602475
@@ -252,14 +252,14 @@ int client_read_request( struct client * client , struct nbd_request *out_reques
|
||||
return 1;
|
||||
}
|
||||
|
||||
int fd_write_reply( int fd, char *handle, int error )
|
||||
int fd_write_reply( int fd, uint64_t handle, int error )
|
||||
{
|
||||
struct nbd_reply reply;
|
||||
struct nbd_reply_raw reply_raw;
|
||||
|
||||
reply.magic = REPLY_MAGIC;
|
||||
reply.error = error;
|
||||
memcpy( reply.handle, handle, 8 );
|
||||
reply.handle.w = handle;
|
||||
|
||||
nbd_h2r_reply( &reply, &reply_raw );
|
||||
debug( "Replying with handle=0x%08X, error=%"PRIu32, handle, error );
|
||||
@@ -291,7 +291,7 @@ int fd_write_reply( int fd, char *handle, int error )
|
||||
*/
|
||||
int client_write_reply( struct client * client, struct nbd_request *request, int error )
|
||||
{
|
||||
return fd_write_reply( client->socket, request->handle, error);
|
||||
return fd_write_reply( client->socket, request->handle.w, error);
|
||||
}
|
||||
|
||||
|
||||
|
@@ -412,7 +412,7 @@ int mirror_setup_next_xfer( struct mirror_ctrl *ctrl )
|
||||
struct nbd_request req = {
|
||||
.magic = REQUEST_MAGIC,
|
||||
.type = REQUEST_WRITE,
|
||||
.handle = ".MIRROR.",
|
||||
.handle.b = ".MIRROR.",
|
||||
.from = current,
|
||||
.len = run
|
||||
};
|
||||
@@ -568,7 +568,7 @@ static void mirror_read_cb( struct ev_loop *loop, ev_io *w, int revents )
|
||||
return;
|
||||
}
|
||||
|
||||
if ( memcmp( ".MIRROR.", &rsp.handle[0], 8 ) != 0 ) {
|
||||
if ( memcmp( ".MIRROR.", rsp.handle.b, 8 ) != 0 ) {
|
||||
warn( "Bad handle returned from listener" );
|
||||
ev_break( loop, EVBREAK_ONE );
|
||||
return;
|
||||
|
Reference in New Issue
Block a user