cvsdist b431f48
--- netkit-telnet-0.17-pre-20000204/telnet/commands.c.env	Thu Apr  8 19:30:20 1999
cvsdist b431f48
+++ netkit-telnet-0.17-pre-20000204/telnet/commands.c	Tue May 16 17:19:47 2000
cvsdist b431f48
@@ -1815,11 +1815,11 @@
cvsdist b431f48
 }
cvsdist b431f48
 
cvsdist b431f48
 	unsigned char *
cvsdist b431f48
-env_getvalue(unsigned char *var)
cvsdist b431f48
+env_getvalue(unsigned char *var, int exported_only)
cvsdist b431f48
 {
cvsdist b431f48
-	struct env_lst *ep;
cvsdist b431f48
+	struct env_lst *ep = env_find(var);
cvsdist b431f48
 
cvsdist b431f48
-	if ((ep = env_find(var)))
cvsdist b431f48
+	if (ep && (!exported_only || ep->export))
cvsdist b431f48
 		return(ep->value);
cvsdist b431f48
 	return(NULL);
cvsdist b431f48
 }
cvsdist b431f48
--- netkit-telnet-0.17-pre-20000204/telnet/telnet.c.env	Tue May 16 17:19:47 2000
cvsdist b431f48
+++ netkit-telnet-0.17-pre-20000204/telnet/telnet.c	Tue May 16 17:19:47 2000
cvsdist b431f48
@@ -438,7 +438,7 @@
cvsdist b431f48
 #endif
cvsdist b431f48
 
cvsdist b431f48
 	    case TELOPT_XDISPLOC:	/* X Display location */
cvsdist b431f48
-		if (env_getvalue((unsigned char *)"DISPLAY"))
cvsdist b431f48
+		if (env_getvalue((unsigned char *)"DISPLAY", 0))
cvsdist b431f48
 		    new_state_ok = 1;
cvsdist b431f48
 		break;
cvsdist b431f48
 
cvsdist b431f48
@@ -693,7 +693,7 @@
cvsdist b431f48
 		resettermname = 0;
cvsdist b431f48
 		if (tnamep && tnamep != unknown)
cvsdist b431f48
 			free(tnamep);
cvsdist b431f48
-		if ((tname = (char *)env_getvalue((unsigned char *)"TERM")) &&
cvsdist b431f48
+		if ((tname = (char *)env_getvalue((unsigned char *)"TERM", 0)) &&
cvsdist acb6917
 				(setupterm(tname, 1, &errret) == 0)) {
cvsdist acb6917
 			tnamep = mklist(ttytype, tname);
cvsdist b431f48
 		} else {
cvsdist b431f48
@@ -870,7 +870,7 @@
cvsdist b431f48
 	    unsigned char temp[50], *dp;
cvsdist b431f48
 	    int len;
cvsdist b431f48
 
cvsdist b431f48
-	    if ((dp = env_getvalue((unsigned char *)"DISPLAY")) == NULL) {
cvsdist b431f48
+	    if ((dp = env_getvalue((unsigned char *)"DISPLAY", 0)) == NULL) {
cvsdist b431f48
 		/*
cvsdist b431f48
 		 * Something happened, we no longer have a DISPLAY
cvsdist b431f48
 		 * variable.  So, turn off the option.
cvsdist b431f48
@@ -1527,7 +1527,7 @@
cvsdist b431f48
 			env_opt_add(ep);
cvsdist b431f48
 		return;
cvsdist b431f48
 	}
cvsdist b431f48
-	vp = env_getvalue(ep);
cvsdist b431f48
+	vp = env_getvalue(ep, 1);
cvsdist b431f48
 	if (opt_replyp + (vp ? strlen((char *)vp) : 0) +
cvsdist b431f48
 				strlen((char *)ep) + 6 > opt_replyend)
cvsdist b431f48
 	{
cvsdist b431f48
@@ -2170,7 +2170,7 @@
cvsdist b431f48
 	send_will(TELOPT_LINEMODE, 1);
cvsdist b431f48
 	send_will(TELOPT_NEW_ENVIRON, 1);
cvsdist b431f48
 	send_do(TELOPT_STATUS, 1);
cvsdist b431f48
-	if (env_getvalue((unsigned char *)"DISPLAY"))
cvsdist b431f48
+	if (env_getvalue((unsigned char *)"DISPLAY", 0))
cvsdist b431f48
 	    send_will(TELOPT_XDISPLOC, 1);
cvsdist b431f48
 	if (binary)
cvsdist b431f48
 	    tel_enter_binary(binary);
cvsdist b431f48
--- netkit-telnet-0.17-pre-20000204/telnet/externs.h.env	Mon Feb  8 15:56:11 1999
cvsdist b431f48
+++ netkit-telnet-0.17-pre-20000204/telnet/externs.h	Tue May 16 17:19:47 2000
cvsdist b431f48
@@ -203,7 +203,7 @@
cvsdist b431f48
 void env_send (unsigned char *);
cvsdist b431f48
 void env_list (void);
cvsdist b431f48
 unsigned char * env_default(int init, int welldefined);
cvsdist b431f48
-unsigned char * env_getvalue(unsigned char *var);
cvsdist b431f48
+unsigned char * env_getvalue(unsigned char *var, int exported_only);
cvsdist b431f48
 
cvsdist b431f48
 void set_escape_char(char *s);
cvsdist b431f48
 unsigned long sourceroute(char *arg, char **cpp, int *lenp);
cvsdist b431f48
@@ -335,7 +335,7 @@
cvsdist b431f48
 void     env_opt_end (int);
cvsdist b431f48
 
cvsdist b431f48
 unsigned char     *env_default (int, int);
cvsdist b431f48
-unsigned char     *env_getvalue (unsigned char *);
cvsdist b431f48
+unsigned char     *env_getvalue (unsigned char *, int);
cvsdist b431f48
 
cvsdist b431f48
 int get_status (void);
cvsdist b431f48
 int dosynch (void);