1 mydir=lib$(S)krb5$(S)krb
2 BUILDTOP=$(REL)..$(S)..$(S)..
3 LOCALINCLUDES = -I$(srcdir)/../os -I$(top_srcdir)
4 DEFINES=-DLIBDIR=\"$(KRB5_LIBDIR)\" -DDYNOBJEXT=\"$(DYNOBJEXT)\"
6 # Like RUN_TEST, but use t_krb5.conf from this directory.
7 RUN_TEST_LOCAL_CONF=$(RUN_SETUP) KRB5_CONFIG=$(srcdir)/t_krb5.conf LC_ALL=C \
10 ##DOS##BUILDTOP = ..\..\..
12 ##DOS##OBJFILE=..\$(OUTPRE)$(PREFIXDIR).lst
128 OBJS= $(OUTPRE)addr_comp.$(OBJEXT) \
129 $(OUTPRE)addr_order.$(OBJEXT) \
130 $(OUTPRE)addr_srch.$(OBJEXT) \
131 $(OUTPRE)allow_weak.$(OBJEXT) \
132 $(OUTPRE)appdefault.$(OBJEXT) \
133 $(OUTPRE)ai_authdata.$(OBJEXT) \
134 $(OUTPRE)auth_con.$(OBJEXT) \
135 $(OUTPRE)cammac_util.$(OBJEXT) \
136 $(OUTPRE)authdata.$(OBJEXT) \
137 $(OUTPRE)authdata_exp.$(OBJEXT) \
138 $(OUTPRE)authdata_enc.$(OBJEXT) \
139 $(OUTPRE)authdata_dec.$(OBJEXT) \
140 $(OUTPRE)bld_pr_ext.$(OBJEXT) \
141 $(OUTPRE)bld_princ.$(OBJEXT) \
142 $(OUTPRE)chk_trans.$(OBJEXT) \
143 $(OUTPRE)chpw.$(OBJEXT) \
144 $(OUTPRE)conv_creds.$(OBJEXT) \
145 $(OUTPRE)conv_princ.$(OBJEXT) \
146 $(OUTPRE)copy_addrs.$(OBJEXT) \
147 $(OUTPRE)copy_auth.$(OBJEXT) \
148 $(OUTPRE)copy_athctr.$(OBJEXT) \
149 $(OUTPRE)copy_cksum.$(OBJEXT) \
150 $(OUTPRE)copy_creds.$(OBJEXT) \
151 $(OUTPRE)copy_data.$(OBJEXT) \
152 $(OUTPRE)copy_key.$(OBJEXT) \
153 $(OUTPRE)copy_princ.$(OBJEXT) \
154 $(OUTPRE)copy_tick.$(OBJEXT) \
155 $(OUTPRE)cp_key_cnt.$(OBJEXT) \
156 $(OUTPRE)decode_kdc.$(OBJEXT) \
157 $(OUTPRE)decrypt_tk.$(OBJEXT) \
158 $(OUTPRE)deltat.$(OBJEXT) \
159 $(OUTPRE)enc_helper.$(OBJEXT) \
160 $(OUTPRE)enc_keyhelper.$(OBJEXT) \
161 $(OUTPRE)encode_kdc.$(OBJEXT) \
162 $(OUTPRE)encrypt_tk.$(OBJEXT) \
163 $(OUTPRE)etype_list.$(OBJEXT) \
164 $(OUTPRE)fast.$(OBJEXT) \
165 $(OUTPRE)fwd_tgt.$(OBJEXT) \
166 $(OUTPRE)gc_via_tkt.$(OBJEXT) \
167 $(OUTPRE)gen_seqnum.$(OBJEXT) \
168 $(OUTPRE)gen_subkey.$(OBJEXT) \
169 $(OUTPRE)gen_save_subkey.$(OBJEXT) \
170 $(OUTPRE)get_creds.$(OBJEXT) \
171 $(OUTPRE)get_etype_info.$(OBJEXT) \
172 $(OUTPRE)get_in_tkt.$(OBJEXT) \
173 $(OUTPRE)gic_keytab.$(OBJEXT) \
174 $(OUTPRE)gic_opt.$(OBJEXT) \
175 $(OUTPRE)gic_pwd.$(OBJEXT) \
176 $(OUTPRE)in_tkt_sky.$(OBJEXT) \
177 $(OUTPRE)init_ctx.$(OBJEXT) \
178 $(OUTPRE)copy_ctx.$(OBJEXT) \
179 $(OUTPRE)init_keyblock.$(OBJEXT) \
180 $(OUTPRE)kdc_rep_dc.$(OBJEXT) \
181 $(OUTPRE)kerrs.$(OBJEXT) \
182 $(OUTPRE)kfree.$(OBJEXT) \
183 $(OUTPRE)libdef_parse.$(OBJEXT) \
184 $(OUTPRE)mk_cred.$(OBJEXT) \
185 $(OUTPRE)mk_error.$(OBJEXT) \
186 $(OUTPRE)mk_priv.$(OBJEXT) \
187 $(OUTPRE)mk_rep.$(OBJEXT) \
188 $(OUTPRE)mk_req.$(OBJEXT) \
189 $(OUTPRE)mk_req_ext.$(OBJEXT) \
190 $(OUTPRE)mk_safe.$(OBJEXT) \
191 $(OUTPRE)pac.$(OBJEXT) \
192 $(OUTPRE)pac_sign.$(OBJEXT) \
193 $(OUTPRE)padata.$(OBJEXT) \
194 $(OUTPRE)parse.$(OBJEXT) \
195 $(OUTPRE)parse_host_string.$(OBJEXT) \
196 $(OUTPRE)plugin.$(OBJEXT) \
197 $(OUTPRE)pr_to_salt.$(OBJEXT) \
198 $(OUTPRE)preauth2.$(OBJEXT) \
199 $(OUTPRE)preauth_ec.$(OBJEXT) \
200 $(OUTPRE)preauth_encts.$(OBJEXT) \
201 $(OUTPRE)preauth_otp.$(OBJEXT) \
202 $(OUTPRE)preauth_pkinit.$(OBJEXT) \
203 $(OUTPRE)preauth_sam2.$(OBJEXT) \
204 $(OUTPRE)princ_comp.$(OBJEXT) \
205 $(OUTPRE)privsafe.$(OBJEXT) \
206 $(OUTPRE)random_str.$(OBJEXT) \
207 $(OUTPRE)rd_cred.$(OBJEXT) \
208 $(OUTPRE)rd_error.$(OBJEXT) \
209 $(OUTPRE)rd_priv.$(OBJEXT) \
210 $(OUTPRE)rd_rep.$(OBJEXT) \
211 $(OUTPRE)rd_req.$(OBJEXT) \
212 $(OUTPRE)rd_req_dec.$(OBJEXT) \
213 $(OUTPRE)rd_safe.$(OBJEXT) \
214 $(OUTPRE)recvauth.$(OBJEXT) \
215 $(OUTPRE)response_items.$(OBJEXT) \
216 $(OUTPRE)s4u_creds.$(OBJEXT) \
217 $(OUTPRE)sendauth.$(OBJEXT) \
218 $(OUTPRE)send_tgs.$(OBJEXT) \
219 $(OUTPRE)ser_actx.$(OBJEXT) \
220 $(OUTPRE)ser_adata.$(OBJEXT) \
221 $(OUTPRE)ser_addr.$(OBJEXT) \
222 $(OUTPRE)ser_auth.$(OBJEXT) \
223 $(OUTPRE)ser_cksum.$(OBJEXT) \
224 $(OUTPRE)ser_ctx.$(OBJEXT) \
225 $(OUTPRE)ser_key.$(OBJEXT) \
226 $(OUTPRE)ser_princ.$(OBJEXT) \
227 $(OUTPRE)serialize.$(OBJEXT) \
228 $(OUTPRE)set_realm.$(OBJEXT) \
229 $(OUTPRE)sname_match.$(OBJEXT) \
230 $(OUTPRE)srv_dec_tkt.$(OBJEXT) \
231 $(OUTPRE)srv_rcache.$(OBJEXT) \
232 $(OUTPRE)str_conv.$(OBJEXT) \
233 $(OUTPRE)tgtname.$(OBJEXT) \
234 $(OUTPRE)unparse.$(OBJEXT) \
235 $(OUTPRE)val_renew.$(OBJEXT) \
236 $(OUTPRE)valid_times.$(OBJEXT) \
237 $(OUTPRE)vfy_increds.$(OBJEXT) \
238 $(OUTPRE)vic_opt.$(OBJEXT) \
239 $(OUTPRE)walk_rtree.$(OBJEXT)
241 SRCS= $(srcdir)/addr_comp.c \
242 $(srcdir)/addr_order.c \
243 $(srcdir)/addr_srch.c \
244 $(srcdir)/appdefault.c \
245 $(srcdir)/auth_con.c \
246 $(srcdir)/cammac_util.c \
247 $(srcdir)/ai_authdata.c \
248 $(srcdir)/authdata.c \
249 $(srcdir)/authdata_exp.c \
250 $(srcdir)/authdata_enc.c \
251 $(srcdir)/authdata_dec.c \
252 $(srcdir)/bld_pr_ext.c \
253 $(srcdir)/bld_princ.c \
255 $(srcdir)/chk_trans.c \
257 $(srcdir)/conv_creds.c \
258 $(srcdir)/conv_princ.c \
259 $(srcdir)/copy_addrs.c \
260 $(srcdir)/copy_auth.c \
261 $(srcdir)/copy_athctr.c \
262 $(srcdir)/copy_cksum.c \
263 $(srcdir)/copy_creds.c \
264 $(srcdir)/copy_data.c \
265 $(srcdir)/copy_key.c \
266 $(srcdir)/copy_princ.c \
267 $(srcdir)/copy_tick.c \
268 $(srcdir)/cp_key_cnt.c \
269 $(srcdir)/decode_kdc.c \
270 $(srcdir)/decrypt_tk.c \
272 $(srcdir)/enc_helper.c \
273 $(srcdir)/enc_keyhelper.c \
274 $(srcdir)/encode_kdc.c \
275 $(srcdir)/encrypt_tk.c \
276 $(srcdir)/etype_list.c \
278 $(srcdir)/fwd_tgt.c \
279 $(srcdir)/gc_via_tkt.c \
280 $(srcdir)/gen_seqnum.c \
281 $(srcdir)/gen_subkey.c \
282 $(srcdir)/gen_save_subkey.c \
283 $(srcdir)/get_creds.c \
284 $(srcdir)/get_etype_info.c \
285 $(srcdir)/get_in_tkt.c \
286 $(srcdir)/gic_keytab.c \
287 $(srcdir)/gic_opt.c \
288 $(srcdir)/gic_pwd.c \
289 $(srcdir)/in_tkt_sky.c \
290 $(srcdir)/init_ctx.c \
291 $(srcdir)/copy_ctx.c \
292 $(srcdir)/init_keyblock.c \
293 $(srcdir)/kdc_rep_dc.c \
296 $(srcdir)/libdef_parse.c \
297 $(srcdir)/mk_cred.c \
298 $(srcdir)/mk_error.c \
299 $(srcdir)/mk_priv.c \
302 $(srcdir)/mk_req_ext.c \
303 $(srcdir)/mk_safe.c \
305 $(srcdir)/pac_sign.c \
308 $(srcdir)/parse_host_string.c \
310 $(srcdir)/pr_to_salt.c \
311 $(srcdir)/preauth2.c \
312 $(srcdir)/preauth_ec.c \
313 $(srcdir)/preauth_encts.c \
314 $(srcdir)/preauth_otp.c \
315 $(srcdir)/preauth_pkinit.c \
316 $(srcdir)/preauth_sam2.c \
317 $(srcdir)/princ_comp.c \
318 $(srcdir)/privsafe.c \
319 $(srcdir)/random_str.c \
320 $(srcdir)/rd_cred.c \
321 $(srcdir)/rd_error.c \
322 $(srcdir)/rd_priv.c \
325 $(srcdir)/rd_req_dec.c \
326 $(srcdir)/rd_safe.c \
327 $(srcdir)/recvauth.c \
328 $(srcdir)/response_items.c \
329 $(srcdir)/s4u_creds.c \
330 $(srcdir)/sendauth.c \
331 $(srcdir)/send_tgs.c \
332 $(srcdir)/ser_actx.c \
333 $(srcdir)/ser_adata.c \
334 $(srcdir)/ser_addr.c \
335 $(srcdir)/ser_auth.c \
336 $(srcdir)/ser_cksum.c \
337 $(srcdir)/ser_ctx.c \
338 $(srcdir)/ser_key.c \
339 $(srcdir)/ser_princ.c \
340 $(srcdir)/serialize.c \
341 $(srcdir)/set_realm.c \
342 $(srcdir)/sname_match.c \
343 $(srcdir)/srv_dec_tkt.c \
344 $(srcdir)/srv_rcache.c \
345 $(srcdir)/str_conv.c \
346 $(srcdir)/t_ad_fx_armor.c \
347 $(srcdir)/tgtname.c \
348 $(srcdir)/unparse.c \
349 $(srcdir)/val_renew.c \
350 $(srcdir)/valid_times.c \
351 $(srcdir)/vfy_increds.c \
352 $(srcdir)/vic_opt.c \
353 $(srcdir)/walk_rtree.c \
354 $(srcdir)/t_walk_rtree.c \
357 $(srcdir)/t_deltat.c \
358 $(srcdir)/t_expand.c \
359 $(srcdir)/t_get_etype_info.c \
361 $(srcdir)/t_parse_host_string.c \
362 $(srcdir)/t_princ.c \
363 $(srcdir)/t_etypes.c \
364 $(srcdir)/t_expire_warn.c \
365 $(srcdir)/t_authdata.c \
366 $(srcdir)/t_cc_config.c \
367 $(srcdir)/t_copy_context.c \
368 $(srcdir)/t_in_ccache.c \
369 $(srcdir)/t_response_items.c \
370 $(srcdir)/t_sname_match.c \
371 $(srcdir)/t_valid_times.c \
372 $(srcdir)/t_vfy_increds.c
374 # Someday, when we have a "maintainer mode", do this right:
376 BISONFLAGS= # -v -> .output; -d -> .h
377 DELTAT_DEP=@MAINT@ x-deltat.y
380 $(srcdir)/deltat.c : $(DELTAT_DEP)
381 (cd $(srcdir) && $(BISON) $(BISONFLAGS) -o deltat.c x-deltat.y)
383 ##DOS##LIBOBJS = $(OBJS)
385 all-unix: all-libobjs
386 clean-unix:: clean-libobjs
388 COMERRLIB=$(TOPLIBD)/libcom_err.a
390 T_WALK_RTREE_OBJS= t_walk_rtree.o
392 T_KERB_OBJS= t_kerb.o conv_princ.o unparse.o set_realm.o str_conv.o
394 T_SER_OBJS= t_ser.o ser_actx.o ser_adata.o ser_addr.o ser_auth.o ser_cksum.o \
395 ser_ctx.o ser_key.o ser_princ.o serialize.o authdata.o pac.o \
396 pac_sign.o ai_authdata.o authdata_exp.o copy_data.o etype_list.o
398 T_DELTAT_OBJS= t_deltat.o deltat.o
400 T_PAC_OBJS= t_pac.o pac.o pac_sign.o copy_data.o
402 T_PRINC_OBJS= t_princ.o
404 T_ETYPES_OBJS= t_etypes.o init_ctx.o etype_list.o plugin.o
406 T_PARSE_HOST_STRING_OBJS= t_parse_host_string.o parse_host_string.o
408 t_walk_rtree: $(T_WALK_RTREE_OBJS) $(KRB5_BASE_DEPLIBS)
409 $(CC_LINK) -o t_walk_rtree $(T_WALK_RTREE_OBJS) $(KRB5_BASE_LIBS)
410 t_ad_fx_armor: t_ad_fx_armor.o
411 $(CC_LINK) -o $@ t_ad_fx_armor.o $(KRB5_BASE_LIBS)
413 t_authdata: t_authdata.o $(KRB5_BASE_DEPLIBS)
414 $(CC_LINK) -o $@ t_authdata.o $(KRB5_BASE_LIBS)
416 t_kerb: $(T_KERB_OBJS) $(KRB5_BASE_DEPLIBS)
417 $(CC_LINK) -o t_kerb $(T_KERB_OBJS) $(KRB5_BASE_LIBS)
419 t_ser: $(T_SER_OBJS) $(KRB5_BASE_DEPLIBS)
420 $(CC_LINK) -o t_ser $(T_SER_OBJS) $(KRB5_BASE_LIBS)
422 t_deltat : $(T_DELTAT_OBJS) $(SUPPORT_DEPLIB)
423 $(CC_LINK) -o t_deltat $(T_DELTAT_OBJS) $(SUPPORT_LIB)
425 T_EXPAND_OBJS=t_expand.o
426 t_expand.o : t_expand.c
427 t_expand : $(T_EXPAND_OBJS) $(KRB5_BASE_DEPLIBS)
428 $(CC_LINK) -o t_expand $(T_EXPAND_OBJS) $(KRB5_BASE_LIBS)
430 t_pac: $(T_PAC_OBJS) $(KRB5_BASE_DEPLIBS)
431 $(CC_LINK) -o t_pac $(T_PAC_OBJS) $(KRB5_BASE_LIBS)
433 t_princ: $(T_PRINC_OBJS) $(KRB5_BASE_DEPLIBS)
434 $(CC_LINK) -o t_princ $(T_PRINC_OBJS) $(KRB5_BASE_LIBS)
436 t_etypes: $(T_ETYPES_OBJS) $(KRB5_BASE_DEPLIBS)
437 $(CC_LINK) -o t_etypes $(T_ETYPES_OBJS) $(KRB5_BASE_LIBS)
439 t_parse_host_string: $(T_PARSE_HOST_STRING_OBJS) $(KRB5_BASE_DEPLIBS)
440 $(CC_LINK) -o $@ $(T_PARSE_HOST_STRING_OBJS) $(CMOCKA_LIBS) \
443 t_expire_warn: t_expire_warn.o $(KRB5_BASE_DEPLIBS)
444 $(CC_LINK) -o $@ t_expire_warn.o $(KRB5_BASE_LIBS)
446 t_vfy_increds: t_vfy_increds.o $(KRB5_BASE_DEPLIBS)
447 $(CC_LINK) -o $@ t_vfy_increds.o $(KRB5_BASE_LIBS)
449 t_in_ccache: t_in_ccache.o $(KRB5_BASE_DEPLIBS)
450 $(CC_LINK) -o $@ t_in_ccache.o $(KRB5_BASE_LIBS)
452 t_cc_config: t_cc_config.o $(KRB5_BASE_DEPLIBS)
453 $(CC_LINK) -o $@ t_cc_config.o $(KRB5_BASE_LIBS)
455 t_copy_context: t_copy_context.o $(KRB5_BASE_DEPLIBS)
456 $(CC_LINK) -o $@ t_copy_context.o $(KRB5_BASE_LIBS)
458 t_response_items: t_response_items.o response_items.o $(KRB5_BASE_DEPLIBS)
459 $(CC_LINK) -o $@ t_response_items.o response_items.o $(KRB5_BASE_LIBS)
461 t_sname_match: t_sname_match.o sname_match.o $(KRB5_BASE_DEPLIBS)
462 $(CC_LINK) -o $@ t_sname_match.o sname_match.o $(KRB5_BASE_LIBS)
464 t_valid_times: t_valid_times.o valid_times.o $(KRB5_BASE_DEPLIBS)
465 $(CC_LINK) -o $@ t_valid_times.o valid_times.o $(KRB5_BASE_LIBS)
467 t_get_etype_info: t_get_etype_info.o $(KRB5_BASE_DEPLIBS)
468 $(CC_LINK) -o $@ t_get_etype_info.o $(KRB5_BASE_LIBS)
470 TEST_PROGS= t_walk_rtree t_kerb t_ser t_deltat t_expand t_authdata t_pac \
471 t_in_ccache t_cc_config t_copy_context t_princ t_etypes t_vfy_increds \
472 t_response_items t_sname_match t_valid_times t_get_etype_info
474 check-unix: $(TEST_PROGS) runenv.sh
475 $(RUN_TEST_LOCAL_CONF) ./t_kerb \
477 parse_name tytso@SHAZAAM \
478 parse_name tytso/root@VEGGIE.COM \
479 parse_name tytso/tuber/carrot@VEGGIE.COM \
480 parse_name tytso/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t \
481 parse_name tytso/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t@FOO \
482 parse_name tytso\\\\0/\\0@B\\n\\t\\\\GAG \
483 parse_name tytso/\\n/\\b\\t@B\\0hacky-test \
484 parse_name \\/slash/\\@atsign/octa\\/thorpe@\\/slash\\@at\\/sign \
485 name_type host/www.krb5.test@KRB5.TEST \
486 name_type krbtg/KRB5.TEST@KRB5.TEST \
487 name_type krbtgt/KRB5.TEST@KRB5.TEST \
488 name_type WELLKNOWN/ANONYMOUS@KRB5.TEST \
489 425_conv_principal rcmd e40-po ATHENA.MIT.EDU \
490 425_conv_principal rcmd mit ATHENA.MIT.EDU \
491 425_conv_principal rcmd lithium ATHENA.MIT.EDU \
492 425_conv_principal rcmd tweedledumb CYGNUS.COM \
493 425_conv_principal rcmd uunet UU.NET \
494 425_conv_principal zephyr zephyr ATHENA.MIT.EDU \
495 425_conv_principal kadmin ATHENA.MIT.EDU ATHENA.MIT.EDU \
496 524_conv_principal host/e40-po.mit.edu@ATHENA.MIT.EDU \
497 524_conv_principal host/foobar.stanford.edu@stanford.edu \
498 set_realm marc@MIT.EDU CYGNUS.COM \
500 cmp test.out $(srcdir)/t_ref_kerb.out
503 $(RUN_TEST) ./t_deltat
504 $(RUN_TEST) sh $(srcdir)/transit-tests
505 $(RUN_TEST_LOCAL_CONF) sh $(srcdir)/walktree-tests
506 $(RUN_TEST) ./t_authdata
508 $(RUN_TEST) ./t_princ
509 $(RUN_TEST) ./t_etypes
510 $(RUN_TEST) ./t_response_items
511 $(RUN_TEST) ./t_copy_context
512 $(RUN_TEST) ./t_sname_match
513 $(RUN_TEST) ./t_valid_times
515 check-pytests: t_expire_warn t_get_etype_info t_vfy_increds
516 $(RUNPYTEST) $(srcdir)/t_expire_warn.py $(PYTESTFLAGS)
517 $(RUNPYTEST) $(srcdir)/t_vfy_increds.py $(PYTESTFLAGS)
518 $(RUNPYTEST) $(srcdir)/t_in_ccache_patypes.py $(PYTESTFLAGS)
519 $(RUNPYTEST) $(srcdir)/t_get_etype_info.py $(PYTESTFLAGS)
521 check-cmocka: t_parse_host_string
522 $(RUN_TEST) ./t_parse_host_string > /dev/null
525 $(RM) $(OUTPRE)t_walk_rtree$(EXEEXT) $(OUTPRE)t_walk_rtree.$(OBJEXT) \
526 $(OUTPRE)t_kerb$(EXEEXT) $(OUTPRE)t_kerb.$(OBJEXT) \
527 $(OUTPRE)t_ser$(EXEEXT) $(OUTPRE)t_ser.$(OBJEXT) \
528 $(OUTPRE)t_deltat$(EXEEXT) $(OUTPRE)t_deltat.$(OBJEXT) \
529 $(OUTPRE)t_expand$(EXEEXT) $(OUTPRE)t_expand.$(OBJEXT) \
530 $(OUTPRE)t_expire_warn$(EXEEXT) $(OUTPRE)t_expire_warn.$(OBJEXT) \
531 $(OUTPRE)t_etypes$(EXEEXT) $(OUTPRE)t_etypes.$(OBJEXT) \
532 $(OUTPRE)t_pac$(EXEEXT) $(OUTPRE)t_pac.$(OBJEXT) \
533 $(OUTPRE)t_princ$(EXEEXT) $(OUTPRE)t_princ.$(OBJEXT) \
534 $(OUTPRE)t_authdata$(EXEEXT) $(OUTPRE)t_authdata.$(OBJEXT) \
535 $(OUTPRE)t_cc_config$(EXEEXT) $(OUTPRE)t_cc_config.$(OBJEXT) \
536 $(OUTPRE)t_copy_context$(EXEEXT) $(OUTPRE)t_copy_context.$(OBJEXT) \
537 $(OUTPRE)t_in_ccache$(EXEEXT) $(OUTPRE)t_in_ccache.$(OBJEXT) \
538 $(OUTPRE)t_ad_fx_armor$(EXEEXT) $(OUTPRE)t_ad_fx_armor.$(OBJEXT) \
539 $(OUTPRE)t_vfy_increds$(EXEEXT) $(OUTPRE)t_vfy_increds.$(OBJEXT) \
540 $(OUTPRE)t_response_items$(EXEEXT) \
541 $(OUTPRE)t_response_items.$(OBJEXT) \
542 $(OUTPRE)t_sname_match$(EXEEXT) $(OUTPRE)t_sname_match.$(OBJEXT) \
543 $(OUTPRE)t_valid_times$(EXEEXT) $(OUTPRE)t_valid_times.$(OBJEXT) \
544 $(OUTPRE)t_get_etype_info$(EXEEXT) \
545 $(OUTPRE)t_get_etype_info.$(OBJEXT) \
546 $(OUTPRE)t_parse_host_string$(EXEEXT) \
547 $(OUTPRE)t_parse_host_string.$(OBJEXT)