diff options
| author | Jeffrey Altman <jaltman@secure-endpoints.com> | 2004-10-08 03:57:45 +0000 |
|---|---|---|
| committer | Jeffrey Altman <jaltman@secure-endpoints.com> | 2004-10-08 03:57:45 +0000 |
| commit | a2374cc7e141f02fd00d9634d26c16ba9f2ac7f3 (patch) | |
| tree | c01b1f87780c66bfadaf1e077b0683b52df2c469 /src | |
| parent | f9901b77b13039c26189f3af164e7998c038a07f (diff) | |
| download | krb5-a2374cc7e141f02fd00d9634d26c16ba9f2ac7f3.tar.gz krb5-a2374cc7e141f02fd00d9634d26c16ba9f2ac7f3.tar.xz krb5-a2374cc7e141f02fd00d9634d26c16ba9f2ac7f3.zip | |
Fix the forced setting of the Initial Ticket Flag on Win2000 and
add the functionality to XP and 2003 SP1.
ticket: 2735
git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@16814 dc483132-0cff-0310-8789-dd5450dbe970
Diffstat (limited to 'src')
| -rw-r--r-- | src/lib/krb5/ccache/ChangeLog | 4 | ||||
| -rw-r--r-- | src/lib/krb5/ccache/cc_mslsa.c | 18 |
2 files changed, 21 insertions, 1 deletions
diff --git a/src/lib/krb5/ccache/ChangeLog b/src/lib/krb5/ccache/ChangeLog index 11ac8d80f..757ce389c 100644 --- a/src/lib/krb5/ccache/ChangeLog +++ b/src/lib/krb5/ccache/ChangeLog @@ -1,3 +1,7 @@ +2004-10-07 Jeffrey Altman <jaltman@mit.edu> + * cc_mslsa.c: Fix the forced setting of the Initial Ticket Flag + on Win2000 and add it to XP and 2003 SP1 + 2004-09-17 Jeffrey Altman <jaltman@mit.edu> * cc_mslsa.c: Fix the error returned when krb5_lcc_start_seq_get() discovers the cache is empty. Check for the new error in diff --git a/src/lib/krb5/ccache/cc_mslsa.c b/src/lib/krb5/ccache/cc_mslsa.c index f35a59499..c12f5817e 100644 --- a/src/lib/krb5/ccache/cc_mslsa.c +++ b/src/lib/krb5/ccache/cc_mslsa.c @@ -1621,7 +1621,7 @@ GetMSCacheTicketFromCacheInfoW2K( HANDLE LogonHandle, ULONG PackageId, * to us. */ if ( tktinfo->TicketFlags & KERB_TICKET_FLAGS_initial ) - (*ticket)->TicketFlags &= KERB_TICKET_FLAGS_initial; + (*ticket)->TicketFlags |= KERB_TICKET_FLAGS_initial; return(TRUE); } @@ -1679,6 +1679,14 @@ GetMSCacheTicketFromCacheInfoXP( HANDLE LogonHandle, ULONG PackageId, /* otherwise return ticket */ *ticket = &(pTicketResponse->Ticket); + + /* set the initial flag if we were attempting to retrieve one + * because Windows won't necessarily return the initial ticket + * to us. + */ + if ( tktinfo->TicketFlags & KERB_TICKET_FLAGS_initial ) + (*ticket)->TicketFlags |= KERB_TICKET_FLAGS_initial; + return(TRUE); } @@ -1737,6 +1745,14 @@ GetMSCacheTicketFromCacheInfoEX2( HANDLE LogonHandle, ULONG PackageId, /* otherwise return ticket */ *ticket = &(pTicketResponse->Ticket); + + /* set the initial flag if we were attempting to retrieve one + * because Windows won't necessarily return the initial ticket + * to us. + */ + if ( tktinfo->TicketFlags & KERB_TICKET_FLAGS_initial ) + (*ticket)->TicketFlags |= KERB_TICKET_FLAGS_initial; + return(TRUE); } #endif /* HAVE_CACHE_INFO_EX2 */ |
