$NetBSD$

- 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;
     }
