Date: Mon, 10 Apr 2000 07:56:24 -0400 (EDT) From: "James E. Housley" <housley@thehousleys.net> To: FreeBSD-gnats-submit@freebsd.org Subject: sparc/17898: Patch to new version of helathd Message-ID: <200004101156.HAA48141@thehousleys.net>
next in thread | raw e-mail | index | archive | help
>Number: 17898 >Category: sparc >Synopsis: Patch to new version of healthd >Confidential: no >Severity: serious >Priority: medium >Responsible: freebsd-sparc >State: open >Quarter: >Keywords: >Date-Required: >Class: sw-bug >Submitter-Id: current-users >Arrival-Date: Mon Apr 10 05:00:00 PDT 2000 >Closed-Date: >Last-Modified: >Originator: James E. Housley >Release: FreeBSD 3.4-STABLE i386 >Organization: The Housleys dot Net >Environment: >Description: >How-To-Repeat: >Fix: --- healthd.c 2000/04/09 20:59:07 1.1.1.6 +++ healthd.c 2000/04/10 11:52:57 1.1.1.7 @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $Id: healthd.c,v 1.1.1.6 2000/04/09 20:59:07 housley Exp $ + * $Id: healthd.c,v 1.1.1.7 2000/04/10 11:52:57 housley Exp $ * * $FreeBSD$ */ @@ -604,8 +604,10 @@ case 'c': count = atoi(optarg); - if (count < 1) + if (count < 1) { count = 0; + } + debug=1; break; case 'd': @@ -668,68 +670,79 @@ } } - /* Create socket from which to read. */ - sock = socket(AF_INET, SOCK_STREAM, 0); - if (sock < 0) { - perror("opening datagram socket"); - exit(1); - } - /* Create name with wildcards. */ - server.sin_family = AF_INET; - server.sin_addr.s_addr = INADDR_ANY; - server.sin_port = htons(9669); - if (bind(sock, (struct sockaddr *)&server, sizeof(struct sockaddr_in))) { - perror("binding datagram socket"); - exit(1); - } - /* Find assigned port value and print it out. */ - length = sizeof(server); - if (getsockname(sock, (struct sockaddr *)&server, &length)) { - perror("getting socket name"); - exit(1); + if (debug == 0) { + /* Create socket from which to read. */ + sock = socket(AF_INET, SOCK_STREAM, 0); + if (sock < 0) { + perror("opening datagram socket"); + exit(1); + } + /* Create name with wildcards. */ + server.sin_family = AF_INET; + server.sin_addr.s_addr = INADDR_ANY; + server.sin_port = htons(9669); + if (bind(sock, (struct sockaddr *)&server, sizeof(struct sockaddr_in))) { + perror("binding datagram socket"); + exit(1); + } + /* Find assigned port value and print it out. */ + length = sizeof(server); + if (getsockname(sock, (struct sockaddr *)&server, &length)) { + perror("getting socket name"); + exit(1); + } } ReadCurrentValues(); time(&now); time(&tloc); - /* Start accepting connections */ - listen(sock, 5); + if (debug == 0) { + /* Start accepting connections */ + listen(sock, 5); + } while ((iter<count) || (count==0)) { FD_ZERO(&ready); - FD_SET(sock, &ready); + if (debug == 1) { + FD_SET(fileno(stdin), &ready); + } else { + FD_SET(sock, &ready); + } to.tv_sec = 0; to.tv_usec = 100; if (select(50, &ready, 0, 0, &to) < 0) { continue; } - if (FD_ISSET(sock, &ready)) { - msgsock = accept(sock, 0, 0); - if (msgsock == -1) { - } else { - do { - bzero(buf, sizeof(buf)); - bzero(outbuf, sizeof(outbuf)); - if ((rval = read(msgsock, buf, 1024)) < 0) { - } - if (rval == 0) { - } else { - GetAnswer(buf, outbuf); - write(msgsock, outbuf, strlen(outbuf)); - } - } while (rval != 0); - close(msgsock); - } - } else { - time(&tloc); - if (sec <= (int)difftime(tloc, now)) { - if (count > 0) { - iter++; + if (debug == 0) { + if (FD_ISSET(sock, &ready)) { + msgsock = accept(sock, 0, 0); + if (msgsock == -1) { + } else { + do { + bzero(buf, sizeof(buf)); + bzero(outbuf, sizeof(outbuf)); + if ((rval = read(msgsock, buf, 1024)) < 0) { + } + if (rval == 0) { + } else { + GetAnswer(buf, outbuf); + write(msgsock, outbuf, strlen(outbuf)); + } + } while (rval != 0); + close(msgsock); } - ReadCurrentValues(); - time(&now); } } + time(&tloc); + if (sec <= (int)difftime(tloc, now)) { + if (count > 0) { + iter++; + } + ReadCurrentValues(); + time(&now); + } + } + if (debug == 0) { + close(sock); } - close(sock); } void >Release-Note: >Audit-Trail: >Unformatted: To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-sparc" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200004101156.HAA48141>