Index: server/common/oursrc/sqladm/signup-sql.c
===================================================================
--- server/common/oursrc/sqladm/signup-sql.c	(revision 1)
+++ server/common/oursrc/sqladm/signup-sql.c	(revision 3)
@@ -30,4 +30,19 @@
 	}
 
+#define NUMBUF 5
+#define BUFLEN 128
+	char buf[NUMBUF][BUFLEN];
+	char *env[NUMBUF+1];
+	int i = 0;
+	snprintf(buf[i++], BUFLEN-1, "%s=%s", "HOME", "/home/sql");
+	snprintf(buf[i++], BUFLEN-1, "%s=%s", "TERM", "xterm");
+	snprintf(buf[i++], BUFLEN-1, "%s=%s", "USER", "sql");
+	snprintf(buf[i++], BUFLEN-1, "%s=%s", "SHELL", "/usr/local/bin/bash");
+	snprintf(buf[i++], BUFLEN-1, "%s=%s", "PATH", "/usr/kerberos/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/bin:/usr/local/sbin");
+	for(i = 0; i < NUMBUF; i++) {
+		env[i] = buf[i];
+	}
+	env[i] = NULL;
+
 	char uid[21]; // 64-bit uid requires 21
 	char gid[21]; // 64-bit gid requires 21
@@ -56,5 +71,5 @@
 	}
 
-        execv(SIGNUP_PATH, v);
+        execle(SIGNUP_PATH, v, env);
 	return 1;
 }
