diff options
Diffstat (limited to 'source4/include/tdbsam2.h')
-rw-r--r-- | source4/include/tdbsam2.h | 94 |
1 files changed, 94 insertions, 0 deletions
diff --git a/source4/include/tdbsam2.h b/source4/include/tdbsam2.h new file mode 100644 index 0000000000..0ca9d34618 --- /dev/null +++ b/source4/include/tdbsam2.h @@ -0,0 +1,94 @@ +/* + * Unix SMB/CIFS implementation. + * tdbsam2 genstruct enabled header file + * Copyright (C) Simo Sorce 2002 + * + * This program is free software; you can redistribute it and/or modify it under + * the terms of the GNU General Public License as published by the Free + * Software Foundation; either version 2 of the License, or (at your option) + * any later version. + * + * This program is distributed in the hope that it will be useful, but WITHOUT + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for + * more details. + * + * You should have received a copy of the GNU General Public License along with + * this program; if not, write to the Free Software Foundation, Inc., 675 + * Mass Ave, Cambridge, MA 02139, USA. + */ + + +/* ALL strings assumes UTF8 as encoding */ + +GENSTRUCT struct tdbsam2_domain_data { + uint32 xcounter; /* counter to be updated at any change */ + + SEC_DESC *sec_desc; /* Security Descriptor */ + DOM_SID *user_sid; /* The User SID */ + char *name; _NULLTERM /* NT User Name */ + char *description; _NULLTERM /* Descritpion (Gecos) */ +}; + +GENSTRUCT struct tdbsam2_user_data { + uint32 xcounter; /* counter to be updated at any change */ + + SEC_DESC *sec_desc; /* Security Descriptor */ + DOM_SID *user_sid; /* The User SID */ + char *name; _NULLTERM /* NT User Name */ + char *description; _NULLTERM /* Descritpion (Gecos) */ + + DOM_SID *group_sid; /* The Primary Group SID */ + + NTTIME *logon_time; + NTTIME *logoff_time; + NTTIME *kickoff_time; + NTTIME *pass_last_set_time; + NTTIME *pass_can_change_time; + NTTIME *pass_must_change_time; + + char *full_name; _NULLTERM /* The Full Name */ + char *home_dir; _NULLTERM /* Home Directory */ + char *dir_drive; _NULLTERM /* Drive Letter the home should be mapped to */ + char *logon_script; _NULLTERM /* Logon script path */ + char *profile_path; _NULLTERM /* Profile is stored here */ + char *workstations; _NULLTERM /* List of Workstation names the user is allowed to LogIn */ + char *unknown_str; _NULLTERM /* Guess ... Unknown */ + char *munged_dial; _NULLTERM /* Callback Number */ + + /* passwords are 16 byte leght, pointer is null if no password */ + uint8 *lm_pw_ptr; _LEN(16) /* Lanman hashed password */ + uint8 *nt_pw_ptr; _LEN(16) /* NT hashed password */ + + uint16 logon_divs; /* 168 - num of hours in a week */ + uint32 hours_len; /* normally 21 */ + uint8 *hours; _LEN(hours_len) /* normally 21 bytes (depends on hours_len) */ + + uint32 unknown_3; /* 0x00ff ffff */ + uint32 unknown_5; /* 0x0002 0000 */ + uint32 unknown_6; /* 0x0000 04ec */ +}; + +GENSTRUCT struct tdbsam2_group_data { + uint32 xcounter; /* counter to be updated at any change */ + + SEC_DESC *sec_desc; /* Security Descriptor */ + DOM_SID *group_sid; /* The Group SID */ + char *name; _NULLTERM /* NT User Name */ + char *description; _NULLTERM /* Descritpion (Gecos) */ + + uint32 count; /* number of sids */ + DOM_SID **members; _LEN(count) /* SID array */ +}; + +GENSTRUCT struct tdbsam2_privilege_data { + uint32 xcounter; /* counter to be updated at any change */ + + LUID_ATTR *privilege; /* Privilege */ + char *name; _NULLTERM /* NT User Name */ + char *description; _NULLTERM /* Descritpion (Gecos) */ + + uint32 count; /* number of sids */ + DOM_SID **members; _LEN(count) /* SID array */ +}; + |