From: Laurent Vivier Date: Mon, 23 Aug 2010 20:51:50 +0000 (+0200) Subject: Remove GCC warnings: X-Git-Url: http://git.alex.org.uk Remove GCC warnings: warning: ignoring return value of ‘write’ warning: ignoring return value of ‘read’ warning: format not a string literal and no format arguments warning: ignoring return value of ‘daemon’ Signed-off-by: Laurent Vivier --- diff --git a/nbd-client.c b/nbd-client.c index b0631ca..9d725ca 100644 --- a/nbd-client.c +++ b/nbd-client.c @@ -153,17 +153,22 @@ void negotiate(int sock, u64 *rsize64, u32 *flags, char* name) { *flags = ((u32)ntohs(tmp)) << 16; /* reserved for future use*/ - write(sock, &reserved, sizeof(reserved)); + if (write(sock, &reserved, sizeof(reserved)) < 0) + err("Failed/2.1: %m"); /* Write the export name that we're after */ magic = ntohll(opts_magic); - write(sock, &magic, sizeof(magic)); + if (write(sock, &magic, sizeof(magic)) < 0) + err("Failed/2.2: %m"); opt = ntohl(NBD_OPT_EXPORT_NAME); - write(sock, &opt, sizeof(opt)); + if (write(sock, &opt, sizeof(opt)) < 0) + err("Failed/2.3: %m"); namesize = (u32)strlen(name); namesize = ntohl(namesize); - write(sock, &namesize, sizeof(namesize)); - write(sock, name, strlen(name)); + if (write(sock, &namesize, sizeof(namesize)) < 0) + err("Failed/2.4: %m"); + if (write(sock, name, strlen(name)) < 0) + err("Failed/2.4: %m"); } else { if (magic != cliserv_magic) err("Not enough cliserv_magic"); @@ -441,7 +446,10 @@ int main(int argc, char *argv[]) { /* Go daemon */ #ifndef NOFORK - if(!nofork) daemon(0,0); + if(!nofork) { + if (daemon(0,0) < 0) + err("Cannot detach from terminal"); + } #endif do { #ifndef NOFORK diff --git a/nbd-server.c b/nbd-server.c index 2e3a673..a11e37a 100644 --- a/nbd-server.c +++ b/nbd-server.c @@ -1265,25 +1265,31 @@ CLIENT* negotiate(int net, CLIENT *client, GArray* servers) { if(!servers) err("programmer error"); - write(net, &smallflags, sizeof(uint16_t)); - read(net, &reserved, sizeof(reserved)); - read(net, &magic, sizeof(magic)); + if (write(net, &smallflags, sizeof(uint16_t)) < 0) + err("Negotiation failed: %m"); + if (read(net, &reserved, sizeof(reserved)) < 0) + err("Negotiation failed: %m"); + if (read(net, &magic, sizeof(magic)) < 0) + err("Negotiation failed: %m"); magic = ntohll(magic); if(magic != opts_magic) { close(net); return NULL; } - read(net, &opt, sizeof(opt)); + if (read(net, &opt, sizeof(opt)) < 0) + err("Negotiation failed: %m"); opt = ntohl(opt); if(opt != NBD_OPT_EXPORT_NAME) { close(net); return NULL; } - read(net, &namelen, sizeof(namelen)); + if (read(net, &namelen, sizeof(namelen)) < 0) + err("Negotiation failed: %m"); namelen = ntohl(namelen); name = malloc(namelen+1); name[namelen]=0; - read(net, name, namelen); + if (read(net, name, namelen) < 0) + err("Negotiation failed: %m"); for(i=0; ilen; i++) { SERVER* serve = &(g_array_index(servers, SERVER, i)); if(!strcmp(serve->servename, name)) { @@ -2044,7 +2050,7 @@ void glib_message_syslog_redirect(const gchar *log_domain, default: level=LOG_ERR; } - syslog(level, message); + syslog(level, "%s", message); } #endif