svn commit: samba r9653 - in branches/SAMBA_3_0/source: . utils
jerry at samba.org
jerry at samba.org
Fri Aug 26 16:06:18 GMT 2005
Author: jerry
Date: 2005-08-26 16:06:17 +0000 (Fri, 26 Aug 2005)
New Revision: 9653
WebSVN: http://websvn.samba.org/cgi-bin/viewcvs.cgi?view=rev&root=samba&rev=9653
Log:
adding common popt args to profiles tool (needed for debuglevel to regfio lib)
Modified:
branches/SAMBA_3_0/source/Makefile.in
branches/SAMBA_3_0/source/utils/profiles.c
Changeset:
Modified: branches/SAMBA_3_0/source/Makefile.in
===================================================================
--- branches/SAMBA_3_0/source/Makefile.in 2005-08-26 14:26:53 UTC (rev 9652)
+++ branches/SAMBA_3_0/source/Makefile.in 2005-08-26 16:06:17 UTC (rev 9653)
@@ -332,7 +332,8 @@
PROFILES_OBJ = utils/profiles.o \
$(REGFIO_OBJ) $(REGOBJS_OBJ) $(ERRORMAP_OBJ) \
$(RPC_PARSE_OBJ1) $(PARAM_OBJ) $(LIBSAMBA_OBJ) \
- $(DOSERR_OBJ) $(LIB_OBJ) $(LIB_DUMMY_OBJ)
+ $(DOSERR_OBJ) $(LIB_OBJ) $(LIB_DUMMY_OBJ) \
+ $(POPT_LIB_OBJ) $(SECRETS_OBJ)
OPLOCK_OBJ = smbd/oplock.o smbd/oplock_irix.o smbd/oplock_linux.o
Modified: branches/SAMBA_3_0/source/utils/profiles.c
===================================================================
--- branches/SAMBA_3_0/source/utils/profiles.c 2005-08-26 14:26:53 UTC (rev 9652)
+++ branches/SAMBA_3_0/source/utils/profiles.c 2005-08-26 16:06:17 UTC (rev 9653)
@@ -25,7 +25,6 @@
/* GLOBAL VARIABLES */
-int verbose = 0;
DOM_SID old_sid, new_sid;
int change = 0, new_val = 0;
@@ -33,21 +32,30 @@
/********************************************************************
********************************************************************/
-static void swap_sid_in_acl( SEC_DESC *sd, DOM_SID *s1, DOM_SID *s2 )
+static BOOL swap_sid_in_acl( SEC_DESC *sd, DOM_SID *s1, DOM_SID *s2 )
{
SEC_ACL *acl = sd->dacl;
int i;
+ BOOL update = False;
- if ( sid_equal( sd->owner_sid, s1 ) )
+ if ( sid_equal( sd->owner_sid, s1 ) ) {
sid_copy( sd->owner_sid, s2 );
+ update = True;
+ }
- if ( sid_equal( sd->grp_sid, s1 ) )
+ if ( sid_equal( sd->grp_sid, s1 ) ) {
sid_copy( sd->grp_sid, s2 );
+ update = True;
+ }
for ( i=0; i<acl->num_aces; i++ ) {
- if ( sid_equal( &acl->ace[i].trustee, s1 ) )
+ if ( sid_equal( &acl->ace[i].trustee, s1 ) ) {
sid_copy( &acl->ace[i].trustee, s2 );
+ update = True;
+ }
}
+
+ return update;
}
/********************************************************************
@@ -71,7 +79,8 @@
return False;
}
- swap_sid_in_acl( new_sd, &old_sid, &new_sid );
+ if ( swap_sid_in_acl( new_sd, &old_sid, &new_sid ) )
+ DEBUG(1,("Updating ACL for %s\n", nk->keyname ));
regsubkey_ctr_init( &subkeys );
regval_ctr_init( &values );
@@ -104,8 +113,7 @@
regval_ctr_destroy( &values );
regsubkey_ctr_destroy( &subkeys );
- if ( verbose )
- printf("[%s]\n", path );
+ DEBUG(2,("[%s]\n", path));
return True;
}
@@ -121,14 +129,19 @@
pstring orig_filename, new_filename;
struct poptOption long_options[] = {
POPT_AUTOHELP
- { "verbose", 'v', POPT_ARG_NONE, NULL, 'v', "Sets verbose mode" },
{ "change-sid", 'c', POPT_ARG_STRING, NULL, 'c', "Provides SID to change" },
{ "new-sid", 'n', POPT_ARG_STRING, NULL, 'n', "Provides SID to change to" },
- { 0, 0, 0, 0 }
+ POPT_COMMON_SAMBA
+ POPT_COMMON_VERSION
+ POPT_TABLEEND
};
+ poptContext pc;
+ /* setup logging options */
- poptContext pc;
+ setup_logging( "profiles", True );
+ dbf = x_stderr;
+ x_setbuf( x_stderr, NULL );
pc = poptGetContext("profiles", argc, (const char **)argv, long_options,
POPT_CONTEXT_KEEP_FIRST);
@@ -157,13 +170,10 @@
}
break;
- case 'v':
- verbose++;
- break;
}
}
- poptGetArg(pc); /* To get argv[0] */
+ poptGetArg(pc);
if (!poptPeekArg(pc)) {
poptPrintUsage(pc, stderr, 0);
More information about the samba-cvs
mailing list