summaryrefslogtreecommitdiff
path: root/source4/include
diff options
context:
space:
mode:
authorJelmer Vernooij <jelmer@samba.org>2005-03-21 02:08:38 +0000
committerGerald (Jerry) Carter <jerry@samba.org>2007-10-10 13:11:08 -0500
commit02075be0bbc2095073f8898350fded64a7c97c79 (patch)
tree28ea2820f79dfc766b745515848c840bf98b2a88 /source4/include
parent105660d3f9b537fa47fe6e33c0418a1d8f85e0e9 (diff)
downloadsamba-02075be0bbc2095073f8898350fded64a7c97c79.tar.gz
samba-02075be0bbc2095073f8898350fded64a7c97c79.tar.bz2
samba-02075be0bbc2095073f8898350fded64a7c97c79.zip
r5917: First step in using the new cli_credentials structure. This patch
puts support for it into popt_common, adds a few utility functions (in lib/credentials.c) and the callback functions for the command-line (lib/cmdline/credentials.c). Comments are welcome :-) (This used to be commit 1d49b57c50fe8c2683ea23e9df41ce8ad774db98)
Diffstat (limited to 'source4/include')
-rw-r--r--source4/include/credentials.h19
-rw-r--r--source4/include/includes.h1
2 files changed, 18 insertions, 2 deletions
diff --git a/source4/include/credentials.h b/source4/include/credentials.h
index 0e81615878..7b223dad5a 100644
--- a/source4/include/credentials.h
+++ b/source4/include/credentials.h
@@ -3,7 +3,7 @@
Client credentials structure
- Copyright (C) 2004 Jelmer Vernooij <jelmer@samba.org>
+ Copyright (C) Jelmer Vernooij 2004-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
@@ -20,17 +20,32 @@
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
+/* In order of priority */
+enum credentials_obtained {
+ CRED_GUESSED = 0, /* Current value should be used, which was guessed */
+ CRED_CALLBACK, /* Callback should be used to obtain value */
+ CRED_SPECIFIED /* Was explicitly specified on the command-line */
+};
+
struct cli_credentials {
/* Preferred methods, NULL means default */
const char **preferred_methods;
+ enum credentials_obtained workstation_obtained;
+ enum credentials_obtained username_obtained;
+ enum credentials_obtained password_obtained;
+ enum credentials_obtained domain_obtained;
+ enum credentials_obtained realm_obtained;
+
+ const char *workstation;
const char *username;
const char *password;
const char *domain;
const char *realm;
- const char *(*username_cb) (struct cli_credentials *);
+ const char *(*workstation_cb) (struct cli_credentials *);
const char *(*password_cb) (struct cli_credentials *);
+ const char *(*username_cb) (struct cli_credentials *);
const char *(*domain_cb) (struct cli_credentials *);
const char *(*realm_cb) (struct cli_credentials *);
diff --git a/source4/include/includes.h b/source4/include/includes.h
index 9a802aebd0..ce78e14d7d 100644
--- a/source4/include/includes.h
+++ b/source4/include/includes.h
@@ -123,6 +123,7 @@ extern int errno;
#include "smb.h"
#include "byteorder.h"
#include "module.h"
+#include "credentials.h"
#include "librpc/ndr/libndr.h"
#include "librpc/gen_ndr/ndr_misc.h"
#include "librpc/gen_ndr/ndr_dcerpc.h"