1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
|
Tue Mar 7 21:40:18 1995 Keith Vetter (keithv@fusion.com)
* Makefile.in: changed library name for the PC.
Wed Mar 1 18:00:00 1995 Keith Vetter (keithv@fusion.com)
* asn1_decode.c, asn1_encode.c, ans1_k_encode.c, asn1_misc.c: 16 vs
32 bit casts.
* asn1_k_encode.h: added missing INTERFACE to a prototype
Tue Feb 28 00:32:48 1995 John Gilmore (gnu at toad.com)
* asn1_decode.h, asn1_encode.h, asn1_get.h, asn1_k_decode.h,
asn1_k_encode.h, asn1_make.h asn1_misc.h, asn1_buf.h, glue2.c,
krb5_decode.c, krb5_encode.c, krbasn1.h: Avoid <krb5/...> includes.
Tue Feb 21 12:00:00 1995 Keith Vetter (keithv@fusion.com)
* Makefile.in: made to work for the PC
* *.c, *.h: added windows INTERFACE keyword to all functions
Tue Feb 21 20:11:30 1995 Theodore Y. Ts'o (tytso@dcl)
* asn1_k_decode.h(asn1_decode_kvno, asn1_decode_krb_safe_body):
Removed duplicate declarations.
* asn1_k_decode.h(asn1_decode_passwdsequence,
asn1_decode_sequence_of_passwdsequence): Added missing
declarations.
Thu Feb 16 19:29:59 1995 Theodore Y. Ts'o (tytso@dcl)
* asn1_k_encode.h(asn1_encode_enc_kdc_rep_part): Remove duplicate
declaration of asn1_encode_enc_kdc_rep_part.
Fri Feb 10 15:30:45 1995 Theodore Y. Ts'o <tytso@dcl>
* asn1_k_encode.c: Remove #include of krb5_encode.h (it's not
needed).
* krb5_encode.h:
* krb5_decode.h: These files removed; their contents have been
poured into include/krb5/asn1.h.
* Makefile.isode.in: Removed.
* process.perl: Removed (isode cruft).
* Makefile.sane.in: Removed; contents moved to Makefile.in
* configure.in:
* Makefile.in: Removed isode croft. (Makefile.in was
Makefile.sane.in)
Fri Feb 3 01:02:43 1995 John Gilmore <gnu@cygnus.com>
* asn1_decode_k.c => asn1_k_decode.c
* asn1_decode_k.h => asn1_k_decode.h
* asn1_encode_k.c => asn1_k_encode.c
* asn1_encode_k.h => asn1_k_encode.h
* Makefile.sane.in, krb5_decode.c, krb5_encode.c,
asn1_k_encode.c, asn1_k_decode.c: updated to match.
Fri Nov 18 16:24:35 1994 Theodore Y. Ts'o (tytso@dcl)
* krb5_decode.c (decode_krb5_encryption_key): Add magic number to
keyblock structure.
Thu Nov 10 21:51:55 1994 Theodore Y. Ts'o (tytso@dcl)
* asn1_decode_k.c (asn1_decode_principal_name,
asn1_decode_checksum, asn1_decode_encrypted_data,
asn1_decode_transited_encoding,
asn1_decode_enc_kdc_rep_part, asn1_decode_ticket,
asn1_decode_kdc_req, asn1_decode_kdc_req_body,
asn1_decode_safe_body, asn1_decode_host_address,
asn1_decode_kdc_rep, asn1_decode_authdata_elt,
asn1_decode_krb_cred_info, asn1_decode_pa_data,
asn1_decode_last_req_entry): Initialize magic number field
in the relevant structures.
* asn1_decode_k.c (asn1_decode_encryption_key): Add appropriate
magic number and encryption type.
Wed Nov 2 23:10:36 1994 Theodore Y. Ts'o (tytso@dcl)
* configure.in: Add WITH_CPPOPTS since we're not using
CONFIG_RULES (yet).
Thu Oct 27 22:32:13 1994 Theodore Y. Ts'o (tytso@dcl)
* Makefile.sane.in: Remove duplicate definitions for DEFS, CC,
CCOPTS, and LIBS. (now defined in config/pre.in).
Wed Oct 19 10:51:16 1994 Theodore Y. Ts'o (tytso@maytag)
* err2kerr.c (KRB5_KRB__ERROR2krb5_error): The e_data field
wasn't being decoded when it should have been.
* qbuf2data.c (qbuf2krb5_data): Set magic number field to zero.
* asn1_decode_k.c (asn1_decode_kdc_req_body): If the authorization
field is not present, fill in the authorization data
fields with all zeros. Don't set kvno (that's *key*
version number, not *Kerberos* version number) to 5.
Tue Oct 18 23:07:20 1994 Theodore Y. Ts'o (tytso@maytag)
* tgrq2ktgrq.c (KRB5_KDC__REQ__BODY2krb5_kdc_req): Allow the
service principal to be optional.
* ktgrq2tgrq.c (krb5_kdc_req2KRB5_KDC__REQ__BODY): Allow the
server principal to be optional.
Fri Oct 7 15:05:35 1994 Theodore Y. Ts'o (tytso@dcl)
* Makefile.isode.in: Add -DKRB5_USE_ISODE so that include files
are right.
Tue Oct 4 16:13:45 1994 Theodore Y. Ts'o (tytso@dcl)
* asn1_decode_k.c (asn1_decode_kerberos_time): Don't assume that
krb5_timestamp and time_t are the same.
Thu Sep 29 14:26:34 1994 Theodore Y. Ts'o (tytso@dcl)
* asn1buf.c (asn1buf_remove_octetstring, asn1buf_remove_charstring):
If the length is zero, don't call calloc(0,1); instead
return a NULL pointer. This way, we get consistent
behavior even on systems where malloc(0) returns a
non-null pointer.
Tue Sep 27 23:31:50 1994 Theodore Y. Ts'o (tytso@dcl)
* krb5_encode.c (encode_krb5_enc_kdc_rep_part): = should have been
== in commented-out code. Get it right for the future...
Wed Sep 21 00:18:12 1994 Theodore Y. Ts'o (tytso@dcl)
* krb5_decode.c (decode_krb5_authdata): Initialize variable where
the authdata is returned to NULL first. (Caller shouldn't
have to do this.)
* asn1_decode.c (asn1_decode_generaltime): Plug memory leak caused
by not freeing temporary string.
Wed Aug 17 16:07:06 1994 Theodore Y. Ts'o (tytso at tsx-11)
* krb5_encode.c (encode_krb5_enc_kdc_rep_part): Older versions of
the Kerberos are always sending the enc_kdc_rep_part structure
with an application tag of #26, instead of using the application
tag of #25 (AS REP) or #26 (AS REP) as necessary. Worse yet, they
will only accept a tag of #26, so we need to follow this for
backwards compatibility. #defining KRB5_ENCKRB5KDCREPPART_COMPAT
will preserve this wrong (but compatible) behavior.
* krb5_decode.c (decode_krb5_enc_kdc_rep_part): Record the tag
value of the ASN.1 sequence in the rkb5_enc_kdc_rep structure.
Allow both tag #25 and #26 (although old software was always
sending tag #26).
* krb5_decode.c (decode_krb5_as_rep, decode_krb5_tgs_rep,
decode_krb5_ap_req, decode_krb5_ap_rep, decode_krb5_as_req,
decode_krb5_tgs_req, decode_krb5_safe, decode_krb5_priv,
decode_krb5_cred, decode_krb5_error): Only check the ASN.1 message
type if KRB5_MSGTYPE_STRICT is defined. "Be strict in what you
send out, liberal in what you receive..."
* asn1_decode_k.c (asn1_decode_msgtype): Stop checking the
validity of the message type here. Each routine that calls
asn1_decode_msgtype is checking the message type anyway, so it's
just duplicated effort.
Sat Aug 13 03:40:16 1994 Mark Eichin (eichin@perdiem)
* krbasn1.h: include stdlib.h for calloc declaration (if we can)
Thu Aug 11 00:38:10 1994 Theodore Y. Ts'o (tytso@dcl)
* asn1_encode_k.c (asn1_encode_kdc_req): Add extra argument which
specifies the msg_type of the encoding; don't use req->msg_type
which is generally not set right. (That output is only as a place
to stash the msg_type from decode). All callers updated.
* asn1_encode_k.c (asn1_encode_kdc_rep): Add extra argument which
specifies the msg_type of the encoding; don't use rep->msg_type
which is generally not set right. (That output is only as a place
to stash the msg_type from decode). All callers updated.
* asn1_encode_k.c (asn1_encode_msgtype): Routine removed. Not
really necessary, since a msg_type is really just an integer.
Thu Aug 4 13:19:14 1994 Tom Yu (tlyu@dragons-lair)
* asn1_decode_k.c (asn1_decode_sequence_of_enctype): fix typo
Tue Aug 2 07:22:57 1994 Tom Yu (tlyu@dragons-lair)
* asn1_decode_k.c (asn1_decode_sequence_of_enctype): more fixing
of realloc(NULL) returning NULL
Sat Jul 23 08:48:18 1994 Tom Yu (tlyu@dragons-lair)
* asn1buf.h: include ext-proto.h now to avoid type warnings
Sat Jul 16 00:19:18 1994 Tom Yu (tlyu at dragons-lair)
* asn1_encode_k.c (asn1_encode_transited_encoding): whoops don't
bomb if val->tr_contents.dlength == 0
* asn1_decode_k.c (asn1_decode_encrypted_data): oops looks like
Harry made a brain fart here.... default value for kvno was 5, not
0.
Thu Jul 14 11:37:59 1994 Theodore Y. Ts'o (tytso at tsx-11)
* asn1_*.[ch]:
* krb5_*.[ch]: Add MIT Copyright notices.
Thu Jul 14 01:26:22 1994 Tom Yu (tlyu at dragons-lair)
* asn1_encode_k.c (asn1_encode_pa_data): oops still check NULL if
length != 0
Sat Jul 9 00:26:48 1994 Tom Yu (tlyu at dragons-lair)
* asn1_encode_k.c (asn1_encode_pa_data): the contents field of a
krb5_pa_data structure can be NULL (e.g.
salt_type==KRB5_KDB_SALTTYPE_V4), and the encoder was treating
this as a missing required field
Fri Jul 8 17:32:29 1994 Tom Yu (tlyu at dragons-lair)
* asn1_decode_k.c: yet another instance of the SunOS realloc bug
* asn1buf.c: whee SunOS realloc of a NULL pointer returns NULL.
sigh.
Wed Jul 6 13:21:35 1994 Mark Eichin (eichin@cygnus.com)
* an1buf.c: Harry saves vs. Unix again. Making sure that anything
that can call calloc with a zero argument won't return ENOMEM if
calloc retuns NULL in this case. This was prompted by breakage
under linux.
* asn1_encode.c (asn1_encode_generaltime): don't use strftime on
the output of gmtime -- under Solaris, it mutates it! (seems to be
doing a timezone offset.) Besides, sprintf is quite sufficient.
Also rename local variable time to gtime to avoid name collision.
(asn1_decode_generaltime): the fixed-point method below doesn't
actually work because it doesn't handle the current timezone
offset. Simpler, and more general -- always call gmt_mktime, which
is now provided in lib/krb5/os/gmt_mktime.c.
Sun Jul 3 04:43:42 1994 Tom Yu (tlyu at dragons-lair)
* asn1_encode_k.h:
* asn1buf.c:
* krbasn1.h: punt stdlib.h in favor of stdio.h. It looks like
Harry was assuming that NULL gets defined in stdlib instead of
stdio
Fri Jul 1 13:03:39 1994 Mark Eichin (eichin@cygnus.com)
* asn1_encode_k.c (asn1_encode_msgtype): comment out krb5_msgtype
decl of val arg, use int (to match prototype in header.) Throw out
OLDDECLARG, DECLARG, and use old-style definition to match style
of the rest of the code.
(asn1_encode_ui_4): comment out krb5_ui_4 decl of val arg, use int
(to match prototype in header.) Also rewrote definition header.
* asn1_decode.c (asn1_decode_generaltime): tm_gmtoff is *not* in
System V either. The only portable way to find the delta is to
subtract gmtime from localtime at a fixed point (epoch+24hours is
an easy way to simplify the arithmetic.)
HAVE_GMTOFF: might someday be defined, but for now merely labels
what the code original did/was intended to do.
* configure.in: redo "autoconf frobbage" since the old way didn't
work with srcdir. Now, AC_OUTPUT generates all three Makefiles,
and ISODEMAKEFILE is subst'ed in to be either Makefile.isode or
Makefile.sane. EXTRA_RULES_IN is used to append the extra stuff to
the end of the "real" one of the two.
* configure.in: krb5_encode.h and krb5_encode.h are source, not
generated, so use CopySrcHeader instead.
Tue Jun 28 19:57:28 1994 Tom Yu (tlyu at dragons-lair)
* configure.in:
* Makefile.in: autoconf frobbage
|