openssl.sh (10657B)
1 #!/bin/sh -u 2 # 3 # Instrument openssl, run its testsuite, check the logs and do a quick runtime 4 # sanity test on it. 5 # 6 . tt/package.subr "security/openssl" 7 plan 10 8 9 pkg_check_deps 10 pkg_clean 11 pkg_build 12 13 cat <<EOF > $tmpdir/check.good 14 Summary: 15 752 Source files used as input 16 58 Application link commands 17 752 Rewrite successes 18 752 Rewritten source compile successes 19 20 Totals: 21 322027 Lines of source code 22 6722 Function definitions 23 15969 If statements 24 877 For loops 25 277 While loops 26 47 Do while loops 27 275 Switch statements 28 7438 Return statement values 29 18751 Call expressions 30 418826 Total statements 31 27553 Binary operators 32 2912 Errors rewriting source 33 EOF 34 pkg_check 35 36 cat <<EOF > $tmpdir/tu_list.good 37 a_bitstr.c 263 38 a_bool.c 112 39 a_bytes.c 307 40 a_d2i_fp.c 285 41 a_digest.c 112 42 a_dup.c 118 43 a_enum.c 182 44 a_gentm.c 313 45 a_i2d_fp.c 158 46 a_int.c 465 47 a_mbstr.c 424 48 a_object.c 403 49 a_octet.c 79 50 a_print.c 130 51 a_set.c 239 52 a_sign.c 332 53 a_strex.c 650 54 a_strnid.c 314 55 a_time.c 229 56 a_type.c 156 57 a_utctm.c 353 58 a_utf8.c 238 59 a_verify.c 232 60 aes_cfb.c 86 61 aes_ctr.c 64 62 aes_ecb.c 74 63 aes_ige.c 324 64 aes_misc.c 87 65 aes_ofb.c 62 66 aes_wrap.c 73 67 ameth_lib.c 485 68 app_rand.c 218 69 apps.c 3229 70 asm/x86_64-gcc.c 639 71 asn1_err.c 355 72 asn1_gen.c 832 73 asn1_lib.c 480 74 asn1_par.c 425 75 asn1pars.c 431 76 asn_mime.c 975 77 asn_moid.c 154 78 asn_pack.c 208 79 b_dump.c 209 80 b_print.c 864 81 b_sock.c 963 82 bf_buff.c 518 83 bf_cfb64.c 124 84 bf_ecb.c 101 85 bf_enc.c 301 86 bf_nbio.c 254 87 bf_null.c 190 88 bf_ofb64.c 111 89 bf_skey.c 126 90 bio_asn1.c 483 91 bio_b64.c 574 92 bio_cb.c 146 93 bio_enc.c 429 94 bio_err.c 158 95 bio_lib.c 597 96 bio_md.c 273 97 bio_ndef.c 249 98 bio_ok.c 625 99 bio_pk7.c 71 100 bio_ssl.c 592 101 bn_add.c 314 102 bn_blind.c 386 103 bn_const.c 548 104 bn_ctx.c 449 105 bn_depr.c 116 106 bn_div.c 478 107 bn_err.c 155 108 bn_exp.c 1458 109 bn_exp2.c 304 110 bn_gcd.c 703 111 bn_gf2m.c 1301 112 bn_kron.c 187 113 bn_lib.c 917 114 bn_mod.c 317 115 bn_mont.c 559 116 bn_mpi.c 129 117 bn_mul.c 1165 118 bn_nist.c 1263 119 bn_prime.c 516 120 bn_print.c 398 121 bn_rand.c 296 122 bn_recp.c 253 123 bn_shift.c 225 124 bn_sqr.c 291 125 bn_sqrt.c 410 126 bn_word.c 228 127 bn_x931p.c 278 128 bss_acpt.c 464 129 bss_bio.c 887 130 bss_conn.c 613 131 bss_dgram.c 2082 132 bss_fd.c 331 133 bss_file.c 473 134 bss_log.c 454 135 bss_mem.c 314 136 bss_null.c 150 137 bss_sock.c 288 138 buf_err.c 98 139 buf_str.c 138 140 buffer.c 188 141 by_dir.c 437 142 by_file.c 278 143 c_all.c 91 144 c_allc.c 242 145 c_alld.c 115 146 c_cfb64.c 124 147 c_ecb.c 84 148 c_enc.c 201 149 c_ofb64.c 111 150 c_rle.c 63 151 c_skey.c 176 152 c_zlib.c 764 153 ca.c 2921 154 cbc128.c 208 155 cbc_cksm.c 104 156 cbc_enc.c 62 157 ccm128.c 480 158 cfb128.c 255 159 cfb64ede.c 250 160 cfb64enc.c 123 161 cfb_enc.c 200 162 ciphers.c 240 163 cm_ameth.c 97 164 cm_pmeth.c 217 165 cmac.c 307 166 cmll_cfb.c 142 167 cmll_ctr.c 65 168 cmll_ecb.c 74 169 cmll_misc.c 81 170 cmll_ofb.c 123 171 cmll_utl.c 65 172 cms.c 1358 173 cms_asn1.c 460 174 cms_att.c 198 175 cms_cd.c 135 176 cms_dd.c 146 177 cms_enc.c 261 178 cms_env.c 975 179 cms_err.c 310 180 cms_ess.c 396 181 cms_io.c 134 182 cms_kari.c 466 183 cms_lib.c 653 184 cms_pwri.c 436 185 cms_sd.c 958 186 cms_smime.c 837 187 comp_err.c 99 188 comp_lib.c 67 189 conf_api.c 306 190 conf_def.c 707 191 conf_err.c 134 192 conf_lib.c 392 193 conf_mall.c 82 194 conf_mod.c 598 195 conf_sap.c 100 196 cpt_err.c 105 197 crl.c 443 198 crl2p7.c 335 199 cryptlib.c 1031 200 ctr128.c 264 201 cts128.c 545 202 cversion.c 108 203 d1_both.c 1581 204 d1_clnt.c 870 205 d1_lib.c 574 206 d1_meth.c 91 207 d1_pkt.c 1922 208 d1_srtp.c 449 209 d1_srvr.c 981 210 d2i_pr.c 176 211 d2i_pu.c 137 212 des_enc.c 390 213 des_old.c 346 214 des_old2.c 81 215 dgst.c 615 216 dh.c 338 217 dh_ameth.c 958 218 dh_asn1.c 190 219 dh_check.c 188 220 dh_depr.c 83 221 dh_err.c 127 222 dh_gen.c 205 223 dh_kdf.c 188 224 dh_key.c 290 225 dh_lib.c 264 226 dh_pmeth.c 552 227 dh_prn.c 80 228 dh_rfc5114.c 286 229 dhparam.c 547 230 digest.c 409 231 dsa.c 375 232 dsa_ameth.c 679 233 dsa_asn1.c 203 234 dsa_depr.c 114 235 dsa_err.c 134 236 dsa_gen.c 749 237 dsa_key.c 146 238 dsa_lib.c 330 239 dsa_ossl.c 423 240 dsa_pmeth.c 313 241 dsa_prn.c 120 242 dsa_sign.c 111 243 dsa_vrf.c 76 244 dsaparam.c 470 245 dso_beos.c 254 246 dso_dl.c 381 247 dso_dlfcn.c 466 248 dso_err.c 159 249 dso_lib.c 449 250 dso_null.c 93 251 dso_openssl.c 84 252 dso_vms.c 548 253 dso_win32.c 789 254 e_aes.c 2025 255 e_aes_cbc_hmac_sha1.c 1009 256 e_aes_cbc_hmac_sha256.c 986 257 e_bf.c 88 258 e_camellia.c 395 259 e_cast.c 90 260 e_des.c 270 261 e_des3.c 496 262 e_idea.c 120 263 e_null.c 101 264 e_old.c 165 265 e_rc2.c 236 266 e_rc4.c 134 267 e_rc4_hmac_md5.c 309 268 e_rc5.c 123 269 e_seed.c 83 270 e_xcbc_d.c 131 271 ebcdic.c 285 272 ec.c 366 273 ec2_mult.c 464 274 ec2_oct.c 404 275 ec2_smpl.c 799 276 ec_ameth.c 966 277 ec_asn1.c 1327 278 ec_check.c 121 279 ec_curve.c 3249 280 ec_cvt.c 181 281 ec_err.c 333 282 ec_key.c 566 283 ec_lib.c 1135 284 ec_mult.c 914 285 ec_oct.c 193 286 ec_pmeth.c 531 287 ec_print.c 180 288 ecb3_enc.c 83 289 ecb_enc.c 125 290 ech_err.c 99 291 ech_kdf.c 112 292 ech_key.c 82 293 ech_lib.c 266 294 ech_ossl.c 219 295 eck_prn.c 378 296 ecp_mont.c 309 297 ecp_nist.c 221 298 ecp_nistp224.c 1770 299 ecp_nistp256.c 2370 300 ecp_nistp521.c 2149 301 ecp_nistputil.c 219 302 ecp_nistz256.c 1522 303 ecp_oct.c 429 304 ecp_smpl.c 1419 305 ecparam.c 662 306 ecs_asn1.c 68 307 ecs_err.c 108 308 ecs_lib.c 355 309 ecs_ossl.c 465 310 ecs_sign.c 107 311 ecs_vrf.c 113 312 ede_cbcm_enc.c 190 313 enc.c 716 314 enc_read.c 236 315 enc_writ.c 183 316 encode.c 461 317 eng_all.c 137 318 eng_cnf.c 243 319 eng_cryptodev.c 1536 320 eng_ctrl.c 386 321 eng_dyn.c 571 322 eng_err.c 182 323 eng_fat.c 182 324 eng_init.c 158 325 eng_lib.c 348 326 eng_list.c 406 327 eng_openssl.c 403 328 eng_pkey.c 187 329 eng_rdrand.c 150 330 eng_table.c 359 331 engine.c 513 332 err.c 1146 333 err_all.c 169 334 err_prn.c 114 335 errstr.c 122 336 evp_acnf.c 74 337 evp_asn1.c 196 338 evp_cnf.c 119 339 evp_enc.c 667 340 evp_err.c 255 341 evp_key.c 196 342 evp_lib.c 392 343 evp_pbe.c 313 344 evp_pkey.c 230 345 ex_data.c 647 346 f_enum.c 204 347 f_int.c 216 348 f_string.c 210 349 fcrypt.c 168 350 fcrypt_b.c 141 351 fips_ers.c 8 352 gcm128.c 2372 353 gendh.c 249 354 gendsa.c 288 355 genpkey.c 406 356 genrsa.c 351 357 hm_ameth.c 168 358 hm_pmeth.c 263 359 hmac.c 269 360 i2d_pr.c 79 361 i2d_pu.c 94 362 i_cbc.c 172 363 i_cfb64.c 124 364 i_ecb.c 89 365 i_ofb64.c 111 366 i_skey.c 172 367 krb5_asn.c 163 368 kssl.c 2261 369 lh_stats.c 247 370 lhash.c 459 371 m_dss.c 105 372 m_dss1.c 106 373 m_ecdsa.c 155 374 m_md2.c 107 375 m_md4.c 109 376 m_md5.c 108 377 m_mdc2.c 109 378 m_null.c 99 379 m_ripemd.c 108 380 m_sha.c 107 381 m_sha1.c 236 382 m_sigver.c 204 383 m_wp.c 49 384 md4_dgst.c 200 385 md4_one.c 97 386 md5_dgst.c 217 387 md5_one.c 97 388 md_rand.c 593 389 mdc2_one.c 77 390 mdc2dgst.c 197 391 mem.c 467 392 mem_dbg.c 831 393 n_pkey.c 346 394 names.c 216 395 nseq.c 171 396 nsseq.c 85 397 o_dir.c 87 398 o_fips.c 97 399 o_init.c 84 400 o_names.c 367 401 o_str.c 117 402 o_time.c 441 403 obj_dat.c 802 404 obj_err.c 101 405 obj_lib.c 136 406 obj_xref.c 223 407 ocsp.c 1368 408 ocsp_asn.c 184 409 ocsp_cl.c 384 410 ocsp_err.c 150 411 ocsp_ext.c 567 412 ocsp_ht.c 556 413 ocsp_lib.c 285 414 ocsp_prn.c 300 415 ocsp_srv.c 272 416 ocsp_vfy.c 455 417 ofb128.c 125 418 ofb64ede.c 124 419 ofb64enc.c 110 420 ofb_enc.c 132 421 openssl.c 697 422 p12_add.c 259 423 p12_asn.c 126 424 p12_attr.c 148 425 p12_crpt.c 120 426 p12_crt.c 359 427 p12_decr.c 203 428 p12_init.c 93 429 p12_key.c 239 430 p12_kiss.c 300 431 p12_mutl.c 196 432 p12_npas.c 236 433 p12_p8d.c 71 434 p12_p8e.c 106 435 p12_utl.c 162 436 p5_crpt.c 150 437 p5_crpt2.c 335 438 p5_pbe.c 144 439 p5_pbev2.c 281 440 p8_pkey.c 146 441 p_dec.c 88 442 p_enc.c 88 443 p_lib.c 457 444 p_open.c 130 445 p_seal.c 122 446 p_sign.c 134 447 p_verify.c 117 448 passwd.c 495 449 pcbc_enc.c 116 450 pcy_cache.c 270 451 pcy_data.c 130 452 pcy_lib.c 168 453 pcy_map.c 131 454 pcy_node.c 191 455 pcy_tree.c 832 456 pem_all.c 428 457 pem_err.c 169 458 pem_info.c 395 459 pem_lib.c 866 460 pem_oth.c 87 461 pem_pk8.c 260 462 pem_pkey.c 294 463 pem_seal.c 192 464 pem_sign.c 102 465 pem_x509.c 69 466 pem_xaux.c 71 467 pk12err.c 150 468 pk7_asn1.c 252 469 pk7_attr.c 166 470 pk7_doit.c 1296 471 pk7_lib.c 647 472 pk7_mime.c 97 473 pk7_smime.c 591 474 pkcs12.c 1059 475 pkcs7.c 313 476 pkcs7err.c 208 477 pkcs8.c 403 478 pkey.c 252 479 pkeyparam.c 186 480 pkeyutl.c 556 481 pmeth_fn.c 347 482 pmeth_gn.c 221 483 pmeth_lib.c 614 484 pqueue.c 236 485 prime.c 152 486 pvkfmt.c 889 487 qud_cksm.c 144 488 rand.c 230 489 rand_egd.c 293 490 rand_err.c 101 491 rand_key.c 68 492 rand_lib.c 301 493 rand_nw.c 180 494 rand_os2.c 171 495 rand_unix.c 448 496 rand_win.c 753 497 randfile.c 338 498 rc2_cbc.c 229 499 rc2_ecb.c 93 500 rc2_skey.c 158 501 rc2cfb64.c 124 502 rc2ofb64.c 111 503 rc4_utl.c 63 504 read2pwd.c 141 505 req.c 1733 506 rmd_dgst.c 335 507 rmd_one.c 78 508 rpc_enc.c 101 509 rsa.c 440 510 rsa_ameth.c 960 511 rsa_asn1.c 132 512 rsa_chk.c 215 513 rsa_crpt.c 248 514 rsa_depr.c 108 515 rsa_eay.c 905 516 rsa_err.c 248 517 rsa_gen.c 251 518 rsa_lib.c 337 519 rsa_none.c 95 520 rsa_null.c 156 521 rsa_oaep.c 284 522 rsa_pk1.c 276 523 rsa_pmeth.c 785 524 rsa_prn.c 93 525 rsa_pss.c 291 526 rsa_saos.c 149 527 rsa_sign.c 302 528 rsa_ssl.c 150 529 rsa_x931.c 168 530 rsautl.c 376 531 rsaz_exp.c 347 532 s23_clnt.c 803 533 s23_lib.c 186 534 s23_meth.c 90 535 s23_pkt.c 114 536 s23_srvr.c 653 537 s2_clnt.c 1095 538 s2_enc.c 198 539 s2_lib.c 571 540 s2_meth.c 92 541 s2_pkt.c 726 542 s2_srvr.c 1172 543 s3_both.c 748 544 s3_cbc.c 821 545 s3_clnt.c 3764 546 s3_enc.c 971 547 s3_lib.c 4537 548 s3_meth.c 75 549 s3_pkt.c 1749 550 s3_srvr.c 3615 551 s_cb.c 1658 552 s_client.c 2334 553 s_server.c 3506 554 s_socket.c 614 555 s_time.c 642 556 seed.c 712 557 seed_cbc.c 66 558 seed_cfb.c 119 559 seed_ecb.c 62 560 seed_ofb.c 118 561 sess_id.c 301 562 set_key.c 448 563 sha1_one.c 80 564 sha1dgst.c 75 565 sha256.c 388 566 sha512.c 685 567 sha_dgst.c 75 568 sha_one.c 80 569 smime.c 779 570 speed.c 2875 571 spkac.c 313 572 srp.c 769 573 srp_lib.c 358 574 srp_vfy.c 706 575 ssl_algs.c 156 576 ssl_asn1.c 637 577 ssl_cert.c 1265 578 ssl_ciph.c 2078 579 ssl_conf.c 692 580 ssl_err.c 838 581 ssl_err2.c 70 582 ssl_lib.c 3572 583 ssl_rsa.c 1044 584 ssl_sess.c 1274 585 ssl_stat.c 1079 586 ssl_txt.c 263 587 ssl_utst.c 73 588 stack.c 385 589 str2key.c 165 590 t1_clnt.c 91 591 t1_enc.c 1378 592 t1_ext.c 299 593 t1_lib.c 4440 594 t1_meth.c 85 595 t1_reneg.c 293 596 t1_srvr.c 93 597 t1_trce.c 1267 598 t_bitst.c 106 599 t_crl.c 134 600 t_pkey.c 114 601 t_req.c 255 602 t_spki.c 109 603 t_x509.c 557 604 t_x509a.c 116 605 tasn_dec.c 1228 606 tasn_enc.c 660 607 tasn_fre.c 250 608 tasn_new.c 382 609 tasn_prn.c 586 610 tasn_typ.c 150 611 tasn_utl.c 276 612 tb_asnmth.c 247 613 tb_cipher.c 144 614 tb_dh.c 125 615 tb_digest.c 144 616 tb_dsa.c 125 617 tb_ecdh.c 140 618 tb_ecdsa.c 125 619 tb_pkmeth.c 167 620 tb_rand.c 125 621 tb_rsa.c 125 622 tb_store.c 130 623 tls_srp.c 543 624 ts.c 1120 625 ts_asn1.c 327 626 ts_conf.c 492 627 ts_err.c 189 628 ts_lib.c 144 629 ts_req_print.c 105 630 ts_req_utils.c 233 631 ts_rsp_print.c 282 632 ts_rsp_sign.c 1021 633 ts_rsp_utils.c 397 634 ts_rsp_verify.c 738 635 ts_verify_ctx.c 163 636 txt_db.c 382 637 ui_compat.c 70 638 ui_err.c 112 639 ui_lib.c 871 640 ui_openssl.c 718 641 ui_util.c 94 642 uid.c 89 643 v3_addr.c 1345 644 v3_akey.c 206 645 v3_akeya.c 74 646 v3_alt.c 610 647 v3_asid.c 897 648 v3_bcons.c 133 649 v3_bitst.c 143 650 v3_conf.c 533 651 v3_cpols.c 492 652 v3_crld.c 563 653 v3_enum.c 101 654 v3_extku.c 150 655 v3_genn.c 251 656 v3_ia5.c 120 657 v3_info.c 211 658 v3_int.c 93 659 v3_lib.c 364 660 v3_ncons.c 480 661 v3_ocsp.c 313 662 v3_pci.c 318 663 v3_pcia.c 57 664 v3_pcons.c 140 665 v3_pku.c 115 666 v3_pmaps.c 157 667 v3_prn.c 260 668 v3_purp.c 853 669 v3_scts.c 335 670 v3_skey.c 151 671 v3_sxnet.c 274 672 v3_utl.c 1352 673 v3err.c 250 674 verify.c 353 675 version.c 215 676 wp_dgst.c 258 677 wrap128.c 139 678 x509.c 1276 679 x509_att.c 385 680 x509_cmp.c 499 681 x509_d2.c 110 682 x509_def.c 93 683 x509_err.c 188 684 x509_ext.c 212 685 x509_lu.c 711 686 x509_obj.c 231 687 x509_r2x.c 114 688 x509_req.c 329 689 x509_set.c 153 690 x509_trs.c 319 691 x509_txt.c 212 692 x509_v3.c 285 693 x509_vfy.c 2498 694 x509_vpm.c 663 695 x509cset.c 168 696 x509name.c 398 697 x509rset.c 86 698 x509spki.c 124 699 x509type.c 128 700 x_algor.c 149 701 x_all.c 559 702 x_attrib.c 125 703 x_bignum.c 154 704 x_crl.c 518 705 x_exten.c 78 706 x_info.c 118 707 x_long.c 197 708 x_name.c 539 709 x_nx509.c 73 710 x_pkey.c 154 711 x_pubkey.c 375 712 x_req.c 117 713 x_sig.c 70 714 x_spki.c 83 715 x_val.c 70 716 x_x509.c 240 717 x_x509a.c 197 718 xcbc_enc.c 217 719 xts128.c 205 720 EOF 721 722 LD_LIBRARY_PATH="$workdir" $workdir/apps/openssl < /dev/null > /dev/null 723 724 ok "is write_tus.pl exit code 0" tt/write_tus.pl $tmpdir/tu_list.out ${CITRUN_PROCDIR}openssl_* 725 ok "is tu manifest complete" diff -u $tmpdir/tu_list.good $tmpdir/tu_list.out 726 727 pkg_clean