Date: Tue, 14 Jul 2009 07:04:16 GMT From: Jonathan Anderson <jona@FreeBSD.org> To: Perforce Change Reviews <perforce@FreeBSD.org> Subject: PERFORCE change 166065 for review Message-ID: <200907140704.n6E74GEo035980@repoman.freebsd.org>
index | next in thread | raw e-mail
http://perforce.freebsd.org/chv.cgi?CH=166065 Change 166065 by jona@jona-trustedbsd-belle-vmware on 2009/07/14 07:03:47 Iterate through clients in only ONE place Affected files ... .. //depot/projects/trustedbsd/capabilities/src/tools/cap/user_angel/server.c#15 edit Differences ... ==== //depot/projects/trustedbsd/capabilities/src/tools/cap/user_angel/server.c#15 (text+ko) ==== @@ -293,22 +293,15 @@ if(bytes < 0) return -1; - for(struct client *client = clients; client; client = client->next) + int ret = handle_request(client, req); + if(ret) { - int ret = handle_request(client, req); - if(ret) - { - int close_connection = (ret < 0); - client_error(client, "Error handling client request", - errno, close_connection); - return ret; - } - else return 0; - + int close_connection = (ret < 0); + client_error(client, "Error handling client request", + errno, close_connection); + return ret; } - - fprintf(stderr, "No clients defined\n"); - return -1; + else return 0; } @@ -328,7 +321,7 @@ else if(!(client->policy_callback(client, req, datum))) { errno = EPERM; - return -1; + return 1; } int retval; @@ -438,7 +431,8 @@ } -void client_error(struct client *client, const char *message, int errnum, int close_connection) +void client_error(struct client *client, const char *message, int errnum, + int close_connection) { fprintf(stderr, "%s: %i (%s)\n", message, errnum, strerror(errnum));help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200907140704.n6E74GEo035980>
