2013-09-26 17:14:40 +02:00

103 lines
2.9 KiB
Plaintext

$NetBSD: patch-an,v 1.3 2011/11/28 19:42:39 marino Exp $
- check for hes_getmailhost before using it
- avoid conflict with POSIX getline
--- clients/zmailnotify/zmailnotify.c.orig 1997-10-25 21:47:11.000000000 +0000
+++ clients/zmailnotify/zmailnotify.c
@@ -72,7 +72,7 @@ main(argc, argv)
int i,nbytes,retval,uselock;
struct passwd *pwd;
struct _mail mymail;
-#ifdef HAVE_HESIOD
+#ifdef HAVE_HES_GETMAILHOST
struct hes_postoffice *p;
#endif
@@ -104,7 +104,7 @@ main(argc, argv)
(void) sprintf(lockfile,"%s/.maillock",dir);
host = (char *)getenv("MAILHOST");
-#ifdef HAVE_HESIOD
+#ifdef HAVE_HES_GETMAILHOST
if (host == NULL) {
p = hes_getmailhost(user);
if (p != NULL && strcmp(p->po_type, "POP") == 0)
@@ -144,7 +144,7 @@ main(argc, argv)
exit(1);
}
- if ((getline(response, sizeof response, sfi) != OK) ||
+ if ((get_line(response, sizeof response, sfi) != OK) ||
(*response != '+')) {
fprintf(stderr,"%s: %s\n",prog,response);
exit(1);
@@ -460,7 +460,12 @@ char *host;
strcpy(host_save, hp->h_name);
rem = krb_sendauth(authopts, s, ticket, "pop", host_save, (char *)0,
0, (MSG_DAT *) 0, (CREDENTIALS *) 0,
- (bit_64 *) 0, (struct sockaddr_in *)0,
+#if defined(__DragonFly__) || defined (__FreeBSD__)
+ (DES_key_schedule) {0},
+#else
+ (bit_64 *) 0,
+#endif
+ (struct sockaddr_in *)0,
(struct sockaddr_in *)0,"ZMAIL0.0");
free(host_save);
free(ticket);
@@ -498,7 +503,7 @@ pop_command(fmt, va_alist)
if (putline(buf, Errmsg, sfo) == NOTOK) return(NOTOK);
- if (getline(buf, sizeof buf, sfi) != OK) {
+ if (get_line(buf, sizeof buf, sfi) != OK) {
(void) strcpy(Errmsg, buf);
return(NOTOK);
}
@@ -519,7 +524,7 @@ int *nmsgs, *nbytes;
if (putline("STAT", Errmsg, sfo) == NOTOK) return(NOTOK);
- if (getline(buf, sizeof buf, sfi) != OK) {
+ if (get_line(buf, sizeof buf, sfi) != OK) {
(void) strcpy(Errmsg, buf);
return(NOTOK);
}
@@ -546,7 +551,7 @@ int (*action)();
#endif
if (putline(buf, Errmsg, sfo) == NOTOK) return(NOTOK);
- if (getline(buf, sizeof buf, sfi) != OK) {
+ if (get_line(buf, sizeof buf, sfi) != OK) {
(void) strcpy(Errmsg, buf);
return(NOTOK);
}
@@ -565,7 +570,7 @@ int (*action)();
}
}
-getline(buf, n, f)
+get_line(buf, n, f)
char *buf;
register int n;
FILE *f;
@@ -595,7 +600,7 @@ char *buf;
register int n;
FILE *f;
{
- if (getline(buf, n, f) != OK) return (NOTOK);
+ if (get_line(buf, n, f) != OK) return (NOTOK);
if (*buf == '.') {
if (*(buf+1) == '\0') {
return (DONE);
@@ -605,7 +610,7 @@ FILE *f;
} else if (*buf == '\0') {
/* suck up all future lines, since this is after all only for headers */
while(! ((buf[0]=='.') && (buf[1] == '\0')) ) {
- if (getline(buf, n, f) != OK) return (NOTOK);
+ if (get_line(buf, n, f) != OK) return (NOTOK);
}
return DONE;
}