summaryrefslogtreecommitdiffstats
path: root/source/libsmb
diff options
context:
space:
mode:
authorGünther Deschner <gd@samba.org>2006-09-28 21:33:54 +0000
committerGünther Deschner <gd@samba.org>2006-09-28 21:33:54 +0000
commit5d954bf6b189a9a0f348bda6ce9843d5577ab613 (patch)
tree6dee91c4968f40aae5b64c04897704ba15cf6719 /source/libsmb
parent606a5215676bd2608447af689943697e38b36162 (diff)
downloadsamba-5d954bf6b189a9a0f348bda6ce9843d5577ab613.tar.gz
samba-5d954bf6b189a9a0f348bda6ce9843d5577ab613.tar.xz
samba-5d954bf6b189a9a0f348bda6ce9843d5577ab613.zip
r18982: Move the gpo related functions to "libgpo".
Guenther
Diffstat (limited to 'source/libsmb')
-rw-r--r--source/libsmb/gpo.c171
1 files changed, 0 insertions, 171 deletions
diff --git a/source/libsmb/gpo.c b/source/libsmb/gpo.c
deleted file mode 100644
index 6be2ce2f795..00000000000
--- a/source/libsmb/gpo.c
+++ /dev/null
@@ -1,171 +0,0 @@
-/*
- * Unix SMB/CIFS implementation.
- * Group Policy Object Support
- * Copyright (C) Guenther Deschner 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.
- */
-
-#include "includes.h"
-
-#ifdef HAVE_LDAP
-
-#define GPT_INI_SECTION_GENERAL "General"
-#define GPT_INI_PARAMETER_VERSION "Version"
-#define GPT_INI_PARAMETER_DISPLAYNAME "displayName"
-
-struct gpt_ini {
- uint32 version;
- const char *display_name;
-};
-
-static uint32 version;
-
-static BOOL do_section(const char *section)
-{
- DEBUG(10,("do_section: %s\n", section));
-
- return True;
-}
-
-static BOOL do_parameter(const char *parameter, const char *value)
-{
- DEBUG(10,("do_parameter: %s, %s\n", parameter, value));
-
- if (strequal(parameter, GPT_INI_PARAMETER_VERSION)) {
- version = atoi(value);
- }
- return True;
-}
-
-NTSTATUS ads_gpo_get_sysvol_gpt_version(ADS_STRUCT *ads,
- TALLOC_CTX *mem_ctx,
- const char *filesyspath,
- uint32 *sysvol_version)
-{
- NTSTATUS status;
- const char *path;
- struct cli_state *cli;
- int fnum;
- fstring tok;
- static int io_bufsize = 64512;
- int read_size = io_bufsize;
- char *data = NULL;
- off_t start = 0;
- off_t nread = 0;
- int handle = 0;
- const char *local_file;
-
- *sysvol_version = 0;
-
- next_token(&filesyspath, tok, "\\", sizeof(tok));
- next_token(&filesyspath, tok, "\\", sizeof(tok));
-
- path = talloc_asprintf(mem_ctx, "\\%s\\gpt.ini", filesyspath);
- if (path == NULL) {
- return NT_STATUS_NO_MEMORY;
- }
-
- local_file = talloc_asprintf(mem_ctx, "%s/%s", lock_path("gpo_cache"), "gpt.ini");
- if (local_file == NULL) {
- return NT_STATUS_NO_MEMORY;
- }
-
- /* FIXME: walk down the dfs tree instead */
- status = cli_full_connection(&cli, global_myname(),
- ads->config.ldap_server_name,
- NULL, 0,
- "SYSVOL", "A:",
- ads->auth.user_name, NULL, ads->auth.password,
- CLI_FULL_CONNECTION_USE_KERBEROS,
- Undefined, NULL);
- if (!NT_STATUS_IS_OK(status)) {
- return status;
- }
-
- fnum = cli_open(cli, path, O_RDONLY, DENY_NONE);
- if (fnum == -1) {
- return NT_STATUS_NO_SUCH_FILE;
- }
-
-
- data = (char *)SMB_MALLOC(read_size);
- if (data == NULL) {
- return NT_STATUS_NO_MEMORY;
- }
-
- handle = sys_open(local_file, O_WRONLY|O_CREAT|O_TRUNC, 0644);
-
- if (handle == -1) {
- return NT_STATUS_NO_SUCH_FILE;
- }
-
- while (1) {
-
- int n = cli_read(cli, fnum, data, nread + start, read_size);
-
- if (n <= 0)
- break;
-
- if (write(handle, data, n) != n) {
- break;
- }
-
- nread += n;
- }
-
- cli_close(cli, fnum);
-
- if (!pm_process(local_file, do_section, do_parameter)) {
- return NT_STATUS_INVALID_PARAMETER;
- }
-
- *sysvol_version = version;
-
- SAFE_FREE(data);
-
- cli_shutdown(cli);
-
- return NT_STATUS_OK;
-}
-
-/*
-
-perfectly parseable with pm_process() :))
-
-[Unicode]
-Unicode=yes
-[System Access]
-MinimumPasswordAge = 1
-MaximumPasswordAge = 42
-MinimumPasswordLength = 7
-PasswordComplexity = 1
-PasswordHistorySize = 24
-LockoutBadCount = 0
-RequireLogonToChangePassword = 0
-ForceLogoffWhenHourExpire = 0
-ClearTextPassword = 0
-[Kerberos Policy]
-MaxTicketAge = 10
-MaxRenewAge = 7
-MaxServiceAge = 600
-MaxClockSkew = 5
-TicketValidateClient = 1
-[Version]
-signature="$CHICAGO$"
-Revision=1
-*/
-
-#endif /* HAVE_LDAP */