X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=arch%2Fum%2Fdrivers%2Fnet_user.c;h=0a7786e00cfb80da658f6474f562eca1b9d5c067;hb=9464c7cf61b9433057924c36e6e02f303a00e768;hp=107c5e43fa00fec37d6fcf8c3b01851274a9b87e;hpb=41689045f6a3cbe0550e1d34e9cc20d2e8c432ba;p=linux-2.6.git diff --git a/arch/um/drivers/net_user.c b/arch/um/drivers/net_user.c index 107c5e43f..0a7786e00 100644 --- a/arch/um/drivers/net_user.c +++ b/arch/um/drivers/net_user.c @@ -22,14 +22,13 @@ int tap_open_common(void *dev, char *gate_addr) { int tap_addr[4]; - if(gate_addr == NULL) - return 0; + if(gate_addr == NULL) return(0); if(sscanf(gate_addr, "%d.%d.%d.%d", &tap_addr[0], &tap_addr[1], &tap_addr[2], &tap_addr[3]) != 4){ printk("Invalid tap IP address - '%s'\n", gate_addr); - return -EINVAL; + return(-EINVAL); } - return 0; + return(0); } void tap_check_ips(char *gate_addr, unsigned char *eth_addr) @@ -95,25 +94,25 @@ int net_read(int fd, void *buf, int len) n = os_read_file(fd, buf, len); if(n == -EAGAIN) - return 0; + return(0); else if(n == 0) - return -ENOTCONN; - return n; + return(-ENOTCONN); + return(n); } int net_recvfrom(int fd, void *buf, int len) { int n; - CATCH_EINTR(n = recvfrom(fd, buf, len, 0, NULL, NULL)); + while(((n = recvfrom(fd, buf, len, 0, NULL, NULL)) < 0) && + (errno == EINTR)) ; + if(n < 0){ - if(errno == EAGAIN) - return 0; - return -errno; + if(errno == EAGAIN) return(0); + return(-errno); } - else if(n == 0) - return -ENOTCONN; - return n; + else if(n == 0) return(-ENOTCONN); + return(n); } int net_write(int fd, void *buf, int len) @@ -123,41 +122,37 @@ int net_write(int fd, void *buf, int len) n = os_write_file(fd, buf, len); if(n == -EAGAIN) - return 0; + return(0); else if(n == 0) - return -ENOTCONN; - return n; + return(-ENOTCONN); + return(n); } int net_send(int fd, void *buf, int len) { int n; - CATCH_EINTR(n = send(fd, buf, len, 0)); + while(((n = send(fd, buf, len, 0)) < 0) && (errno == EINTR)) ; if(n < 0){ - if(errno == EAGAIN) - return 0; - return -errno; + if(errno == EAGAIN) return(0); + return(-errno); } - else if(n == 0) - return -ENOTCONN; - return n; + else if(n == 0) return(-ENOTCONN); + return(n); } int net_sendto(int fd, void *buf, int len, void *to, int sock_len) { int n; - CATCH_EINTR(n = sendto(fd, buf, len, 0, (struct sockaddr *) to, - sock_len)); + while(((n = sendto(fd, buf, len, 0, (struct sockaddr *) to, + sock_len)) < 0) && (errno == EINTR)) ; if(n < 0){ - if(errno == EAGAIN) - return 0; - return -errno; + if(errno == EAGAIN) return(0); + return(-errno); } - else if(n == 0) - return -ENOTCONN; - return n; + else if(n == 0) return(-ENOTCONN); + return(n); } struct change_pre_exec_data { @@ -181,7 +176,7 @@ static int change_tramp(char **argv, char *output, int output_len) err = os_pipe(fds, 1, 0); if(err < 0){ printk("change_tramp - pipe failed, err = %d\n", -err); - return err; + return(err); } pe_data.close_me = fds[0]; pe_data.stdout = fds[1]; @@ -195,7 +190,7 @@ static int change_tramp(char **argv, char *output, int output_len) if (pid > 0) CATCH_EINTR(err = waitpid(pid, NULL, 0)); - return pid; + return(pid); } static void change(char *dev, char *what, unsigned char *addr, @@ -246,15 +241,26 @@ char *split_if_spec(char *str, ...) va_start(ap, str); while((arg = va_arg(ap, char **)) != NULL){ if(*str == '\0') - return NULL; + return(NULL); end = strchr(str, ','); if(end != str) *arg = str; if(end == NULL) - return NULL; + return(NULL); *end++ = '\0'; str = end; } va_end(ap); - return str; + return(str); } + +/* + * Overrides for Emacs so that we follow Linus's tabbing style. + * Emacs will notice this stuff at the end of the file and automatically + * adjust the settings for this buffer only. This must remain at the end + * of the file. + * --------------------------------------------------------------------------- + * Local variables: + * c-file-style: "linux" + * End: + */