diff -uNr samba-3.0.0beta1.orig/source/client/smbmount.c samba-3.0.0beta1/source/client/smbmount.c
--- samba-3.0.0beta1.orig/source/client/smbmount.c	2003-06-07 12:57:32.000000000 -0500
+++ samba-3.0.0beta1/source/client/smbmount.c	2003-06-30 20:12:22.000000000 -0500
@@ -765,7 +765,7 @@
 					*lp = 0;
 					pstrcpy(password,lp+1);
 					got_pass = True;
-					memset(strchr_m(opteq+1,'%')+1,'X',strlen(password));
+					memset(strchr_m(opteq+1,'%')+1,'\0',strlen(password));
 				}
 				if ((lp=strchr_m(username,'/'))) {
 					*lp = 0;
@@ -775,7 +775,7 @@
 				  !strcmp(opts, "password")) {
 				pstrcpy(password,opteq+1);
 				got_pass = True;
-				memset(opteq+1,'X',strlen(password));
+				memset(opteq+1,'\0',strlen(password));
 			} else if(!strcmp(opts, "credentials")) {
 				pstrcpy(credentials,opteq+1);
 			} else if(!strcmp(opts, "netbiosname")) {
@@ -889,7 +901,7 @@
 			*p = 0;
 			pstrcpy(password,p+1);
 			got_pass = True;
-			memset(strchr_m(getenv("USER"),'%')+1,'X',strlen(password));
+			memset(strchr_m(getenv("USER"),'%')+1,'\0',strlen(password));
 		}
 		strupper_m(username);
 	}
diff -uNr samba-3.0.0beta1.orig/source/script/installbin.sh samba-3.0.0beta1/source/script/installbin.sh
--- samba-3.0.0beta1.orig/source/script/installbin.sh	2002-04-22 13:16:20.000000000 -0500
+++ samba-3.0.0beta1/source/script/installbin.sh	2003-06-30 20:12:22.000000000 -0500
@@ -22,9 +22,11 @@
  chmod $INSTALLPERMS $BINDIR/$p2
 
  # this is a special case, mount needs this in a specific location
- if [ $p2 = smbmount ]; then
-   ln -sf $BINDIR/$p2 /sbin/mount.smbfs
- fi
+# Commented out for the Debian Samba package. We take care of this
+#	important symlink in debian/rules. (peloy@debian.org)
+# if [ $p2 = smbmount ]; then
+#   ln -sf $BINDIR/$p2 /sbin/mount.smbfs
+# fi
 done
 
 
diff -uNr samba-3.0.0beta1.orig/source/smbd/service.c samba-3.0.0beta1/source/smbd/service.c
--- samba-3.0.0beta1.orig/source/smbd/service.c	2003-06-07 12:57:39.000000000 -0500
+++ samba-3.0.0beta1/source/smbd/service.c	2003-06-30 20:12:57.000000000 -0500
@@ -880,6 +880,9 @@
 	file_close_conn(conn);
 	dptr_closecnum(conn);
 
+	/* make sure we leave the directory available for unmount */
+	vfs_ChDir(conn, "/");
+
 	/* execute any "postexec = " line */
 	if (*lp_postexec(SNUM(conn)) && 
 	    change_to_user(conn, vuid))  {
@@ -899,8 +902,5 @@
 		smbrun(cmd,NULL);
 	}
 
-	/* make sure we leave the directory available for unmount */
-	vfs_ChDir(conn, "/");
-
 	conn_free(conn);
 }
diff -uNr samba-3.0.0beta1.orig/source/smbwrapper/smbsh.c samba-3.0.0beta1/source/smbwrapper/smbsh.c
--- samba-3.0.0beta1.orig/source/smbwrapper/smbsh.c	2003-06-07 12:57:40.000000000 -0500
+++ samba-3.0.0beta1/source/smbwrapper/smbsh.c	2003-06-30 20:12:22.000000000 -0500
@@ -36,7 +36,7 @@
 int main(int argc, char *argv[])
 {
 	char *p, *u;
-	const char *libd = dyn_BINDIR;
+	const char *libd = dyn_LIBDIR;
 	pstring line, wd;
 	int opt;
 	extern char *optarg;
diff -uNr samba-3.0.0beta1.orig/source/web/diagnose.c samba-3.0.0beta1/source/web/diagnose.c
--- samba-3.0.0beta1.orig/source/web/diagnose.c	2003-06-07 12:57:41.000000000 -0500
+++ samba-3.0.0beta1/source/web/diagnose.c	2003-06-30 20:12:22.000000000 -0500
@@ -70,6 +70,7 @@
 	static struct cli_state cli;
 	extern struct in_addr loopback_ip;
 
+	loopback_ip.s_addr = htonl((127 << 24) + 1);
 	if (!cli_initialise(&cli))
 		return False;
 
