svn commit: samba r1868 - trunk/source/passdb

jra at samba.org jra at samba.org
Tue Aug 17 19:59:18 GMT 2004


Author: jra
Date: 2004-08-17 19:59:18 +0000 (Tue, 17 Aug 2004)
New Revision: 1868

WebSVN: http://websvn.samba.org/websvn/changeset.php?rep=samba&path=/&rev=1868&nolog=1

Log:
Rename "fallback_XXXX" mapping to "algorithmic_XXX" as
that's what it actually does, and "fallback_" is just
confusing.
Jeremy.

Modified:
   trunk/source/passdb/passdb.c
   trunk/source/passdb/pdb_smbpasswd.c


Changeset:
Modified: trunk/source/passdb/passdb.c
===================================================================
--- trunk/source/passdb/passdb.c	2004-08-17 19:25:07 UTC (rev 1867)
+++ trunk/source/passdb/passdb.c	2004-08-17 19:59:18 UTC (rev 1868)
@@ -213,7 +213,7 @@
 		}
 	}
 
-	if (!pdb_set_user_sid_from_rid(account_data, fallback_pdb_uid_to_user_rid(pwd->pw_uid), PDB_SET)) {
+	if (!pdb_set_user_sid_from_rid(account_data, algorithmic_pdb_uid_to_user_rid(pwd->pw_uid), PDB_SET)) {
 		DEBUG(0,("Can't set User SID from RID!\n"));
 		return NT_STATUS_INVALID_PARAMETER;
 	}
@@ -370,7 +370,7 @@
 	/* see if we need to generate a new rid using the 2.2 algorithm */
 	if ( rid == 0 && lp_enable_rid_algorithm() ) {
 		DEBUG(10,("pdb_init_sam_new: no RID specified.  Generating one via old algorithm\n"));
-		rid = fallback_pdb_uid_to_user_rid(pwd->pw_uid);
+		rid = algorithmic_pdb_uid_to_user_rid(pwd->pw_uid);
 	}
 	
 	/* set the new SID */
@@ -660,7 +660,7 @@
  Converts NT user RID to a UNIX uid.
  ********************************************************************/
 
-uid_t fallback_pdb_user_rid_to_uid(uint32 user_rid)
+uid_t algorithmic_pdb_user_rid_to_uid(uint32 user_rid)
 {
 	int rid_offset = algorithmic_rid_base();
 	return (uid_t)(((user_rid & (~USER_RID_TYPE)) - rid_offset)/RID_MULTIPLIER);
@@ -670,7 +670,7 @@
  converts UNIX uid to an NT User RID.
  ********************************************************************/
 
-uint32 fallback_pdb_uid_to_user_rid(uid_t uid)
+uint32 algorithmic_pdb_uid_to_user_rid(uid_t uid)
 {
 	int rid_offset = algorithmic_rid_base();
 	return (((((uint32)uid)*RID_MULTIPLIER) + rid_offset) | USER_RID_TYPE);
@@ -716,26 +716,19 @@
  Decides if a RID is a user or group RID.
  ********************************************************************/
 
-BOOL fallback_pdb_rid_is_user(uint32 rid)
+BOOL algorithmic_pdb_rid_is_user(uint32 rid)
 {
-  /* lkcl i understand that NT attaches an enumeration to a RID
-   * such that it can be identified as either a user, group etc
-   * type.  there are 5 such categories, and they are documented.
-   */
-	/* However, they are not in the RID, just somthing you can query
-	   seperatly.  Sorry luke :-) */
-
-   if(pdb_rid_is_well_known(rid)) {
-      /*
-       * The only well known user RIDs are DOMAIN_USER_RID_ADMIN
-       * and DOMAIN_USER_RID_GUEST.
-       */
-     if(rid == DOMAIN_USER_RID_ADMIN || rid == DOMAIN_USER_RID_GUEST)
-       return True;
-   } else if((rid & RID_TYPE_MASK) == USER_RID_TYPE) {
-     return True;
-   }
-   return False;
+	if(pdb_rid_is_well_known(rid)) {
+		/*
+		 * The only well known user RIDs are DOMAIN_USER_RID_ADMIN
+		 * and DOMAIN_USER_RID_GUEST.
+		 */
+		if(rid == DOMAIN_USER_RID_ADMIN || rid == DOMAIN_USER_RID_GUEST)
+			return True;
+	} else if((rid & RID_TYPE_MASK) == USER_RID_TYPE) {
+		return True;
+	}
+	return False;
 }
 
 /*******************************************************************
@@ -806,13 +799,13 @@
 		return True;
 	}
 
-	if (fallback_pdb_rid_is_user(rid)) {
+	if (algorithmic_pdb_rid_is_user(rid)) {
 		uid_t uid;
 		struct passwd *pw = NULL;
 
 		DEBUG(5, ("assuming RID %u is a user\n", (unsigned)rid));
 
-       		uid = fallback_pdb_user_rid_to_uid(rid);
+       		uid = algorithmic_pdb_user_rid_to_uid(rid);
 		pw = sys_getpwuid( uid );
 		
 		DEBUG(5,("local_lookup_sid: looking up uid %u %s\n", (unsigned int)uid,
@@ -849,7 +842,7 @@
 		DEBUG(5,("local_lookup_sid: found group %s for rid %u\n", name,
 			 (unsigned int)rid ));
 		
-		/* assume fallback groups aer domain global groups */
+		/* assume algorithmic groups are domain global groups */
 		
 		*psid_name_use = SID_NAME_DOM_GRP;
 		
@@ -1117,7 +1110,7 @@
 
 	DEBUG(8,("algorithmic_uid_to_sid: falling back to RID algorithm\n"));
 	sid_copy( psid, get_global_sam_sid() );
-	sid_append_rid( psid, fallback_pdb_uid_to_user_rid(uid) );
+	sid_append_rid( psid, algorithmic_pdb_uid_to_user_rid(uid) );
 	DEBUG(10,("algorithmic_uid_to_sid:  uid (%d) -> SID %s.\n",
 		(unsigned int)uid, sid_string_static(psid) ));
 
@@ -1290,7 +1283,7 @@
 	
 	if ( !ret ) {
 
-		/* fallback to rid mapping if enabled */
+		/* Fallback to algorithmic rid mapping if enabled */
 
 		if ( lp_enable_rid_algorithm() ) {
 
@@ -1306,7 +1299,7 @@
 
 			DEBUG(10,("local_sid_to_gid: Fall back to algorithmic mapping\n"));
 
-			if (fallback_pdb_rid_is_user(rid)) {
+			if (algorithmic_pdb_rid_is_user(rid)) {
 				DEBUG(3, ("local_sid_to_gid: SID %s is *NOT* a group\n", sid_string_static(psid)));
 				return False;
 			} else {
@@ -2240,11 +2233,11 @@
 		return False;
 	}
 
-	*low = fallback_pdb_uid_to_user_rid(id_low);
-	if (fallback_pdb_user_rid_to_uid((uint32)-1) < id_high) {
+	*low = algorithmic_pdb_uid_to_user_rid(id_low);
+	if (algorithmic_pdb_user_rid_to_uid((uint32)-1) < id_high) {
 		*high = (uint32)-1;
 	} else {
-		*high = fallback_pdb_uid_to_user_rid(id_high);
+		*high = algorithmic_pdb_uid_to_user_rid(id_high);
 	}
 
 	return True;

Modified: trunk/source/passdb/pdb_smbpasswd.c
===================================================================
--- trunk/source/passdb/pdb_smbpasswd.c	2004-08-17 19:25:07 UTC (rev 1867)
+++ trunk/source/passdb/pdb_smbpasswd.c	2004-08-17 19:59:18 UTC (rev 1868)
@@ -1144,8 +1144,8 @@
 			smb_pw->smb_userid=passwd->pw_uid;
 			passwd_free(&passwd);
 
-		} else if (fallback_pdb_rid_is_user(rid)) {
-			smb_pw->smb_userid=fallback_pdb_user_rid_to_uid(rid);
+		} else if (algorithmic_pdb_rid_is_user(rid)) {
+			smb_pw->smb_userid=algorithmic_pdb_user_rid_to_uid(rid);
 		} else {
 			DEBUG(0,("build_sam_pass: Failing attempt to store user with non-uid based user RID. \n"));
 			return False;
@@ -1366,7 +1366,7 @@
 		return nt_status;
 	}
 
-	while ( ((smb_pw=getsmbfilepwent(smbpasswd_state, fp)) != NULL) && (fallback_pdb_uid_to_user_rid(smb_pw->smb_userid) != rid) )
+	while ( ((smb_pw=getsmbfilepwent(smbpasswd_state, fp)) != NULL) && (algorithmic_pdb_uid_to_user_rid(smb_pw->smb_userid) != rid) )
       		/* do nothing */ ;
 
 	endsmbfilepwent(fp, &(smbpasswd_state->pw_file_lock_depth));



More information about the samba-cvs mailing list