Bug 5198 - Gecos field is passed as full name
Jesse Malone
jmalone at jsoft.ca
Fri Feb 5 13:57:10 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