mirror of
https://github.com/samba-team/samba.git
synced 2025-08-03 04:22:09 +03:00
Added char *, uid_t and gid_t types to generic conversion routines.
This commit is contained in:
@ -68,7 +68,32 @@ PyObject *from_struct(void *s, struct pyconv *conv)
|
||||
|
||||
break;
|
||||
}
|
||||
case PY_STRING: {
|
||||
char *str = (char *)s + conv[i].offset;
|
||||
|
||||
item = PyString_FromString(str);
|
||||
PyDict_SetItemString(obj, conv[i].name, item);
|
||||
|
||||
break;
|
||||
}
|
||||
case PY_UID: {
|
||||
uid_t *uid = (uid_t *)((char *)s + conv[i].offset);
|
||||
|
||||
item = PyInt_FromLong(*uid);
|
||||
PyDict_SetItemString(obj, conv[i].name, item);
|
||||
|
||||
break;
|
||||
}
|
||||
case PY_GID: {
|
||||
gid_t *gid = (gid_t *)((char *)s + conv[i].offset);
|
||||
|
||||
item = PyInt_FromLong(*gid);
|
||||
PyDict_SetItemString(obj, conv[i].name, item);
|
||||
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
@ -21,7 +21,7 @@
|
||||
#ifndef _PY_CONV_H
|
||||
#define _PY_CONV_H
|
||||
|
||||
enum pyconv_types { PY_UNISTR, PY_UINT32, PY_UINT16 };
|
||||
enum pyconv_types { PY_UNISTR, PY_UINT32, PY_UINT16, PY_STRING, PY_UID, PY_GID };
|
||||
|
||||
struct pyconv {
|
||||
char *name; /* Name of member */
|
||||
|
Reference in New Issue
Block a user