From owner-svn-src-user@FreeBSD.ORG Sun Mar 28 21:14:09 2010 Return-Path: Delivered-To: svn-src-user@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 584651065701; Sun, 28 Mar 2010 21:14:09 +0000 (UTC) (envelope-from edwin@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 48A2D8FC12; Sun, 28 Mar 2010 21:14:09 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id o2SLE946046578; Sun, 28 Mar 2010 21:14:09 GMT (envelope-from edwin@svn.freebsd.org) Received: (from edwin@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id o2SLE9vt046574; Sun, 28 Mar 2010 21:14:09 GMT (envelope-from edwin@svn.freebsd.org) Message-Id: <201003282114.o2SLE9vt046574@svn.freebsd.org> From: Edwin Groothuis Date: Sun, 28 Mar 2010 21:14:09 +0000 (UTC) To: src-committers@freebsd.org, svn-src-user@freebsd.org X-SVN-Group: user MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r205807 - user/edwin/calendar X-BeenThere: svn-src-user@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the experimental " user" src tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 28 Mar 2010 21:14:09 -0000 Author: edwin Date: Sun Mar 28 21:14:08 2010 New Revision: 205807 URL: http://svn.freebsd.org/changeset/base/205807 Log: Get rid of the last obstacle for WARNS=7. Modified: user/edwin/calendar/calendar.h user/edwin/calendar/day.c user/edwin/calendar/io.c Modified: user/edwin/calendar/calendar.h ============================================================================== --- user/edwin/calendar/calendar.h Sun Mar 28 20:19:41 2010 (r205806) +++ user/edwin/calendar/calendar.h Sun Mar 28 21:14:08 2010 (r205807) @@ -54,7 +54,6 @@ extern struct passwd *pw; extern int doall; -extern struct iovec header[]; extern time_t t1, t2; extern const char *calendarFile; extern int yrdays; @@ -158,6 +157,7 @@ void setnsequences(char *); /* day.c */ extern const struct tm tm0; +extern char dayname[]; void settimes(time_t,int before, int after, int friday, struct tm *tp1, struct tm *tp2); time_t Mktime(char *); Modified: user/edwin/calendar/day.c ============================================================================== --- user/edwin/calendar/day.c Sun Mar 28 20:19:41 2010 (r205806) +++ user/edwin/calendar/day.c Sun Mar 28 21:14:08 2010 (r205807) @@ -43,10 +43,9 @@ __FBSDID("$FreeBSD$"); #include "calendar.h" -//struct tm tp1, tp2; time_t time1, time2; const struct tm tm0; -char dayname[10]; +char dayname[100]; int year1, year2; @@ -69,14 +68,13 @@ settimes(time_t now, int before, int aft localtime_r(&time2, tp2); year2 = 1900 + tp2->tm_year; - header[5].iov_base = dayname; + strftime(dayname, sizeof(dayname) - 1, "%A, %d %B %Y", tp1); oldl = NULL; lbufp = setlocale(LC_TIME, NULL); if (lbufp != NULL && (oldl = strdup(lbufp)) == NULL) errx(1, "cannot allocate memory"); (void)setlocale(LC_TIME, "C"); - header[5].iov_len = strftime(dayname, sizeof(dayname), "%A", &tp); (void)setlocale(LC_TIME, (oldl != NULL ? oldl : "")); if (oldl != NULL) free(oldl); Modified: user/edwin/calendar/io.c ============================================================================== --- user/edwin/calendar/io.c Sun Mar 28 20:19:41 2010 (r205806) +++ user/edwin/calendar/io.c Sun Mar 28 21:14:08 2010 (r205807) @@ -72,16 +72,6 @@ char path[MAXPATHLEN]; struct fixs neaster, npaskha, ncny, nfullmoon, nnewmoon; struct fixs nmarequinox, nsepequinox, njunsolstice, ndecsolstice; -struct iovec header[] = { - {"From: ", 6}, - {NULL, 0}, - {" (Reminder Service)\nTo: ", 24}, - {NULL, 0}, - {"\nSubject: ", 10}, - {NULL, 0}, - {"'s Calendar\nPrecedence: bulk\n\n", 30}, -}; - #define REPLACE(string, slen, struct_) \ if (strncasecmp(buf, (string), (slen)) == 0 && buf[(slen)]) { \ if (struct_.name != NULL) \ @@ -120,6 +110,7 @@ cal(void) tm.tm_hour = 0; tm.tm_wday = 0; + count = 0; if ((fp = opencal()) == NULL) return; while (fgets(buf, sizeof(buf), stdin) != NULL) { @@ -351,9 +342,14 @@ closecal(FILE *fp) /* parent -- write to pipe input */ (void)close(pdes[0]); - header[1].iov_base = header[3].iov_base = pw->pw_name; - header[1].iov_len = header[3].iov_len = strlen(pw->pw_name); - writev(pdes[1], header, 7); + write(pdes[1], "From: \"Reminder Service\" <", 26); + write(pdes[1], pw->pw_name, strlen(pw->pw_name)); + write(pdes[1], ">\nTo: <", 7); + write(pdes[1], pw->pw_name, strlen(pw->pw_name)); + write(pdes[1], ">\nSubject: ", 12); + write(pdes[1], dayname, strlen(dayname)); + write(pdes[1], "'s Calendar\nPrecedence: bulk\n\n", 30); + while ((nread = read(fileno(fp), buf, sizeof(buf))) > 0) (void)write(pdes[1], buf, nread); (void)close(pdes[1]);