summaryrefslogtreecommitdiff
path: root/source4/lib/samba3/samba3.h
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2005-08-24 00:58:52 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:34:28 -0500
commitc0ab8767118bc0e8a57bc1b31e37a261272fbc33 (patch)
treee8540742a6bc6112614233a4a11debbe6116869b /source4/lib/samba3/samba3.h
parentcdb6d52372624b937db6b3d3cbc9353d4064af11 (diff)
downloadsamba-c0ab8767118bc0e8a57bc1b31e37a261272fbc33.tar.gz
samba-c0ab8767118bc0e8a57bc1b31e37a261272fbc33.tar.bz2
samba-c0ab8767118bc0e8a57bc1b31e37a261272fbc33.zip
r9555: More updates. Everything except for secrets.c compiles now..
(This used to be commit e59d6156b2d569ca788fe1824148f05f4a7a9918)
Diffstat (limited to 'source4/lib/samba3/samba3.h')
-rw-r--r--source4/lib/samba3/samba3.h119
1 files changed, 119 insertions, 0 deletions
diff --git a/source4/lib/samba3/samba3.h b/source4/lib/samba3/samba3.h
new file mode 100644
index 0000000000..d3e03cf923
--- /dev/null
+++ b/source4/lib/samba3/samba3.h
@@ -0,0 +1,119 @@
+/*
+ Unix SMB/CIFS implementation.
+ Samba3 interfaces
+ Copyright (C) Jelmer Vernooij 2005.
+
+ 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.
+*/
+
+#ifndef _SAMBA3_H /* _SAMBA3_H */
+#define _SAMBA3_H
+
+#include "librpc/gen_ndr/security.h"
+
+struct samba3_samaccount {
+ uint32_t logon_time,
+ logoff_time,
+ kickoff_time,
+ bad_password_time,
+ pass_last_set_time,
+ pass_can_change_time,
+ pass_must_change_time;
+ char *username;
+ char *domain;
+ char *nt_username;
+ char *dir_drive;
+ char *unknown_str;
+ char *munged_dial;
+ char *fullname;
+ char *homedir;
+ char *logon_script;
+ char *profile_path;
+ char *acct_desc;
+ char *workstations;
+ uint32_t user_rid, group_rid, hours_len, unknown_6;
+ uint16_t acct_ctrl, logon_divs;
+ uint16_t bad_password_count, logon_count;
+ uint8_t *lm_pw_ptr, *nt_pw_ptr;
+ uint8_t *nt_pw_hist_ptr;
+ uint8_t *hours;
+};
+
+/* SID Types */
+enum SID_NAME_USE
+{
+ SID_NAME_USE_NONE = 0,
+ SID_NAME_USER = 1, /* user */
+ SID_NAME_DOM_GRP, /* domain group */
+ SID_NAME_DOMAIN, /* domain sid */
+ SID_NAME_ALIAS, /* local group */
+ SID_NAME_WKN_GRP, /* well-known group */
+ SID_NAME_DELETED, /* deleted account: needed for c2 rating */
+ SID_NAME_INVALID, /* invalid account */
+ SID_NAME_UNKNOWN, /* unknown sid type */
+ SID_NAME_COMPUTER /* sid for a computer */
+};
+
+struct samba3_groupmapping {
+ struct pdb_methods *methods;
+ gid_t gid;
+ struct dom_sid *sid;
+ enum SID_NAME_USE sid_name_use;
+ const char *nt_name;
+ const char *comment;
+};
+
+struct samba3_idmap_mapping
+{
+ enum { IDMAP_GROUP, IDMAP_USER } type;
+ uint32_t unix_id;
+ struct dom_sid *sid;
+};
+
+struct samba3_idmap
+{
+ /* High water marks */
+ uint32_t user_hwm;
+ uint32_t group_hwm;
+
+ uint32_t mapping_count;
+ struct samba3_idmap_mapping *mappings;
+};
+
+struct samba3_winsdb_entry
+{
+ char *name;
+ int nb_flags;
+ int type;
+ time_t ttl;
+ uint32_t ip_count;
+ struct ipv4_addr *ips;
+};
+
+struct samba3_policy
+{
+ uint32_t min_password_length;
+ uint32_t password_history;
+ uint32_t user_must_logon_to_change_password;
+ uint32_t maximum_password_age;
+ uint32_t minimum_password_age;
+ uint32_t lockout_duration;
+ uint32_t reset_count_minutes;
+ uint32_t bad_lockout_minutes;
+ uint32_t disconnect_time;
+ uint32_t refuse_machine_password_change;
+};
+
+#endif /* _SAMBA3_H */