26 # |
26 # |
27 # Note: That this patch is specific to the Solaris kernel implementation and |
27 # Note: That this patch is specific to the Solaris kernel implementation and |
28 # therefore should not be considered as an upstream contribution to MIT. |
28 # therefore should not be considered as an upstream contribution to MIT. |
29 # Patch source: in-house |
29 # Patch source: in-house |
30 # |
30 # |
31 diff -pur old/src/lib/gssapi/generic/gssapiP_generic.h new/src/lib/gssapi/generic/gssapiP_generic.h |
31 diff --git a/src/lib/gssapi/generic/Makefile.in b/src/lib/gssapi/generic/Makefile.in |
32 --- old/src/lib/gssapi/generic/gssapiP_generic.h 2015-08-24 23:54:31.967668939 -0600 |
32 --- a/src/lib/gssapi/generic/Makefile.in |
33 +++ new/src/lib/gssapi/generic/gssapiP_generic.h 2015-08-24 23:53:45.867622444 -0600 |
33 +++ b/src/lib/gssapi/generic/Makefile.in |
34 @@ -116,6 +116,12 @@ |
|
35 #define g_seqstate_size gssint_g_seqstate_size |
|
36 #define g_seqstate_externalize gssint_g_seqstate_externalize |
|
37 #define g_seqstate_internalize gssint_g_seqstate_internalize |
|
38 +#define g_order_init gssint_g_order_init |
|
39 +#define g_order_check gssint_g_order_check |
|
40 +#define g_order_free gssint_g_order_free |
|
41 +#define g_queue_size gssint_g_queue_size |
|
42 +#define g_queue_externalize gssint_g_queue_externalize |
|
43 +#define g_queue_internalize gssint_g_queue_internalize |
|
44 #define g_canonicalize_host gssint_g_canonicalize_host |
|
45 #define g_local_host_name gssint_g_local_host_name |
|
46 #define g_strdup gssint_g_strdup |
|
47 @@ -185,6 +191,19 @@ long g_seqstate_externalize(g_seqnum_sta |
|
48 long g_seqstate_internalize(g_seqnum_state *state_out, unsigned char **buf, |
|
49 size_t *lenremain); |
|
50 |
|
51 +gss_int32 g_order_init (void **queue, uint64_t seqnum, |
|
52 + int do_replay, int do_sequence, int wide); |
|
53 + |
|
54 +gss_int32 g_order_check (void **queue, uint64_t seqnum); |
|
55 + |
|
56 +void g_order_free (void **queue); |
|
57 + |
|
58 +gss_uint32 g_queue_size(void *vqueue, size_t *sizep); |
|
59 +gss_uint32 g_queue_externalize(void *vqueue, unsigned char **buf, |
|
60 + size_t *lenremain); |
|
61 +gss_uint32 g_queue_internalize(void **vqueue, unsigned char **buf, |
|
62 + size_t *lenremain); |
|
63 + |
|
64 char *g_strdup (char *str); |
|
65 |
|
66 /** declarations of internal name mechanism functions **/ |
|
67 diff -pur old/src/lib/gssapi/generic/Makefile.in new/src/lib/gssapi/generic/Makefile.in |
|
68 --- old/src/lib/gssapi/generic/Makefile.in 2015-08-24 23:54:31.968226730 -0600 |
|
69 +++ new/src/lib/gssapi/generic/Makefile.in 2015-08-24 23:53:45.871579061 -0600 |
|
70 @@ -66,6 +66,7 @@ SRCS = \ |
34 @@ -66,6 +66,7 @@ SRCS = \ |
71 $(srcdir)/util_buffer.c \ |
35 $(srcdir)/util_buffer.c \ |
72 $(srcdir)/util_buffer_set.c \ |
36 $(srcdir)/util_buffer_set.c \ |
73 $(srcdir)/util_errmap.c \ |
37 $(srcdir)/util_errmap.c \ |
74 + $(srcdir)/util_ordering.c \ |
38 + $(srcdir)/util_ordering.c \ |
89 util_errmap.o \ |
53 util_errmap.o \ |
90 + util_ordering.o \ |
54 + util_ordering.o \ |
91 util_set.o \ |
55 util_set.o \ |
92 util_seqstate.o \ |
56 util_seqstate.o \ |
93 util_token.o \ |
57 util_token.o \ |
94 diff -pur old/src/lib/gssapi/krb5/accept_sec_context.c new/src/lib/gssapi/krb5/accept_sec_context.c |
58 diff --git a/src/lib/gssapi/generic/deps b/src/lib/gssapi/generic/deps |
95 --- old/src/lib/gssapi/krb5/accept_sec_context.c 2015-08-24 23:54:31.971814896 -0600 |
59 --- a/src/lib/gssapi/generic/deps |
96 +++ new/src/lib/gssapi/krb5/accept_sec_context.c 2015-08-24 23:53:45.848389600 -0600 |
60 +++ b/src/lib/gssapi/generic/deps |
97 @@ -441,6 +441,7 @@ kg_accept_krb5(minor_status, context_han |
61 @@ -64,6 +64,13 @@ util_errmap.so util_errmap.po $(OUTPRE)util_errmap.$(OBJEXT): \ |
|
62 $(top_srcdir)/include/k5-thread.h $(top_srcdir)/include/krb5.h \ |
|
63 errmap.h gssapiP_generic.h gssapi_err_generic.h gssapi_ext.h \ |
|
64 gssapi_generic.h util_errmap.c |
|
65 +util_ordering.so util_ordering.po $(OUTPRE)util_ordering.$(OBJEXT): \ |
|
66 + $(BUILDTOP)/include/autoconf.h $(BUILDTOP)/include/gssapi/gssapi.h \ |
|
67 + $(BUILDTOP)/include/gssapi/gssapi_alloc.h $(COM_ERR_DEPS) \ |
|
68 + $(top_srcdir)/include/k5-buf.h $(top_srcdir)/include/k5-platform.h \ |
|
69 + $(top_srcdir)/include/k5-thread.h gssapiP_generic.h \ |
|
70 + gssapi_err_generic.h gssapi_ext.h gssapi_generic.h \ |
|
71 + util_ordering.c |
|
72 util_set.so util_set.po $(OUTPRE)util_set.$(OBJEXT): \ |
|
73 $(BUILDTOP)/include/autoconf.h $(BUILDTOP)/include/gssapi/gssapi.h \ |
|
74 $(BUILDTOP)/include/gssapi/gssapi_alloc.h $(COM_ERR_DEPS) \ |
|
75 diff --git a/src/lib/gssapi/generic/gssapiP_generic.h b/src/lib/gssapi/generic/gssapiP_generic.h |
|
76 --- a/src/lib/gssapi/generic/gssapiP_generic.h |
|
77 +++ b/src/lib/gssapi/generic/gssapiP_generic.h |
|
78 @@ -116,6 +116,12 @@ |
|
79 #define g_seqstate_size gssint_g_seqstate_size |
|
80 #define g_seqstate_externalize gssint_g_seqstate_externalize |
|
81 #define g_seqstate_internalize gssint_g_seqstate_internalize |
|
82 +#define g_order_init gssint_g_order_init |
|
83 +#define g_order_check gssint_g_order_check |
|
84 +#define g_order_free gssint_g_order_free |
|
85 +#define g_queue_size gssint_g_queue_size |
|
86 +#define g_queue_externalize gssint_g_queue_externalize |
|
87 +#define g_queue_internalize gssint_g_queue_internalize |
|
88 #define g_canonicalize_host gssint_g_canonicalize_host |
|
89 #define g_local_host_name gssint_g_local_host_name |
|
90 #define g_strdup gssint_g_strdup |
|
91 @@ -185,6 +191,19 @@ long g_seqstate_externalize(g_seqnum_state state, unsigned char **buf, |
|
92 long g_seqstate_internalize(g_seqnum_state *state_out, unsigned char **buf, |
|
93 size_t *lenremain); |
|
94 |
|
95 +gss_int32 g_order_init (void **queue, uint64_t seqnum, |
|
96 + int do_replay, int do_sequence, int wide); |
|
97 + |
|
98 +gss_int32 g_order_check (void **queue, uint64_t seqnum); |
|
99 + |
|
100 +void g_order_free (void **queue); |
|
101 + |
|
102 +gss_uint32 g_queue_size(void *vqueue, size_t *sizep); |
|
103 +gss_uint32 g_queue_externalize(void *vqueue, unsigned char **buf, |
|
104 + size_t *lenremain); |
|
105 +gss_uint32 g_queue_internalize(void **vqueue, unsigned char **buf, |
|
106 + size_t *lenremain); |
|
107 + |
|
108 char *g_strdup (char *str); |
|
109 |
|
110 /** declarations of internal name mechanism functions **/ |
|
111 diff --git a/src/lib/gssapi/krb5/accept_sec_context.c b/src/lib/gssapi/krb5/accept_sec_context.c |
|
112 --- a/src/lib/gssapi/krb5/accept_sec_context.c |
|
113 +++ b/src/lib/gssapi/krb5/accept_sec_context.c |
|
114 @@ -435,6 +435,7 @@ kg_accept_krb5(minor_status, context_handle, |
98 char *sptr; |
115 char *sptr; |
99 OM_uint32 tmp; |
116 OM_uint32 tmp; |
100 size_t md5len; |
117 size_t md5len; |
101 + int bigend; |
118 + int bigend; |
102 krb5_gss_cred_id_t cred = 0; |
119 krb5_gss_cred_id_t cred = 0; |
103 krb5_data ap_rep, ap_req; |
120 krb5_data ap_rep, ap_req; |
104 unsigned int i; |
121 unsigned int i; |
105 @@ -704,6 +705,7 @@ kg_accept_krb5(minor_status, context_han |
122 @@ -698,6 +699,7 @@ kg_accept_krb5(minor_status, context_handle, |
106 } |
123 } |
107 |
124 |
108 gss_flags = GSS_C_MUTUAL_FLAG | GSS_C_REPLAY_FLAG | GSS_C_SEQUENCE_FLAG; |
125 gss_flags = GSS_C_MUTUAL_FLAG | GSS_C_REPLAY_FLAG | GSS_C_SEQUENCE_FLAG; |
109 + bigend = 0; |
126 + bigend = 0; |
110 } else { |
127 } else { |
111 /* gss krb5 v1 */ |
128 /* gss krb5 v1 */ |
112 |
129 |
113 @@ -731,14 +733,22 @@ kg_accept_krb5(minor_status, context_han |
130 @@ -725,14 +727,22 @@ kg_accept_krb5(minor_status, context_handle, |
114 } |
131 } |
115 |
132 |
116 ptr = (unsigned char *) authdat->checksum->contents; |
133 ptr = (unsigned char *) authdat->checksum->contents; |
117 + bigend = 0; |
134 + bigend = 0; |
118 |
135 |
137 + } |
154 + } |
138 + } |
155 + } |
139 |
156 |
140 /* |
157 /* |
141 The following section of code attempts to implement the |
158 The following section of code attempts to implement the |
142 @@ -779,7 +789,7 @@ kg_accept_krb5(minor_status, context_han |
159 @@ -773,7 +783,7 @@ kg_accept_krb5(minor_status, context_handle, |
143 |
160 |
144 /* Read the token flags. Remember if GSS_C_DELEG_FLAG was set, but |
161 /* Read the token flags. Remember if GSS_C_DELEG_FLAG was set, but |
145 * mask it out until we actually read a delegated credential. */ |
162 * mask it out until we actually read a delegated credential. */ |
146 - TREAD_INT(ptr, gss_flags, 0); |
163 - TREAD_INT(ptr, gss_flags, 0); |
147 + TREAD_INT(ptr, gss_flags, bigend); |
164 + TREAD_INT(ptr, gss_flags, bigend); |
148 token_deleg_flag = (gss_flags & GSS_C_DELEG_FLAG); |
165 token_deleg_flag = (gss_flags & GSS_C_DELEG_FLAG); |
149 gss_flags &= ~GSS_C_DELEG_FLAG; |
166 gss_flags &= ~GSS_C_DELEG_FLAG; |
150 |
167 |
151 @@ -788,8 +798,8 @@ kg_accept_krb5(minor_status, context_han |
168 @@ -782,8 +792,8 @@ kg_accept_krb5(minor_status, context_handle, |
152 i = authdat->checksum->length - 24; |
169 i = authdat->checksum->length - 24; |
153 if (i && token_deleg_flag) { |
170 if (i && token_deleg_flag) { |
154 if (i >= 4) { |
171 if (i >= 4) { |
155 - TREAD_INT16(ptr, option_id, 0); |
172 - TREAD_INT16(ptr, option_id, 0); |
156 - TREAD_INT16(ptr, option.length, 0); |
173 - TREAD_INT16(ptr, option.length, 0); |
157 + TREAD_INT16(ptr, option_id, bigend); |
174 + TREAD_INT16(ptr, option_id, bigend); |
158 + TREAD_INT16(ptr, option.length, bigend); |
175 + TREAD_INT16(ptr, option.length, bigend); |
159 i -= 4; |
176 i -= 4; |
160 |
177 |
161 if (i < option.length) { |
178 if (i < option.length) { |
162 @@ -886,6 +896,7 @@ kg_accept_krb5(minor_status, context_han |
179 @@ -880,6 +890,7 @@ kg_accept_krb5(minor_status, context_handle, |
163 GSS_C_DCE_STYLE | GSS_C_IDENTIFY_FLAG | |
180 GSS_C_DCE_STYLE | GSS_C_IDENTIFY_FLAG | |
164 GSS_C_EXTENDED_ERROR_FLAG))); |
181 GSS_C_EXTENDED_ERROR_FLAG))); |
165 ctx->seed_init = 0; |
182 ctx->seed_init = 0; |
166 + ctx->big_endian = bigend; |
183 + ctx->big_endian = bigend; |
167 ctx->cred_rcache = cred_rcache; |
184 ctx->cred_rcache = cred_rcache; |
168 |
185 |
169 /* XXX move this into gss_name_t */ |
186 /* XXX move this into gss_name_t */ |
170 diff -pur old/src/lib/gssapi/krb5/gssapi_krb5.c new/src/lib/gssapi/krb5/gssapi_krb5.c |
187 diff --git a/src/lib/gssapi/krb5/gssapiP_krb5.h b/src/lib/gssapi/krb5/gssapiP_krb5.h |
171 --- old/src/lib/gssapi/krb5/gssapi_krb5.c 2015-08-24 23:54:31.974446790 -0600 |
188 --- a/src/lib/gssapi/krb5/gssapiP_krb5.h |
172 +++ new/src/lib/gssapi/krb5/gssapi_krb5.c 2015-08-24 23:53:45.847910701 -0600 |
189 +++ b/src/lib/gssapi/krb5/gssapiP_krb5.h |
173 @@ -938,6 +938,7 @@ static int gss_krb5mechglue_init(void) |
190 @@ -205,6 +205,7 @@ typedef struct _krb5_gss_ctx_id_rec { |
174 |
|
175 mech_krb5.mechNameStr = "kerberos_v5"; |
|
176 mech_krb5.mech_type = (gss_OID)gss_mech_krb5; |
|
177 + mech_krb5.kmodName = "kmech_krb5"; |
|
178 gssint_register_mechinfo(&mech_krb5); |
|
179 |
|
180 mech_krb5.mechNameStr = "kerberos_v5_old"; |
|
181 diff -pur old/src/lib/gssapi/krb5/gssapiP_krb5.h new/src/lib/gssapi/krb5/gssapiP_krb5.h |
|
182 --- old/src/lib/gssapi/krb5/gssapiP_krb5.h 2015-08-24 23:54:31.974815169 -0600 |
|
183 +++ new/src/lib/gssapi/krb5/gssapiP_krb5.h 2015-08-24 23:53:45.845950677 -0600 |
|
184 @@ -204,6 +204,7 @@ typedef struct _krb5_gss_ctx_id_rec { |
|
185 krb5_magic magic; |
191 krb5_magic magic; |
186 unsigned int initiate : 1; /* nonzero if initiating, zero if accepting */ |
192 unsigned int initiate : 1; /* nonzero if initiating, zero if accepting */ |
187 unsigned int established : 1; |
193 unsigned int established : 1; |
188 + unsigned int big_endian : 1; |
194 + unsigned int big_endian : 1; |
189 unsigned int have_acceptor_subkey : 1; |
195 unsigned int have_acceptor_subkey : 1; |
190 unsigned int seed_init : 1; /* XXX tested but never actually set */ |
196 unsigned int seed_init : 1; /* XXX tested but never actually set */ |
191 unsigned int terminated : 1; |
197 unsigned int terminated : 1; |
192 diff -pur old/src/lib/gssapi/krb5/import_sec_context.c new/src/lib/gssapi/krb5/import_sec_context.c |
198 diff --git a/src/lib/gssapi/krb5/gssapi_krb5.c b/src/lib/gssapi/krb5/gssapi_krb5.c |
193 --- old/src/lib/gssapi/krb5/import_sec_context.c 2015-08-24 23:54:31.969983292 -0600 |
199 --- a/src/lib/gssapi/krb5/gssapi_krb5.c |
194 +++ new/src/lib/gssapi/krb5/import_sec_context.c 2015-08-24 23:53:45.845397252 -0600 |
200 +++ b/src/lib/gssapi/krb5/gssapi_krb5.c |
195 @@ -107,7 +107,6 @@ krb5_gss_import_sec_context(minor_status |
201 @@ -1046,6 +1046,7 @@ static int gss_krb5mechglue_init(void) |
|
202 |
|
203 mech_krb5.mechNameStr = "kerberos_v5"; |
|
204 mech_krb5.mech_type = (gss_OID)gss_mech_krb5; |
|
205 + mech_krb5.kmodName = "kmech_krb5"; |
|
206 gssint_register_mechinfo(&mech_krb5); |
|
207 |
|
208 mech_krb5.mechNameStr = "kerberos_v5_old"; |
|
209 diff --git a/src/lib/gssapi/krb5/import_sec_context.c b/src/lib/gssapi/krb5/import_sec_context.c |
|
210 --- a/src/lib/gssapi/krb5/import_sec_context.c |
|
211 +++ b/src/lib/gssapi/krb5/import_sec_context.c |
|
212 @@ -107,7 +107,6 @@ krb5_gss_import_sec_context(minor_status, interprocess_token, context_handle) |
196 krb5_free_context(context); |
213 krb5_free_context(context); |
197 return(GSS_S_FAILURE); |
214 return(GSS_S_FAILURE); |
198 } |
215 } |
199 - krb5_free_context(context); |
216 - krb5_free_context(context); |
200 |
217 |
201 ctx->mech_used = krb5_gss_convert_static_mech_oid(ctx->mech_used); |
218 ctx->mech_used = krb5_gss_convert_static_mech_oid(ctx->mech_used); |
202 |
219 |
203 diff -pur old/src/lib/gssapi/krb5/ser_sctx.c new/src/lib/gssapi/krb5/ser_sctx.c |
220 diff --git a/src/lib/gssapi/krb5/ser_sctx.c b/src/lib/gssapi/krb5/ser_sctx.c |
204 --- old/src/lib/gssapi/krb5/ser_sctx.c 2015-08-24 23:54:31.969825966 -0600 |
221 --- a/src/lib/gssapi/krb5/ser_sctx.c |
205 +++ new/src/lib/gssapi/krb5/ser_sctx.c 2015-08-24 23:53:45.847452068 -0600 |
222 +++ b/src/lib/gssapi/krb5/ser_sctx.c |
206 @@ -150,6 +150,22 @@ kg_oid_size(kcontext, arg, sizep) |
223 @@ -150,6 +150,22 @@ kg_oid_size(kcontext, arg, sizep) |
207 } |
224 } |
208 |
225 |
209 static krb5_error_code |
226 static krb5_error_code |
210 +kg_queue_externalize(kcontext, arg, buffer, lenremain) |
227 +kg_queue_externalize(kcontext, arg, buffer, lenremain) |
333 } |
350 } |
334 +#endif /* PROVIDE_KERNEL_IMPORT */ |
351 +#endif /* PROVIDE_KERNEL_IMPORT */ |
335 *sizep += required; |
352 *sizep += required; |
336 } |
353 } |
337 return(kret); |
354 return(kret); |
338 @@ -400,6 +482,8 @@ kg_ctx_externalize(kcontext, arg, buffer |
355 @@ -400,6 +482,8 @@ kg_ctx_externalize(kcontext, arg, buffer, lenremain) |
339 &bp, &remain); |
356 &bp, &remain); |
340 (void) krb5_ser_pack_int32((krb5_int32) ctx->established, |
357 (void) krb5_ser_pack_int32((krb5_int32) ctx->established, |
341 &bp, &remain); |
358 &bp, &remain); |
342 + (void) krb5_ser_pack_int32((krb5_int32) ctx->big_endian, |
359 + (void) krb5_ser_pack_int32((krb5_int32) ctx->big_endian, |
343 + &bp, &remain); |
360 + &bp, &remain); |
344 (void) krb5_ser_pack_int32((krb5_int32) ctx->have_acceptor_subkey, |
361 (void) krb5_ser_pack_int32((krb5_int32) ctx->have_acceptor_subkey, |
345 &bp, &remain); |
362 &bp, &remain); |
346 (void) krb5_ser_pack_int32((krb5_int32) ctx->seed_init, |
363 (void) krb5_ser_pack_int32((krb5_int32) ctx->seed_init, |
347 @@ -468,9 +552,10 @@ kg_ctx_externalize(kcontext, arg, buffer |
364 @@ -468,9 +552,10 @@ kg_ctx_externalize(kcontext, arg, buffer, lenremain) |
348 &bp, &remain); |
365 &bp, &remain); |
349 |
366 |
350 if (!kret && ctx->seqstate) |
367 if (!kret && ctx->seqstate) |
351 - kret = kg_seqstate_externalize(kcontext, |
368 - kret = kg_seqstate_externalize(kcontext, |
352 + kret = kg_queue_externalize(kcontext, |
369 + kret = kg_queue_externalize(kcontext, |
354 |
371 |
355 +#if 0 /* PROVIDE_KERNEL_IMPORT */ |
372 +#if 0 /* PROVIDE_KERNEL_IMPORT */ |
356 if (!kret) |
373 if (!kret) |
357 kret = krb5_externalize_opaque(kcontext, |
374 kret = krb5_externalize_opaque(kcontext, |
358 KV5M_CONTEXT, |
375 KV5M_CONTEXT, |
359 @@ -482,6 +567,7 @@ kg_ctx_externalize(kcontext, arg, buffer |
376 @@ -482,6 +567,7 @@ kg_ctx_externalize(kcontext, arg, buffer, lenremain) |
360 KV5M_AUTH_CONTEXT, |
377 KV5M_AUTH_CONTEXT, |
361 (krb5_pointer) ctx->auth_context, |
378 (krb5_pointer) ctx->auth_context, |
362 &bp, &remain); |
379 &bp, &remain); |
363 +#endif /* PROVIDE_KERNEL_IMPORT */ |
380 +#endif /* PROVIDE_KERNEL_IMPORT */ |
364 |
381 |
365 if (!kret) |
382 if (!kret) |
366 kret = krb5_ser_pack_int32((krb5_int32) ctx->proto, |
383 kret = krb5_ser_pack_int32((krb5_int32) ctx->proto, |
367 @@ -501,6 +587,7 @@ kg_ctx_externalize(kcontext, arg, buffer |
384 @@ -501,6 +587,7 @@ kg_ctx_externalize(kcontext, arg, buffer, lenremain) |
368 if (!kret) |
385 if (!kret) |
369 kret = krb5_ser_pack_int32((krb5_int32) ctx->cred_rcache, |
386 kret = krb5_ser_pack_int32((krb5_int32) ctx->cred_rcache, |
370 &bp, &remain); |
387 &bp, &remain); |
371 +#if 0 /* PROVIDE_KERNEL_IMPORT */ |
388 +#if 0 /* PROVIDE_KERNEL_IMPORT */ |
372 if (!kret) { |
389 if (!kret) { |
373 krb5_int32 i = 0; |
390 krb5_int32 i = 0; |
374 |
391 |
375 @@ -534,6 +621,7 @@ kg_ctx_externalize(kcontext, arg, buffer |
392 @@ -534,6 +621,7 @@ kg_ctx_externalize(kcontext, arg, buffer, lenremain) |
376 &remain); |
393 &remain); |
377 } |
394 } |
378 } |
395 } |
379 +#endif /* PROVIDE_KERNEL_IMPORT */ |
396 +#endif /* PROVIDE_KERNEL_IMPORT */ |
380 /* trailer */ |
397 /* trailer */ |
381 if (!kret) |
398 if (!kret) |
382 kret = krb5_ser_pack_int32(KG_CONTEXT, &bp, &remain); |
399 kret = krb5_ser_pack_int32(KG_CONTEXT, &bp, &remain); |
383 @@ -611,6 +699,8 @@ kg_ctx_internalize(kcontext, argp, buffe |
400 @@ -611,6 +699,8 @@ kg_ctx_internalize(kcontext, argp, buffer, lenremain) |
384 (void) krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
401 (void) krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
385 ctx->established = (int) ibuf; |
402 ctx->established = (int) ibuf; |
386 (void) krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
403 (void) krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
387 + ctx->big_endian = (int) ibuf; |
404 + ctx->big_endian = (int) ibuf; |
388 + (void) krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
405 + (void) krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
389 ctx->have_acceptor_subkey = (int) ibuf; |
406 ctx->have_acceptor_subkey = (int) ibuf; |
390 (void) krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
407 (void) krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
391 ctx->seed_init = (int) ibuf; |
408 ctx->seed_init = (int) ibuf; |
392 @@ -695,12 +785,13 @@ kg_ctx_internalize(kcontext, argp, buffe |
409 @@ -695,12 +785,13 @@ kg_ctx_internalize(kcontext, argp, buffer, lenremain) |
393 } |
410 } |
394 |
411 |
395 if (!kret) { |
412 if (!kret) { |
396 - kret = kg_seqstate_internalize(kcontext, &ctx->seqstate, |
413 - kret = kg_seqstate_internalize(kcontext, &ctx->seqstate, |
397 + kret = kg_queue_internalize(kcontext, &ctx->seqstate, |
414 + kret = kg_queue_internalize(kcontext, &ctx->seqstate, |
402 |
419 |
403 +#if 0 /* PROVIDE_KERNEL_IMPORT */ |
420 +#if 0 /* PROVIDE_KERNEL_IMPORT */ |
404 if (!kret) |
421 if (!kret) |
405 kret = krb5_internalize_opaque(kcontext, |
422 kret = krb5_internalize_opaque(kcontext, |
406 KV5M_CONTEXT, |
423 KV5M_CONTEXT, |
407 @@ -712,6 +803,7 @@ kg_ctx_internalize(kcontext, argp, buffe |
424 @@ -712,6 +803,7 @@ kg_ctx_internalize(kcontext, argp, buffer, lenremain) |
408 KV5M_AUTH_CONTEXT, |
425 KV5M_AUTH_CONTEXT, |
409 (krb5_pointer *) &ctx->auth_context, |
426 (krb5_pointer *) &ctx->auth_context, |
410 &bp, &remain); |
427 &bp, &remain); |
411 +#endif /* PROVIDE_KERNEL_IMPORT */ |
428 +#endif /* PROVIDE_KERNEL_IMPORT */ |
412 |
429 |
413 if (!kret) |
430 if (!kret) |
414 kret = krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
431 kret = krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
415 @@ -731,6 +823,7 @@ kg_ctx_internalize(kcontext, argp, buffe |
432 @@ -731,6 +823,7 @@ kg_ctx_internalize(kcontext, argp, buffer, lenremain) |
416 if (!kret) |
433 if (!kret) |
417 kret = krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
434 kret = krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
418 ctx->cred_rcache = ibuf; |
435 ctx->cred_rcache = ibuf; |
419 +#if 0 /* PROVIDE_KERNEL_IMPORT */ |
436 +#if 0 /* PROVIDE_KERNEL_IMPORT */ |
420 /* authdata */ |
437 /* authdata */ |
421 if (!kret) |
438 if (!kret) |
422 kret = krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
439 kret = krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
423 @@ -769,6 +862,7 @@ kg_ctx_internalize(kcontext, argp, buffe |
440 @@ -769,6 +862,7 @@ kg_ctx_internalize(kcontext, argp, buffer, lenremain) |
424 kret = 0; |
441 kret = 0; |
425 } |
442 } |
426 } |
443 } |
427 +#endif /* PROVIDE_KERNEL_IMPORT */ |
444 +#endif /* PROVIDE_KERNEL_IMPORT */ |
428 /* Get trailer */ |
445 /* Get trailer */ |
429 if (!kret) |
446 if (!kret) |
430 kret = krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
447 kret = krb5_ser_unpack_int32(&ibuf, &bp, &remain); |
431 --- krb5-1.13.3/src/lib/gssapi/generic/deps |
|
432 +++ ./deps |
|
433 @@ -64,6 +64,13 @@ util_errmap.so util_errmap.po $(OUTPRE)u |
|
434 $(top_srcdir)/include/k5-thread.h $(top_srcdir)/include/krb5.h \ |
|
435 errmap.h gssapiP_generic.h gssapi_err_generic.h gssapi_ext.h \ |
|
436 gssapi_generic.h util_errmap.c |
|
437 +util_ordering.so util_ordering.po $(OUTPRE)util_ordering.$(OBJEXT): \ |
|
438 + $(BUILDTOP)/include/autoconf.h $(BUILDTOP)/include/gssapi/gssapi.h \ |
|
439 + $(BUILDTOP)/include/gssapi/gssapi_alloc.h $(COM_ERR_DEPS) \ |
|
440 + $(top_srcdir)/include/k5-buf.h $(top_srcdir)/include/k5-platform.h \ |
|
441 + $(top_srcdir)/include/k5-thread.h gssapiP_generic.h \ |
|
442 + gssapi_err_generic.h gssapi_ext.h gssapi_generic.h \ |
|
443 + util_ordering.c |
|
444 util_set.so util_set.po $(OUTPRE)util_set.$(OBJEXT): \ |
|
445 $(BUILDTOP)/include/autoconf.h $(BUILDTOP)/include/gssapi/gssapi.h \ |
|
446 $(BUILDTOP)/include/gssapi/gssapi_alloc.h $(COM_ERR_DEPS) \ |
|