[patch] fixing scope id problems

Eugeny Kuzakov CoreDumped at CoreDumped.null.ru
Tue Sep 21 10:40:27 GMT 1999


Samba has troubles with joining to NT PDC, that has some scope id because:
	1. smbpasswd does not know anything about scope id and you haven't
any chance to join into NT PDC.
	2. also many utils like smbmount doesn't know scope id
	3. In smbclient you can specify scope id, but you should remember
it and etc. It's not so usable.

I'm asked about these problems in samba mailing lists w/o any success.

What this patch change?

	1. New parameter in smb.conf: scope id
		 scope id = yourscopeid

	2. Added -C parameter to smbpasswd with which you can specify
		scope id.

# This is a shell archive.  Save it in a file, remove anything before
# this line, and then unpack it by entering "sh file".  Note, it may
# create directories; files and directories will be owned by you and
# have default permissions.
# This archive contains:
#	loadparm.diff
#	smbpasswd.diff
echo x - loadparm.diff
sed 's/^X//' >loadparm.diff << 'END-of-loadparm.diff'
X--- loadparm.c.orig	Wed Jul 21 08:25:12 1999
X+++ loadparm.c	Tue Sep 21 00:07:04 1999
X@@ -71,6 +71,7 @@
X extern int DEBUGLEVEL;
X extern pstring user_socket_options;
X extern pstring global_myname;
X+extern pstring scope;
X #define GLOBAL_NAME "global"
X@@ -532,6 +533,7 @@
X   {"directory",        P_STRING,  P_LOCAL,  &sDefault.szPath,           NULL,   NULL,  0},
X   {"workgroup",        P_USTRING, P_GLOBAL, &Globals.szWorkGroup,       NULL,   NULL,  FLAG_BASIC},
X   {"netbios name",     P_UGSTRING,P_GLOBAL, global_myname,                     NULL,   NULL,  FLAG_BASIC},
X+  {"scope id",         P_UGSTRING,P_GLOBAL, scope,                     NULL,   NULL,  FLAG_BASIC},
X   {"netbios aliases",  P_STRING,  P_GLOBAL, &Globals.szNetbiosAliases,  NULL,   NULL,  0},
X   {"server string",    P_STRING,  P_GLOBAL, &Globals.szServerString,    NULL,   NULL,  FLAG_BASIC},
X   {"interfaces",       P_STRING,  P_GLOBAL, &Globals.szInterfaces,      NULL,   NULL,  FLAG_BASIC},
echo x - smbpasswd.diff
sed 's/^X//' >smbpasswd.diff << 'END-of-smbpasswd.diff'
X--- smbpasswd.c.orig	Wed Jul 21 08:25:25 1999
X+++ smbpasswd.c	Mon Sep 20 23:21:22 1999
X@@ -20,6 +20,7 @@
X #include "includes.h"
X extern pstring myhostname;
X+extern pstring scope;
X extern pstring global_myname;
X extern int DEBUGLEVEL;
X@@ -276,7 +277,7 @@
X 	char *old_passwd = NULL;
X 	char *remote_machine = NULL;
X-	while ((ch = getopt(argc, argv, "adehmnj:r:sR:D:U:")) != EOF) {
X+	while ((ch = getopt(argc, argv, "adehmnj:r:sR:D:U:C:")) != EOF) {
X 		switch(ch) {
X 		case 'a':
X 			add_user = True;
X@@ -316,6 +317,9 @@
X 			break;
X 		case 'U':
X 			user_name = optarg;
X+			break;
X+		case 'C':
X+			pstrcpy(scope, optarg);
X 			break;
X 		default:
X 			usage();

	Best wishes, Eugeny
	    CoreDumped at CoreDumped.null.ru
	    ICQ#: 5885106

Those who in quarrels interpose, must often wipe a bloody nose.

More information about the samba mailing list