Bug 5198 - Gecos field is passed as full name

Jesse Malone jesse.malone at webcanada.com
Fri Feb 5 13:56:07 MST 2010


Hi,

 

I, and others, have noticed that the gecos field is not parsed by samba, and
so we wind up with the entire comma seperated gecos field as a user's full
name.

 

The bug is posted here: https://bugzilla.samba.org/show_bug.cgi?id=5198

 

It doesn't look like there has been any activity or comment on this bug from
any knowledgeable developers. I've proposed  a potential solution, but don't
really know samba at all and would appreciate comments from those more
knowledgeable than me.

 

-----------------------------------------------------------------------

My proposal follows: I'll start off by saying I really don't know this
project so opinions/corrections/suggestions are very much appreciated.
Proposed fix (untested thus far):

 

For samba 3.4.3 in passdb/pdb_get_set.c, at line 36

 

const char *pdb_fullname_from_gecos(const char* gecos) {

        // the sampass->fullname field doesn't separate

        // fullname from the other gecos fields. This

        // will grab just the name

         size_t len;

         char* fullname;

         len = strcspn(gecos,",");

         fullname = malloc((len+1)*sizeof(char));

         strncpy(fullname,gecos,len);

         fullname[len] = '\0'; //ensure null termination

         return fullname;

}

const char *pdb_get_fullname(const struct samu *sampass) {

        return pdb_fullname_from_gecos(sampass->full_name);

}

 

 

 

Thanks,

 

 

Jesse Malone

Developer

WebCanada Inc.

jesse.malone at webcanada.com

 



More information about the samba-technical mailing list