diff options
author | Günther Deschner <gd@samba.org> | 2014-03-11 18:07:11 +0100 |
---|---|---|
committer | Günther Deschner <gd@samba.org> | 2014-03-12 10:13:20 +0100 |
commit | a8c2807a26d2f1ff094ed7ea5724c0394f79b888 (patch) | |
tree | dfaacb872f6009007bee97f98cd6281b9a8050f7 /source3/utils/net_ads.c | |
parent | 1270e35ba70a4e4881512d375c767023512f67bd (diff) | |
download | samba-a8c2807a26d2f1ff094ed7ea5724c0394f79b888.tar.gz samba-a8c2807a26d2f1ff094ed7ea5724c0394f79b888.tar.xz samba-a8c2807a26d2f1ff094ed7ea5724c0394f79b888.zip |
s3-kerberos: let kerberos_return_pac() return a PAC container.
Guenther
Signed-off-by: Günther Deschner <gd@samba.org>
Reviewed-by: Andreas Schneider <asn@samba.org>
Diffstat (limited to 'source3/utils/net_ads.c')
-rw-r--r-- | source3/utils/net_ads.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/source3/utils/net_ads.c b/source3/utils/net_ads.c index 19da6da810..19c28b12f7 100644 --- a/source3/utils/net_ads.c +++ b/source3/utils/net_ads.c @@ -2601,6 +2601,7 @@ static int net_ads_kerberos_pac(struct net_context *c, int argc, const char **ar { struct PAC_LOGON_INFO *info = NULL; struct PAC_DATA *pac_data = NULL; + struct PAC_DATA_CTR *pac_data_ctr = NULL; TALLOC_CTX *mem_ctx = NULL; NTSTATUS status; int ret = -1; @@ -2659,13 +2660,15 @@ static int net_ads_kerberos_pac(struct net_context *c, int argc, const char **ar 2592000, /* one month */ impersonate_princ_s, local_service, - &pac_data); + &pac_data_ctr); if (!NT_STATUS_IS_OK(status)) { d_printf(_("failed to query kerberos PAC: %s\n"), nt_errstr(status)); goto out; } + pac_data = pac_data_ctr->pac_data; + for (i=0; i < pac_data->num_buffers; i++) { if (pac_data->buffers[i].type != PAC_TYPE_LOGON_INFO) { |