# PaCkAgE DaTaStReAm openssl 1 39732 # end of header 07070100048b39000081a40000000000000000000000015135996e00000104000000b600010002ffffffffffffffff0000001000000000openssl/pkginfoPKG=openssl NAME=openssl 1.0.1e i86pc Solaris 11 VERSION=1.0.1e PSTAMP=5th March 2013 VENDOR=The OpenSSL Project EMAIL=http://www.openssl.org/ DESC=Open Secure Sockets Layer ARCH=i386 CATEGORY=utility CLASSES=none BASEDIR=/ ISTATES=S s 1 2 3 RSTATES=S s 1 2 3 07070100048b38000081a40000000000000000000000015135996e000187cd000000b600010002ffffffffffffffff0000000f00000000openssl/pkgmap: 1 39732 1 d none /usr ? ? ? 1 d none /usr/local ? ? ? 1 d none /usr/local/bin 0755 root root 1 f none /usr/local/bin/c_rehash 0755 root root 4263 2880 1362466342 1 f none /usr/local/bin/openssl 0755 root root 781464 20194 1362466342 1 d none /usr/local/include 0755 root root 1 d none /usr/local/include/openssl 0755 root root 1 f none /usr/local/include/openssl/aes.h 0644 root root 5507 58161 1362466341 1 f none /usr/local/include/openssl/asn1.h 0644 root root 52190 38969 1362466341 1 f none /usr/local/include/openssl/asn1_mac.h 0644 root root 19143 57898 1362466341 1 f none /usr/local/include/openssl/asn1t.h 0644 root root 30092 25250 1362466341 1 f none /usr/local/include/openssl/bio.h 0644 root root 32987 34097 1362466341 1 f none /usr/local/include/openssl/blowfish.h 0644 root root 5143 24257 1362466341 1 f none /usr/local/include/openssl/bn.h 0644 root root 36185 50177 1362466341 1 f none /usr/local/include/openssl/buffer.h 0644 root root 4646 55710 1362466341 1 f none /usr/local/include/openssl/camellia.h 0644 root root 4956 10364 1362466341 1 f none /usr/local/include/openssl/cast.h 0644 root root 4492 44581 1362466341 1 f none /usr/local/include/openssl/cmac.h 0644 root root 3244 60353 1362466342 1 f none /usr/local/include/openssl/cms.h 0644 root root 19927 41890 1362466342 1 f none /usr/local/include/openssl/comp.h 0644 root root 1978 28645 1362466342 1 f none /usr/local/include/openssl/conf.h 0644 root root 9848 3123 1362466341 1 f none /usr/local/include/openssl/conf_api.h 0644 root root 4080 9563 1362466341 1 f none /usr/local/include/openssl/crypto.h 0644 root root 24337 19026 1362466341 1 f none /usr/local/include/openssl/des.h 0644 root root 10849 55778 1362466341 1 f none /usr/local/include/openssl/des_old.h 0644 root root 18238 48461 1362466341 1 f none /usr/local/include/openssl/dh.h 0644 root root 9979 64451 1362466341 1 f none /usr/local/include/openssl/dsa.h 0644 root root 12057 30299 1362466341 1 f none /usr/local/include/openssl/dso.h 0644 root root 18095 38398 1362466341 1 f none /usr/local/include/openssl/dtls1.h 0644 root root 8026 63952 1362466342 1 f none /usr/local/include/openssl/e_os2.h 0644 root root 10444 23195 1362466341 1 f none /usr/local/include/openssl/ebcdic.h 0644 root root 540 47941 1362466341 1 f none /usr/local/include/openssl/ec.h 0644 root root 46413 56303 1362466341 1 f none /usr/local/include/openssl/ecdh.h 0644 root root 4682 43390 1362466341 1 f none /usr/local/include/openssl/ecdsa.h 0644 root root 10510 64542 1362466341 1 f none /usr/local/include/openssl/engine.h 0644 root root 40585 27372 1362466341 1 f none /usr/local/include/openssl/err.h 0644 root root 15862 4222 1362466341 1 f none /usr/local/include/openssl/evp.h 0644 root root 52791 65319 1362466341 1 f none /usr/local/include/openssl/hmac.h 0644 root root 4476 40756 1362466341 1 f none /usr/local/include/openssl/idea.h 0644 root root 4469 43521 1362466341 1 f none /usr/local/include/openssl/krb5_asn.h 0644 root root 7642 35465 1362466342 1 f none /usr/local/include/openssl/kssl.h 0644 root root 6064 28392 1362466342 1 f none /usr/local/include/openssl/lhash.h 0644 root root 9092 27166 1362466341 1 f none /usr/local/include/openssl/md4.h 0644 root root 4692 49456 1362466341 1 f none /usr/local/include/openssl/md5.h 0644 root root 4692 49489 1362466341 1 f none /usr/local/include/openssl/mdc2.h 0644 root root 3917 59579 1362466341 1 f none /usr/local/include/openssl/modes.h 0644 root root 5619 10181 1362466341 1 f none /usr/local/include/openssl/obj_mac.h 0644 root root 136214 36798 1362466341 1 f none /usr/local/include/openssl/objects.h 0644 root root 36641 52204 1362466341 1 f none /usr/local/include/openssl/ocsp.h 0644 root root 24041 62204 1362466342 1 f none /usr/local/include/openssl/opensslconf.h 0644 root root 6371 41876 1362466341 1 f none /usr/local/include/openssl/opensslv.h 0644 root root 3752 45726 1362466341 1 f none /usr/local/include/openssl/ossl_typ.h 0644 root root 7397 22039 1362466341 1 f none /usr/local/include/openssl/pem.h 0644 root root 21992 19216 1362466341 1 f none /usr/local/include/openssl/pem2.h 0644 root root 2863 31540 1362466341 1 f none /usr/local/include/openssl/pkcs12.h 0644 root root 12654 57182 1362466342 1 f none /usr/local/include/openssl/pkcs7.h 0644 root root 18064 2734 1362466342 1 f none /usr/local/include/openssl/pqueue.h 0644 root root 3580 29045 1362466342 1 f none /usr/local/include/openssl/rand.h 0644 root root 5534 65103 1362466341 1 f none /usr/local/include/openssl/rc2.h 0644 root root 4405 35880 1362466341 1 f none /usr/local/include/openssl/rc4.h 0644 root root 3797 52171 1362466341 1 f none /usr/local/include/openssl/ripemd.h 0644 root root 4327 25625 1362466341 1 f none /usr/local/include/openssl/rsa.h 0644 root root 22870 5778 1362466341 1 f none /usr/local/include/openssl/safestack.h 0644 root root 184155 25492 1362466341 1 f none /usr/local/include/openssl/seed.h 0644 root root 5714 60632 1362466341 1 f none /usr/local/include/openssl/sha.h 0644 root root 7636 15612 1362466341 1 f none /usr/local/include/openssl/srp.h 0644 root root 5378 29851 1362466342 1 f none /usr/local/include/openssl/srtp.h 0644 root root 6644 14172 1362466342 1 f none /usr/local/include/openssl/ssl.h 0644 root root 103414 45647 1362466342 1 f none /usr/local/include/openssl/ssl2.h 0644 root root 10755 53980 1362466342 1 f none /usr/local/include/openssl/ssl23.h 0644 root root 3744 44724 1362466342 1 f none /usr/local/include/openssl/ssl3.h 0644 root root 26746 41372 1362466342 1 f none /usr/local/include/openssl/stack.h 0644 root root 4412 35454 1362466341 1 f none /usr/local/include/openssl/symhacks.h 0644 root root 23941 40398 1362466341 1 f none /usr/local/include/openssl/tls1.h 0644 root root 35062 17998 1362466342 1 f none /usr/local/include/openssl/ts.h 0644 root root 31006 60169 1362466342 1 f none /usr/local/include/openssl/txt_db.h 0644 root root 4481 38340 1362466341 1 f none /usr/local/include/openssl/ui.h 0644 root root 16656 29887 1362466342 1 f none /usr/local/include/openssl/ui_compat.h 0644 root root 3439 16714 1362466342 1 f none /usr/local/include/openssl/whrlpool.h 0644 root root 1019 16704 1362466341 1 f none /usr/local/include/openssl/x509.h 0644 root root 45041 1201 1362466341 1 f none /usr/local/include/openssl/x509_vfy.h 0644 root root 22408 56970 1362466341 1 f none /usr/local/include/openssl/x509v3.h 0644 root root 32713 3182 1362466341 1 d none /usr/local/lib 0755 root root 1 d none /usr/local/lib/engines 0755 root root 1 f none /usr/local/lib/engines/lib4758cca.so 0555 root root 21424 7356 1362466342 1 f none /usr/local/lib/engines/libaep.so 0555 root root 21068 54841 1362466342 1 f none /usr/local/lib/engines/libatalla.so 0555 root root 17288 40322 1362466342 1 f none /usr/local/lib/engines/libcapi.so 0555 root root 5352 46508 1362466342 1 f none /usr/local/lib/engines/libchil.so 0555 root root 26964 49790 1362466342 1 f none /usr/local/lib/engines/libcswift.so 0555 root root 23868 33034 1362466342 1 f none /usr/local/lib/engines/libgmp.so 0555 root root 5332 43538 1362466342 1 f none /usr/local/lib/engines/libgost.so 0555 root root 127912 51492 1362466342 1 f none /usr/local/lib/engines/libnuron.so 0555 root root 14836 14277 1362466342 1 f none /usr/local/lib/engines/libpadlock.so 0555 root root 5372 48530 1362466342 1 f none /usr/local/lib/engines/libsureware.so 0555 root root 26680 62505 1362466342 1 f none /usr/local/lib/engines/libubsec.so 0555 root root 21756 27377 1362466342 1 f none /usr/local/lib/libcrypto.a 0644 root root 4017024 36222 1362466342 1 s none /usr/local/lib/libcrypto.so=libcrypto.so.1.0.0 1 s none /usr/local/lib/libcrypto.so.0.9.7=libcrypto.so.0.9.8 1 f none /usr/local/lib/libcrypto.so.0.9.8 0755 root root 2337652 9148 1362467112 1 f none /usr/local/lib/libcrypto.so.1.0.0 0555 root root 2785108 63545 1362466342 1 f none /usr/local/lib/libssl.a 0644 root root 680244 44793 1362466342 1 s none /usr/local/lib/libssl.so=libssl.so.1.0.0 1 s none /usr/local/lib/libssl.so.0.9.7=libssl.so.0.9.8 1 f none /usr/local/lib/libssl.so.0.9.8 0755 root root 448196 8189 1362467112 1 f none /usr/local/lib/libssl.so.1.0.0 0555 root root 544040 32694 1362466342 1 d none /usr/local/lib/pkgconfig 0755 root root 1 f none /usr/local/lib/pkgconfig/libcrypto.pc 0644 root root 275 25165 1362466342 1 f none /usr/local/lib/pkgconfig/libssl.pc 0644 root root 290 26474 1362466342 1 f none /usr/local/lib/pkgconfig/openssl.pc 0644 root root 300 27406 1362466342 1 d none /usr/local/ssl 0755 root root 1 d none /usr/local/ssl/certs 0755 root root 1 d none /usr/local/ssl/man 0755 root root 1 d none /usr/local/ssl/man/man1 0755 root root 1 f none /usr/local/ssl/man/man1/CA.pl.1 0644 root root 10157 32057 1362466311 1 f none /usr/local/ssl/man/man1/asn1parse.1 0644 root root 9689 26054 1362466311 1 f none /usr/local/ssl/man/man1/ca.1 0644 root root 29641 33968 1362466311 1 f none /usr/local/ssl/man/man1/ciphers.1 0644 root root 22121 411 1362466311 1 f none /usr/local/ssl/man/man1/cms.1 0644 root root 26811 17097 1362466311 1 f none /usr/local/ssl/man/man1/crl.1 0644 root root 6627 47364 1362466311 1 f none /usr/local/ssl/man/man1/crl2pkcs7.1 0644 root root 6715 61222 1362466311 1 f none /usr/local/ssl/man/man1/dgst.1 0644 root root 8650 33804 1362466311 1 f none /usr/local/ssl/man/man1/dhparam.1 0644 root root 8341 6029 1362466311 1 f none /usr/local/ssl/man/man1/dsa.1 0644 root root 9035 68 1362466312 1 f none /usr/local/ssl/man/man1/dsaparam.1 0644 root root 7185 37562 1362466312 1 f none /usr/local/ssl/man/man1/ec.1 0644 root root 10337 48711 1362466312 1 f none /usr/local/ssl/man/man1/ecparam.1 0644 root root 9568 46488 1362466312 1 f none /usr/local/ssl/man/man1/enc.1 0644 root root 14921 3013 1362466312 1 f none /usr/local/ssl/man/man1/errstr.1 0644 root root 4577 7821 1362466312 1 f none /usr/local/ssl/man/man1/gendsa.1 0644 root root 5760 47543 1362466312 1 f none /usr/local/ssl/man/man1/genpkey.1 0644 root root 10591 52935 1362466312 1 f none /usr/local/ssl/man/man1/genrsa.1 0644 root root 6771 5444 1362466312 1 s none /usr/local/ssl/man/man1/md2.1=dgst.1 1 s none /usr/local/ssl/man/man1/md4.1=dgst.1 1 s none /usr/local/ssl/man/man1/md5.1=dgst.1 1 s none /usr/local/ssl/man/man1/mdc2.1=dgst.1 1 f none /usr/local/ssl/man/man1/nseq.1 0644 root root 5739 46402 1362466312 1 f none /usr/local/ssl/man/man1/ocsp.1 0644 root root 18890 35316 1362466312 1 f none /usr/local/ssl/man/man1/openssl.1 0644 root root 15893 49691 1362466312 1 f none /usr/local/ssl/man/man1/passwd.1 0644 root root 5859 54853 1362466313 1 f none /usr/local/ssl/man/man1/pkcs12.1 0644 root root 17416 9366 1362466313 1 f none /usr/local/ssl/man/man1/pkcs7.1 0644 root root 6611 46381 1362466313 1 f none /usr/local/ssl/man/man1/pkcs8.1 0644 root root 13255 28469 1362466313 1 f none /usr/local/ssl/man/man1/pkey.1 0644 root root 7753 23376 1362466313 1 f none /usr/local/ssl/man/man1/pkeyparam.1 0644 root root 5550 29610 1362466313 1 f none /usr/local/ssl/man/man1/pkeyutl.1 0644 root root 10714 19571 1362466313 1 f none /usr/local/ssl/man/man1/rand.1 0644 root root 5107 54168 1362466313 1 f none /usr/local/ssl/man/man1/req.1 0644 root root 29521 17415 1362466313 1 s none /usr/local/ssl/man/man1/ripemd160.1=dgst.1 1 f none /usr/local/ssl/man/man1/rsa.1 0644 root root 10229 40340 1362466313 1 f none /usr/local/ssl/man/man1/rsautl.1 0644 root root 9775 8272 1362466313 1 f none /usr/local/ssl/man/man1/s_client.1 0644 root root 15029 15162 1362466313 1 f none /usr/local/ssl/man/man1/s_server.1 0644 root root 16071 32987 1362466314 1 f none /usr/local/ssl/man/man1/s_time.1 0644 root root 10562 20833 1362466314 1 f none /usr/local/ssl/man/man1/sess_id.1 0644 root root 8279 57778 1362466314 1 s none /usr/local/ssl/man/man1/sha.1=dgst.1 1 s none /usr/local/ssl/man/man1/sha1.1=dgst.1 1 f none /usr/local/ssl/man/man1/smime.1 0644 root root 20596 43919 1362466314 1 f none /usr/local/ssl/man/man1/speed.1 0644 root root 4882 37145 1362466314 1 f none /usr/local/ssl/man/man1/spkac.1 0644 root root 7901 32626 1362466314 1 f none /usr/local/ssl/man/man1/ts.1 0644 root root 26628 53722 1362466314 1 f none /usr/local/ssl/man/man1/tsget.1 0644 root root 10967 34719 1362466314 1 f none /usr/local/ssl/man/man1/verify.1 0644 root root 22062 32262 1362466314 1 f none /usr/local/ssl/man/man1/version.1 0644 root root 4807 25455 1362466314 1 f none /usr/local/ssl/man/man1/x509.1 0644 root root 35448 22912 1362466314 1 d none /usr/local/ssl/man/man3 0755 root root 1 s none /usr/local/ssl/man/man3/ASN1_OBJECT_free.3=ASN1_OBJECT_new.3 1 f none /usr/local/ssl/man/man3/ASN1_OBJECT_new.3 0644 root root 5173 55808 1362466315 1 s none /usr/local/ssl/man/man3/ASN1_STRING_cmp.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_data.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_dup.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_free.3=ASN1_STRING_new.3 1 f none /usr/local/ssl/man/man3/ASN1_STRING_length.3 0644 root root 6953 12455 1362466315 1 s none /usr/local/ssl/man/man3/ASN1_STRING_length_set.3=ASN1_STRING_length.3 1 f none /usr/local/ssl/man/man3/ASN1_STRING_new.3 0644 root root 4943 35202 1362466315 1 f none /usr/local/ssl/man/man3/ASN1_STRING_print_ex.3 0644 root root 8081 48524 1362466315 1 s none /usr/local/ssl/man/man3/ASN1_STRING_print_ex_fp.3=ASN1_STRING_print_ex.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_set.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_type.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_type_new.3=ASN1_STRING_new.3 1 f none /usr/local/ssl/man/man3/ASN1_generate_nconf.3 0644 root root 13630 14084 1362466315 1 s none /usr/local/ssl/man/man3/ASN1_generate_v3.3=ASN1_generate_nconf.3 1 s none /usr/local/ssl/man/man3/BF_cbc_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_cfb64_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_decrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_ecb_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_ofb64_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_options.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_set_key.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BIO_append_filename.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_callback_ctrl.3=BIO_ctrl.3 1 f none /usr/local/ssl/man/man3/BIO_ctrl.3 0644 root root 9443 34824 1362466315 1 s none /usr/local/ssl/man/man3/BIO_ctrl_get_read_request.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_ctrl_get_write_guarantee.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_ctrl_pending.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_ctrl_reset_read_request.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_ctrl_wpending.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_debug_callback.3=BIO_set_callback.3 1 s none /usr/local/ssl/man/man3/BIO_destroy_bio_pair.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_do_accept.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_do_connect.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_eof.3=BIO_ctrl.3 1 f none /usr/local/ssl/man/man3/BIO_f_base64.3 0644 root root 6053 60418 1362466315 1 f none /usr/local/ssl/man/man3/BIO_f_buffer.3 0644 root root 6892 13103 1362466315 1 f none /usr/local/ssl/man/man3/BIO_f_cipher.3 0644 root root 6703 63013 1362466315 1 f none /usr/local/ssl/man/man3/BIO_f_md.3 0644 root root 9012 47235 1362466315 1 f none /usr/local/ssl/man/man3/BIO_f_null.3 0644 root root 4558 5555 1362466316 1 f none /usr/local/ssl/man/man3/BIO_f_ssl.3 0644 root root 15386 49842 1362466316 1 f none /usr/local/ssl/man/man3/BIO_find_type.3 0644 root root 7126 62431 1362466316 1 s none /usr/local/ssl/man/man3/BIO_flush.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_free.3=BIO_new.3 1 s none /usr/local/ssl/man/man3/BIO_free_all.3=BIO_new.3 1 s none /usr/local/ssl/man/man3/BIO_get_accept_port.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_get_bind_mode.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_get_callback.3=BIO_set_callback.3 1 s none /usr/local/ssl/man/man3/BIO_get_callback_arg.3=BIO_set_callback.3 1 s none /usr/local/ssl/man/man3/BIO_get_cipher_ctx.3=BIO_f_cipher.3 1 s none /usr/local/ssl/man/man3/BIO_get_cipher_status.3=BIO_f_cipher.3 1 s none /usr/local/ssl/man/man3/BIO_get_close.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_get_conn_hostname.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_get_conn_int_port.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_get_conn_ip.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_get_conn_port.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_get_fd.3=BIO_s_fd.3 1 s none /usr/local/ssl/man/man3/BIO_get_fp.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_get_info_callback.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_get_md.3=BIO_f_md.3 1 s none /usr/local/ssl/man/man3/BIO_get_md_ctx.3=BIO_f_md.3 1 s none /usr/local/ssl/man/man3/BIO_get_mem_data.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_get_mem_ptr.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_get_num_renegotiates.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_get_read_request.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_get_retry_BIO.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_get_retry_reason.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_get_ssl.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_get_write_buf_size.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_get_write_guarantee.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_gets.3=BIO_read.3 1 s none /usr/local/ssl/man/man3/BIO_int_ctrl.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_make_bio_pair.3=BIO_s_bio.3 1 f none /usr/local/ssl/man/man3/BIO_new.3 0644 root root 6047 64968 1362466316 1 f none /usr/local/ssl/man/man3/BIO_new_CMS.3 0644 root root 6202 20993 1362466316 1 s none /usr/local/ssl/man/man3/BIO_new_bio_pair.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_new_buffer_ssl_connect.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_new_fd.3=BIO_s_fd.3 1 s none /usr/local/ssl/man/man3/BIO_new_file.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_new_fp.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_new_mem_buf.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_new_socket.3=BIO_s_socket.3 1 s none /usr/local/ssl/man/man3/BIO_new_ssl.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_new_ssl_connect.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_next.3=BIO_find_type.3 1 s none /usr/local/ssl/man/man3/BIO_pending.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_pop.3=BIO_push.3 1 s none /usr/local/ssl/man/man3/BIO_ptr_ctrl.3=BIO_ctrl.3 1 f none /usr/local/ssl/man/man3/BIO_push.3 0644 root root 6063 64055 1362466316 1 s none /usr/local/ssl/man/man3/BIO_puts.3=BIO_read.3 1 f none /usr/local/ssl/man/man3/BIO_read.3 0644 root root 6532 48488 1362466316 1 s none /usr/local/ssl/man/man3/BIO_read_filename.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_reset.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_retry_type.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_rw_filename.3=BIO_s_file.3 1 f none /usr/local/ssl/man/man3/BIO_s_accept.3 0644 root root 11781 35266 1362466316 1 f none /usr/local/ssl/man/man3/BIO_s_bio.3 0644 root root 12392 34384 1362466316 1 f none /usr/local/ssl/man/man3/BIO_s_connect.3 0644 root root 11535 26352 1362466316 1 f none /usr/local/ssl/man/man3/BIO_s_fd.3 0644 root root 6897 6404 1362466317 1 f none /usr/local/ssl/man/man3/BIO_s_file.3 0644 root root 9075 56431 1362466317 1 f none /usr/local/ssl/man/man3/BIO_s_mem.3 0644 root root 8320 579 1362466317 1 f none /usr/local/ssl/man/man3/BIO_s_null.3 0644 root root 4761 23823 1362466317 1 f none /usr/local/ssl/man/man3/BIO_s_socket.3 0644 root root 5673 36488 1362466317 1 s none /usr/local/ssl/man/man3/BIO_seek.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_set.3=BIO_new.3 1 s none /usr/local/ssl/man/man3/BIO_set_accept_bios.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_set_accept_port.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_set_bind_mode.3=BIO_s_accept.3 1 f none /usr/local/ssl/man/man3/BIO_set_callback.3 0644 root root 7885 23503 1362466317 1 s none /usr/local/ssl/man/man3/BIO_set_callback_arg.3=BIO_set_callback.3 1 s none /usr/local/ssl/man/man3/BIO_set_cipher.3=BIO_f_cipher.3 1 s none /usr/local/ssl/man/man3/BIO_set_close.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_set_conn_hostname.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_conn_int_port.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_conn_ip.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_conn_port.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_fd.3=BIO_s_fd.3 1 s none /usr/local/ssl/man/man3/BIO_set_fp.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_set_info_callback.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_set_md.3=BIO_f_md.3 1 s none /usr/local/ssl/man/man3/BIO_set_mem_buf.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_set_mem_eof_return.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_set_nbio.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_nbio_accept.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_set_ssl.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_set_ssl_mode.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_set_ssl_renegotiate_bytes.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_set_ssl_renegotiate_timeout.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_set_write_buf_size.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_should_io_special.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_should_read.3=BIO_should_retry.3 1 f none /usr/local/ssl/man/man3/BIO_should_retry.3 0644 root root 9124 10563 1362466317 1 s none /usr/local/ssl/man/man3/BIO_should_write.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_shutdown_wr.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_ssl_copy_session_id.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_ssl_shutdown.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_tell.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_vfree.3=BIO_new.3 1 s none /usr/local/ssl/man/man3/BIO_wpending.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_write.3=BIO_read.3 1 s none /usr/local/ssl/man/man3/BIO_write_filename.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_convert.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_convert_ex.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_create_param.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_free.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_get_flags.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_get_thread_id.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_invert.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_invert_ex.3=BN_BLINDING_new.3 1 f none /usr/local/ssl/man/man3/BN_BLINDING_new.3 0644 root root 9080 50898 1362466317 1 s none /usr/local/ssl/man/man3/BN_BLINDING_set_flags.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_set_thread_id.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_update.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_CTX_end.3=BN_CTX_start.3 1 s none /usr/local/ssl/man/man3/BN_CTX_free.3=BN_CTX_new.3 1 s none /usr/local/ssl/man/man3/BN_CTX_get.3=BN_CTX_start.3 1 s none /usr/local/ssl/man/man3/BN_CTX_init.3=BN_CTX_new.3 1 f none /usr/local/ssl/man/man3/BN_CTX_new.3 0644 root root 5478 18513 1362466317 1 f none /usr/local/ssl/man/man3/BN_CTX_start.3 0644 root root 5517 22314 1362466317 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_copy.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_free.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_init.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_new.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_set.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_RECP_CTX_free.3=BN_mod_mul_reciprocal.3 1 s none /usr/local/ssl/man/man3/BN_RECP_CTX_init.3=BN_mod_mul_reciprocal.3 1 s none /usr/local/ssl/man/man3/BN_RECP_CTX_new.3=BN_mod_mul_reciprocal.3 1 s none /usr/local/ssl/man/man3/BN_RECP_CTX_set.3=BN_mod_mul_reciprocal.3 1 f none /usr/local/ssl/man/man3/BN_add.3 0644 root root 8862 28087 1362466318 1 f none /usr/local/ssl/man/man3/BN_add_word.3 0644 root root 5745 37789 1362466318 1 s none /usr/local/ssl/man/man3/BN_bin2bn.3=BN_bn2bin.3 1 f none /usr/local/ssl/man/man3/BN_bn2bin.3 0644 root root 7780 16762 1362466318 1 s none /usr/local/ssl/man/man3/BN_bn2dec.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_bn2hex.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_bn2mpi.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_clear.3=BN_new.3 1 s none /usr/local/ssl/man/man3/BN_clear_bit.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_clear_free.3=BN_new.3 1 f none /usr/local/ssl/man/man3/BN_cmp.3 0644 root root 5205 56898 1362466318 1 f none /usr/local/ssl/man/man3/BN_copy.3 0644 root root 4605 8212 1362466318 1 s none /usr/local/ssl/man/man3/BN_dec2bn.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_div.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_div_recp.3=BN_mod_mul_reciprocal.3 1 s none /usr/local/ssl/man/man3/BN_div_word.3=BN_add_word.3 1 s none /usr/local/ssl/man/man3/BN_dup.3=BN_copy.3 1 s none /usr/local/ssl/man/man3/BN_exp.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_free.3=BN_new.3 1 s none /usr/local/ssl/man/man3/BN_from_montgomery.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_gcd.3=BN_add.3 1 f none /usr/local/ssl/man/man3/BN_generate_prime.3 0644 root root 7384 52194 1362466318 1 s none /usr/local/ssl/man/man3/BN_get_word.3=BN_zero.3 1 s none /usr/local/ssl/man/man3/BN_hex2bn.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_init.3=BN_new.3 1 s none /usr/local/ssl/man/man3/BN_is_bit_set.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_is_odd.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_is_one.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_is_prime.3=BN_generate_prime.3 1 s none /usr/local/ssl/man/man3/BN_is_prime_fasttest.3=BN_generate_prime.3 1 s none /usr/local/ssl/man/man3/BN_is_word.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_is_zero.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_lshift.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_lshift1.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_mask_bits.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_mod.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mod_add.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mod_exp.3=BN_add.3 1 f none /usr/local/ssl/man/man3/BN_mod_inverse.3 0644 root root 4822 26920 1362466318 1 s none /usr/local/ssl/man/man3/BN_mod_mul.3=BN_add.3 1 f none /usr/local/ssl/man/man3/BN_mod_mul_montgomery.3 0644 root root 7474 47493 1362466318 1 f none /usr/local/ssl/man/man3/BN_mod_mul_reciprocal.3 0644 root root 6636 46320 1362466318 1 s none /usr/local/ssl/man/man3/BN_mod_sqr.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mod_sub.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mod_word.3=BN_add_word.3 1 s none /usr/local/ssl/man/man3/BN_mpi2bn.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_mul.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mul_word.3=BN_add_word.3 1 f none /usr/local/ssl/man/man3/BN_new.3 0644 root root 5311 3415 1362466318 1 s none /usr/local/ssl/man/man3/BN_nnmod.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_num_bits.3=BN_num_bytes.3 1 s none /usr/local/ssl/man/man3/BN_num_bits_word.3=BN_num_bytes.3 1 f none /usr/local/ssl/man/man3/BN_num_bytes.3 0644 root root 5636 32619 1362466319 1 s none /usr/local/ssl/man/man3/BN_one.3=BN_zero.3 1 s none /usr/local/ssl/man/man3/BN_print.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_print_fp.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_pseudo_rand.3=BN_rand.3 1 f none /usr/local/ssl/man/man3/BN_rand.3 0644 root root 5934 61330 1362466319 1 s none /usr/local/ssl/man/man3/BN_rshift.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_rshift1.3=BN_set_bit.3 1 f none /usr/local/ssl/man/man3/BN_set_bit.3 0644 root root 6015 58192 1362466319 1 s none /usr/local/ssl/man/man3/BN_set_word.3=BN_zero.3 1 s none /usr/local/ssl/man/man3/BN_sqr.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_sub.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_sub_word.3=BN_add_word.3 1 f none /usr/local/ssl/man/man3/BN_swap.3 0644 root root 4110 33094 1362466319 1 s none /usr/local/ssl/man/man3/BN_to_montgomery.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_ucmp.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_value_one.3=BN_zero.3 1 f none /usr/local/ssl/man/man3/BN_zero.3 0644 root root 5453 15465 1362466319 1 s none /usr/local/ssl/man/man3/BUF_MEM_free.3=buffer.3 1 s none /usr/local/ssl/man/man3/BUF_MEM_grow.3=buffer.3 1 s none /usr/local/ssl/man/man3/BUF_MEM_new.3=buffer.3 1 s none /usr/local/ssl/man/man3/BUF_strdup.3=buffer.3 1 s none /usr/local/ssl/man/man3/CMS_ReceiptRequest_create0.3=CMS_get1_ReceiptRequest.3 1 s none /usr/local/ssl/man/man3/CMS_ReceiptRequest_get0_values.3=CMS_get1_ReceiptRequest.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_decrypt.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_kekri_get0_id.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_kekri_id_cmp.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_ktri_cert_cmp.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_ktri_get0_signer_id.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_set0_key.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_set0_pkey.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_type.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_SignerInfo_cert_cmp.3=CMS_get0_SignerInfos.3 1 s none /usr/local/ssl/man/man3/CMS_SignerInfo_get0_signer_id.3=CMS_get0_SignerInfos.3 1 s none /usr/local/ssl/man/man3/CMS_SignerInfo_sign.3=CMS_sign_add1_signer.3 1 f none /usr/local/ssl/man/man3/CMS_add0_cert.3 0644 root root 6096 5000 1362466319 1 s none /usr/local/ssl/man/man3/CMS_add0_crl.3=CMS_add0_cert.3 1 s none /usr/local/ssl/man/man3/CMS_add0_recipient_key.3=CMS_add1_recipient_cert.3 1 s none /usr/local/ssl/man/man3/CMS_add1_ReceiptRequest.3=CMS_get1_ReceiptRequest.3 1 s none /usr/local/ssl/man/man3/CMS_add1_cert.3=CMS_add0_cert.3 1 f none /usr/local/ssl/man/man3/CMS_add1_recipient_cert.3 0644 root root 6428 44360 1362466319 1 f none /usr/local/ssl/man/man3/CMS_compress.3 0644 root root 6551 53379 1362466319 1 f none /usr/local/ssl/man/man3/CMS_decrypt.3 0644 root root 6265 26592 1362466319 1 f none /usr/local/ssl/man/man3/CMS_encrypt.3 0644 root root 7928 43323 1362466319 1 f none /usr/local/ssl/man/man3/CMS_final.3 0644 root root 5006 46351 1362466319 1 f none /usr/local/ssl/man/man3/CMS_get0_RecipientInfos.3 0644 root root 9326 41804 1362466319 1 f none /usr/local/ssl/man/man3/CMS_get0_SignerInfos.3 0644 root root 6693 2274 1362466320 1 s none /usr/local/ssl/man/man3/CMS_get0_eContentType.3=CMS_get0_type.3 1 f none /usr/local/ssl/man/man3/CMS_get0_type.3 0644 root root 5942 61747 1362466320 1 f none /usr/local/ssl/man/man3/CMS_get1_ReceiptRequest.3 0644 root root 6878 17579 1362466320 1 s none /usr/local/ssl/man/man3/CMS_get1_certs.3=CMS_add0_cert.3 1 s none /usr/local/ssl/man/man3/CMS_get1_crls.3=CMS_add0_cert.3 1 s none /usr/local/ssl/man/man3/CMS_set1_eContentType.3=CMS_get0_type.3 1 s none /usr/local/ssl/man/man3/CMS_set1_signer_certs.3=CMS_get0_SignerInfos.3 1 f none /usr/local/ssl/man/man3/CMS_sign.3 0644 root root 9443 45120 1362466320 1 f none /usr/local/ssl/man/man3/CMS_sign_add1_signer.3 0644 root root 8331 13924 1362466320 1 f none /usr/local/ssl/man/man3/CMS_sign_receipt.3 0644 root root 5315 6899 1362466320 1 f none /usr/local/ssl/man/man3/CMS_uncompress.3 0644 root root 5486 23495 1362466320 1 f none /usr/local/ssl/man/man3/CMS_verify.3 0644 root root 9026 14051 1362466320 1 f none /usr/local/ssl/man/man3/CMS_verify_receipt.3 0644 root root 5278 4585 1362466320 1 s none /usr/local/ssl/man/man3/CONF_modules_finish.3=CONF_modules_free.3 1 f none /usr/local/ssl/man/man3/CONF_modules_free.3 0644 root root 5184 63056 1362466320 1 s none /usr/local/ssl/man/man3/CONF_modules_load.3=CONF_modules_load_file.3 1 f none /usr/local/ssl/man/man3/CONF_modules_load_file.3 0644 root root 6015 3007 1362466320 1 s none /usr/local/ssl/man/man3/CONF_modules_unload.3=CONF_modules_free.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_cmp.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_cpy.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_current.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_get_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_hash.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_set_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_destroy_dynlockid.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_get_ex_data.3=CRYPTO_set_ex_data.3 1 s none /usr/local/ssl/man/man3/CRYPTO_get_new_dynlockid.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_lock.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_num_locks.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_set_dynlock_create_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_set_dynlock_destroy_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_set_dynlock_lock_callback.3=threads.3 1 f none /usr/local/ssl/man/man3/CRYPTO_set_ex_data.3 0644 root root 5685 42013 1362466320 1 s none /usr/local/ssl/man/man3/CRYPTO_set_locking_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/DES_cbc_cksum.3=des.3 1 s none /usr/local/ssl/man/man3/DES_cfb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_cfb_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_crypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ecb2_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ecb3_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ecb_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede2_cbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede2_cfb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede2_ofb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede3_cbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede3_cbcm_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede3_cfb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede3_ofb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_enc_read.3=des.3 1 s none /usr/local/ssl/man/man3/DES_enc_write.3=des.3 1 s none /usr/local/ssl/man/man3/DES_fcrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_is_weak_key.3=des.3 1 s none /usr/local/ssl/man/man3/DES_key_sched.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ncbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ofb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ofb_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_pcbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_quad_cksum.3=des.3 1 s none /usr/local/ssl/man/man3/DES_random_key.3=des.3 1 s none /usr/local/ssl/man/man3/DES_set_key.3=des.3 1 s none /usr/local/ssl/man/man3/DES_set_key_checked.3=des.3 1 s none /usr/local/ssl/man/man3/DES_set_key_unchecked.3=des.3 1 s none /usr/local/ssl/man/man3/DES_set_odd_parity.3=des.3 1 s none /usr/local/ssl/man/man3/DES_string_to_2keys.3=des.3 1 s none /usr/local/ssl/man/man3/DES_string_to_key.3=des.3 1 s none /usr/local/ssl/man/man3/DES_xcbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DH_OpenSSL.3=DH_set_method.3 1 s none /usr/local/ssl/man/man3/DH_check.3=DH_generate_parameters.3 1 s none /usr/local/ssl/man/man3/DH_compute_key.3=DH_generate_key.3 1 s none /usr/local/ssl/man/man3/DH_free.3=DH_new.3 1 f none /usr/local/ssl/man/man3/DH_generate_key.3 0644 root root 5391 15609 1362466321 1 f none /usr/local/ssl/man/man3/DH_generate_parameters.3 0644 root root 6383 33074 1362466321 1 s none /usr/local/ssl/man/man3/DH_get_default_method.3=DH_set_method.3 1 s none /usr/local/ssl/man/man3/DH_get_ex_data.3=DH_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/DH_get_ex_new_index.3 0644 root root 4774 23815 1362466321 1 f none /usr/local/ssl/man/man3/DH_new.3 0644 root root 4763 23783 1362466321 1 s none /usr/local/ssl/man/man3/DH_new_method.3=DH_set_method.3 1 s none /usr/local/ssl/man/man3/DH_set_default_method.3=DH_set_method.3 1 s none /usr/local/ssl/man/man3/DH_set_ex_data.3=DH_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/DH_set_method.3 0644 root root 9392 20514 1362466321 1 f none /usr/local/ssl/man/man3/DH_size.3 0644 root root 4431 60723 1362466321 1 s none /usr/local/ssl/man/man3/DHparams_print.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DHparams_print_fp.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DSA_OpenSSL.3=DSA_set_method.3 1 s none /usr/local/ssl/man/man3/DSA_SIG_free.3=DSA_SIG_new.3 1 f none /usr/local/ssl/man/man3/DSA_SIG_new.3 0644 root root 4794 25271 1362466321 1 f none /usr/local/ssl/man/man3/DSA_do_sign.3 0644 root root 5172 59175 1362466321 1 s none /usr/local/ssl/man/man3/DSA_do_verify.3=DSA_do_sign.3 1 f none /usr/local/ssl/man/man3/DSA_dup_DH.3 0644 root root 4633 11410 1362466321 1 s none /usr/local/ssl/man/man3/DSA_free.3=DSA_new.3 1 f none /usr/local/ssl/man/man3/DSA_generate_key.3 0644 root root 4621 11805 1362466321 1 f none /usr/local/ssl/man/man3/DSA_generate_parameters.3 0644 root root 7152 30590 1362466321 1 s none /usr/local/ssl/man/man3/DSA_get_default_method.3=DSA_set_method.3 1 s none /usr/local/ssl/man/man3/DSA_get_ex_data.3=DSA_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/DSA_get_ex_new_index.3 0644 root root 4791 25171 1362466321 1 f none /usr/local/ssl/man/man3/DSA_new.3 0644 root root 4844 30656 1362466321 1 s none /usr/local/ssl/man/man3/DSA_new_method.3=DSA_set_method.3 1 s none /usr/local/ssl/man/man3/DSA_print.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DSA_print_fp.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DSA_set_default_method.3=DSA_set_method.3 1 s none /usr/local/ssl/man/man3/DSA_set_ex_data.3=DSA_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/DSA_set_method.3 0644 root root 10012 55652 1362466322 1 f none /usr/local/ssl/man/man3/DSA_sign.3 0644 root root 6239 16231 1362466322 1 s none /usr/local/ssl/man/man3/DSA_sign_setup.3=DSA_sign.3 1 f none /usr/local/ssl/man/man3/DSA_size.3 0644 root root 4435 60282 1362466322 1 s none /usr/local/ssl/man/man3/DSA_verify.3=DSA_sign.3 1 s none /usr/local/ssl/man/man3/DSAparams_print.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DSAparams_print_fp.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/ERR_GET_FUNC.3=ERR_GET_LIB.3 1 f none /usr/local/ssl/man/man3/ERR_GET_LIB.3 0644 root root 5376 10189 1362466322 1 s none /usr/local/ssl/man/man3/ERR_GET_REASON.3=ERR_GET_LIB.3 1 s none /usr/local/ssl/man/man3/ERR_PACK.3=ERR_load_strings.3 1 s none /usr/local/ssl/man/man3/ERR_add_error_data.3=ERR_put_error.3 1 f none /usr/local/ssl/man/man3/ERR_clear_error.3 0644 root root 4333 52941 1362466322 1 f none /usr/local/ssl/man/man3/ERR_error_string.3 0644 root root 6410 43619 1362466322 1 s none /usr/local/ssl/man/man3/ERR_error_string_n.3=ERR_error_string.3 1 s none /usr/local/ssl/man/man3/ERR_free_strings.3=ERR_load_crypto_strings.3 1 s none /usr/local/ssl/man/man3/ERR_func_error_string.3=ERR_error_string.3 1 f none /usr/local/ssl/man/man3/ERR_get_error.3 0644 root root 6769 6560 1362466322 1 s none /usr/local/ssl/man/man3/ERR_get_error_line.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_get_error_line_data.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_get_next_error_library.3=ERR_load_strings.3 1 s none /usr/local/ssl/man/man3/ERR_lib_error_string.3=ERR_error_string.3 1 s none /usr/local/ssl/man/man3/ERR_load_UI_strings.3=ui.3 1 f none /usr/local/ssl/man/man3/ERR_load_crypto_strings.3 0644 root root 5008 50313 1362466322 1 f none /usr/local/ssl/man/man3/ERR_load_strings.3 0644 root root 5265 2069 1362466322 1 s none /usr/local/ssl/man/man3/ERR_peek_error.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_error_line.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_error_line_data.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_last_error.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_last_error_line.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_last_error_line_data.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_pop_to_mark.3=ERR_set_mark.3 1 f none /usr/local/ssl/man/man3/ERR_print_errors.3 0644 root root 5298 9295 1362466322 1 s none /usr/local/ssl/man/man3/ERR_print_errors_fp.3=ERR_print_errors.3 1 f none /usr/local/ssl/man/man3/ERR_put_error.3 0644 root root 5019 48107 1362466322 1 s none /usr/local/ssl/man/man3/ERR_reason_error_string.3=ERR_error_string.3 1 f none /usr/local/ssl/man/man3/ERR_remove_state.3 0644 root root 4577 10196 1362466323 1 f none /usr/local/ssl/man/man3/ERR_set_mark.3 0644 root root 4710 20131 1362466323 1 f none /usr/local/ssl/man/man3/EVP_BytesToKey.3 0644 root root 6241 17607 1362466323 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_block_size.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_cipher.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_cleanup.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_ctrl.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_flags.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_get_app_data.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_init.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_iv_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_key_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_mode.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_nid.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_set_app_data.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_set_key_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_set_padding.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_type.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_asn1_to_param.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_block_size.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_flags.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_iv_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_key_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_mode.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_nid.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_param_to_asn1.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_type.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherFinal.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherFinal_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherInit.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherInit_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherUpdate.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptFinal.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptFinal_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptInit.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptInit_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptUpdate.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DigestFinal_ex.3=EVP_DigestInit.3 1 f none /usr/local/ssl/man/man3/EVP_DigestInit.3 0644 root root 15873 46619 1362466323 1 s none /usr/local/ssl/man/man3/EVP_DigestInit_ex.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_DigestSignFinal.3=EVP_DigestSignInit.3 1 f none /usr/local/ssl/man/man3/EVP_DigestSignInit.3 0644 root root 7698 22794 1362466323 1 s none /usr/local/ssl/man/man3/EVP_DigestSignUpdate.3=EVP_DigestSignInit.3 1 s none /usr/local/ssl/man/man3/EVP_DigestUpdate.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_DigestVerifyFinal.3=EVP_DigestVerifyInit.3 1 f none /usr/local/ssl/man/man3/EVP_DigestVerifyInit.3 0644 root root 7352 58365 1362466323 1 s none /usr/local/ssl/man/man3/EVP_DigestVerifyUpdate.3=EVP_DigestVerifyInit.3 1 s none /usr/local/ssl/man/man3/EVP_EncryptFinal.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_EncryptFinal_ex.3=EVP_EncryptInit.3 1 f none /usr/local/ssl/man/man3/EVP_EncryptInit.3 0644 root root 29087 6410 1362466323 1 s none /usr/local/ssl/man/man3/EVP_EncryptInit_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_EncryptUpdate.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_MAX_MD_SIZE.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_block_size.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_cleanup.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_copy.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_copy_ex.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_create.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_destroy.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_init.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_md.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_size.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_type.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_block_size.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_pkey_type.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_size.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_type.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_OpenFinal.3=EVP_OpenInit.3 1 f none /usr/local/ssl/man/man3/EVP_OpenInit.3 0644 root root 6013 1779 1362466323 1 s none /usr/local/ssl/man/man3/EVP_OpenUpdate.3=EVP_OpenInit.3 1 s none /usr/local/ssl/man/man3/EVP_PKEVP_PKEY_CTX_set_app_data.3=EVP_PKEY_keygen.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_CTX_ctrl.3 0644 root root 9940 17335 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_dup.3=EVP_PKEY_CTX_new.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_free.3=EVP_PKEY_CTX_new.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_get_app_data.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_get_cb.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_get_keygen_info.3=EVP_PKEY_keygen.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_CTX_new.3 0644 root root 5614 31288 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_new_id.3=EVP_PKEY_CTX_new.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_set_cb.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_assign_DH.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_assign_DSA.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_assign_EC_KEY.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_assign_RSA.3=EVP_PKEY_set1_RSA.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_cmp.3 0644 root root 5917 62402 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_cmp_parameters.3=EVP_PKEY_cmp.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_copy_parameters.3=EVP_PKEY_cmp.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_ctrl.3=EVP_PKEY_CTX_ctrl.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_ctrl_str.3=EVP_PKEY_CTX_ctrl.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_decrypt.3 0644 root root 6767 57658 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_decrypt_init.3=EVP_PKEY_decrypt.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_derive.3 0644 root root 6696 54092 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_derive_init.3=EVP_PKEY_derive.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_derive_set_peer.3=EVP_PKEY_derive.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_encrypt.3 0644 root root 6767 57854 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_encrypt_init.3=EVP_PKEY_encrypt.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_free.3=EVP_PKEY_new.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get1_DH.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get1_DSA.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get1_EC_KEY.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get1_RSA.3=EVP_PKEY_set1_RSA.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_get_default_digest.3 0644 root root 4991 45943 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get_default_digest_nid.3=EVP_PKEY_get_default_digest.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_keygen.3 0644 root root 9716 43324 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_keygen_init.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_missing_parameters.3=EVP_PKEY_cmp.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_new.3 0644 root root 4950 39857 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_paramgen.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_paramgen_init.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_print_params.3=EVP_PKEY_print_private.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_print_private.3 0644 root root 5710 38878 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_print_public.3=EVP_PKEY_print_private.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_set1_DH.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_set1_DSA.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_set1_EC_KEY.3=EVP_PKEY_set1_RSA.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_set1_RSA.3 0644 root root 6877 63984 1362466324 1 f none /usr/local/ssl/man/man3/EVP_PKEY_sign.3 0644 root root 6847 62186 1362466325 1 s none /usr/local/ssl/man/man3/EVP_PKEY_sign_init.3=EVP_PKEY_sign.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_type.3=EVP_PKEY_set1_RSA.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_verify.3 0644 root root 6845 2566 1362466325 1 s none /usr/local/ssl/man/man3/EVP_PKEY_verify_init.3=EVP_PKEY_verify.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_verify_recover.3 0644 root root 7402 51405 1362466325 1 s none /usr/local/ssl/man/man3/EVP_PKEY_verify_recover_init.3=EVP_PKEY_verify_recover.3 1 s none /usr/local/ssl/man/man3/EVP_SealFinal.3=EVP_SealInit.3 1 f none /usr/local/ssl/man/man3/EVP_SealInit.3 0644 root root 7183 40414 1362466325 1 s none /usr/local/ssl/man/man3/EVP_SealUpdate.3=EVP_SealInit.3 1 s none /usr/local/ssl/man/man3/EVP_SignFinal.3=EVP_SignInit.3 1 f none /usr/local/ssl/man/man3/EVP_SignInit.3 0644 root root 7847 34419 1362466325 1 s none /usr/local/ssl/man/man3/EVP_SignUpdate.3=EVP_SignInit.3 1 s none /usr/local/ssl/man/man3/EVP_VerifyFinal.3=EVP_VerifyInit.3 1 f none /usr/local/ssl/man/man3/EVP_VerifyInit.3 0644 root root 7441 231 1362466325 1 s none /usr/local/ssl/man/man3/EVP_VerifyUpdate.3=EVP_VerifyInit.3 1 s none /usr/local/ssl/man/man3/EVP_dss.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_dss1.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_cipherbyname.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_cipherbynid.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_cipherbyobj.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_digestbyname.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_digestbynid.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_digestbyobj.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_md2.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_md5.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_md_null.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_mdc2.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_ripemd160.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha1.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha224.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha256.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha384.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha512.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/HMAC.3=hmac.3 1 s none /usr/local/ssl/man/man3/HMAC_Final.3=hmac.3 1 s none /usr/local/ssl/man/man3/HMAC_Init.3=hmac.3 1 s none /usr/local/ssl/man/man3/HMAC_Update.3=hmac.3 1 s none /usr/local/ssl/man/man3/HMAC_cleanup.3=hmac.3 1 s none /usr/local/ssl/man/man3/MD2.3=md5.3 1 s none /usr/local/ssl/man/man3/MD2_Final.3=md5.3 1 s none /usr/local/ssl/man/man3/MD2_Init.3=md5.3 1 s none /usr/local/ssl/man/man3/MD2_Update.3=md5.3 1 s none /usr/local/ssl/man/man3/MD4.3=md5.3 1 s none /usr/local/ssl/man/man3/MD4_Final.3=md5.3 1 s none /usr/local/ssl/man/man3/MD4_Init.3=md5.3 1 s none /usr/local/ssl/man/man3/MD4_Update.3=md5.3 1 s none /usr/local/ssl/man/man3/MD5.3=md5.3 1 s none /usr/local/ssl/man/man3/MD5_Final.3=md5.3 1 s none /usr/local/ssl/man/man3/MD5_Init.3=md5.3 1 s none /usr/local/ssl/man/man3/MD5_Update.3=md5.3 1 s none /usr/local/ssl/man/man3/MDC2.3=mdc2.3 1 s none /usr/local/ssl/man/man3/MDC2_Final.3=mdc2.3 1 s none /usr/local/ssl/man/man3/MDC2_Init.3=mdc2.3 1 s none /usr/local/ssl/man/man3/MDC2_Update.3=mdc2.3 1 s none /usr/local/ssl/man/man3/OBJ_cleanup.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_cmp.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_create.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_dup.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_ln2nid.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_nid2ln.3=OBJ_nid2obj.3 1 f none /usr/local/ssl/man/man3/OBJ_nid2obj.3 0644 root root 9406 20547 1362466325 1 s none /usr/local/ssl/man/man3/OBJ_nid2sn.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_obj2nid.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_obj2txt.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_sn2nid.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_txt2nid.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_txt2obj.3=OBJ_nid2obj.3 1 f none /usr/local/ssl/man/man3/OPENSSL_Applink.3 0644 root root 4466 3313 1362466325 1 f none /usr/local/ssl/man/man3/OPENSSL_VERSION_NUMBER.3 0644 root root 6808 55699 1362466325 1 f none /usr/local/ssl/man/man3/OPENSSL_config.3 0644 root root 7287 56733 1362466325 1 f none /usr/local/ssl/man/man3/OPENSSL_ia32cap.3 0644 root root 5643 40125 1362466325 1 f none /usr/local/ssl/man/man3/OPENSSL_load_builtin_modules.3 0644 root root 5286 8115 1362466325 1 s none /usr/local/ssl/man/man3/OPENSSL_no_config.3=OPENSSL_config.3 1 f none /usr/local/ssl/man/man3/OpenSSL_add_all_algorithms.3 0644 root root 6033 10562 1362466326 1 s none /usr/local/ssl/man/man3/OpenSSL_add_all_ciphers.3=OpenSSL_add_all_algorithms.3 1 s none /usr/local/ssl/man/man3/OpenSSL_add_all_digests.3=OpenSSL_add_all_algorithms.3 1 s none /usr/local/ssl/man/man3/OpenSSL_add_ssl_algorithms.3=SSL_library_init.3 1 s none /usr/local/ssl/man/man3/PEM.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_DHparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_DSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_DSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_DSAparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_NETSCAPE_CERT_SEQUENCE.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_PKCS7.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_RSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_RSAPublicKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_RSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_X509.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_X509_AUX.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_X509_CRL.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_X509_REQ.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_DHparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_DSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_DSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_DSAparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_NETSCAPE_CERT_SEQUENCE.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_PKCS7.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_RSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_RSAPublicKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_RSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_X509.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_X509_AUX.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_X509_CRL.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_X509_REQ.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_DHparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_DSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_DSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_DSAparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_NETSCAPE_CERT_SEQUENCE.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PKCS7.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PKCS8PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PKCS8PrivateKey_nid.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_RSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_RSAPublicKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_RSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509_AUX.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509_CRL.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509_REQ.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509_REQ_NEW.3=pem.3 1 f none /usr/local/ssl/man/man3/PEM_write_bio_CMS_stream.3 0644 root root 4858 32006 1362466326 1 s none /usr/local/ssl/man/man3/PEM_write_bio_DHparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_DSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_DSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_DSAparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_NETSCAPE_CERT_SEQUENCE.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PKCS7.3=pem.3 1 f none /usr/local/ssl/man/man3/PEM_write_bio_PKCS7_stream.3 0644 root root 4853 30573 1362466326 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PKCS8PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PKCS8PrivateKey_nid.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_RSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_RSAPublicKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_RSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509_AUX.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509_CRL.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509_REQ.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509_REQ_NEW.3=pem.3 1 f none /usr/local/ssl/man/man3/PKCS12_create.3 0644 root root 6907 14862 1362466326 1 f none /usr/local/ssl/man/man3/PKCS12_parse.3 0644 root root 5677 37018 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_decrypt.3 0644 root root 5651 37258 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_encrypt.3 0644 root root 7044 26410 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_sign.3 0644 root root 8876 55939 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_sign_add_signer.3 0644 root root 7386 58111 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_verify.3 0644 root root 8824 57986 1362466326 1 s none /usr/local/ssl/man/man3/RAND_SSLeay.3=RAND_set_rand_method.3 1 f none /usr/local/ssl/man/man3/RAND_add.3 0644 root root 6836 10063 1362466326 1 f none /usr/local/ssl/man/man3/RAND_bytes.3 0644 root root 5473 24369 1362466326 1 f none /usr/local/ssl/man/man3/RAND_cleanup.3 0644 root root 4283 47437 1362466326 1 f none /usr/local/ssl/man/man3/RAND_egd.3 0644 root root 7452 63801 1362466327 1 s none /usr/local/ssl/man/man3/RAND_event.3=RAND_add.3 1 s none /usr/local/ssl/man/man3/RAND_file_name.3=RAND_load_file.3 1 s none /usr/local/ssl/man/man3/RAND_get_rand_method.3=RAND_set_rand_method.3 1 f none /usr/local/ssl/man/man3/RAND_load_file.3 0644 root root 5572 28982 1362466327 1 s none /usr/local/ssl/man/man3/RAND_pseudo_bytes.3=RAND_bytes.3 1 s none /usr/local/ssl/man/man3/RAND_screen.3=RAND_add.3 1 s none /usr/local/ssl/man/man3/RAND_seed.3=RAND_add.3 1 f none /usr/local/ssl/man/man3/RAND_set_rand_method.3 0644 root root 7224 35149 1362466327 1 s none /usr/local/ssl/man/man3/RAND_status.3=RAND_add.3 1 s none /usr/local/ssl/man/man3/RAND_write_file.3=RAND_load_file.3 1 s none /usr/local/ssl/man/man3/RC4.3=rc4.3 1 s none /usr/local/ssl/man/man3/RC4_set_key.3=rc4.3 1 s none /usr/local/ssl/man/man3/RIPEMD160.3=ripemd.3 1 s none /usr/local/ssl/man/man3/RIPEMD160_Final.3=ripemd.3 1 s none /usr/local/ssl/man/man3/RIPEMD160_Init.3=ripemd.3 1 s none /usr/local/ssl/man/man3/RIPEMD160_Update.3=ripemd.3 1 s none /usr/local/ssl/man/man3/RSA_PKCS1_SSLeay.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_blinding_off.3=RSA_blinding_on.3 1 f none /usr/local/ssl/man/man3/RSA_blinding_on.3 0644 root root 5033 48878 1362466327 1 f none /usr/local/ssl/man/man3/RSA_check_key.3 0644 root root 6393 37293 1362466327 1 s none /usr/local/ssl/man/man3/RSA_flags.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_free.3=RSA_new.3 1 f none /usr/local/ssl/man/man3/RSA_generate_key.3 0644 root root 5670 36564 1362466327 1 s none /usr/local/ssl/man/man3/RSA_get_default_method.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_get_ex_data.3=RSA_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/RSA_get_ex_new_index.3 0644 root root 9704 1246 1362466327 1 s none /usr/local/ssl/man/man3/RSA_get_method.3=RSA_set_method.3 1 f none /usr/local/ssl/man/man3/RSA_new.3 0644 root root 4831 29645 1362466327 1 s none /usr/local/ssl/man/man3/RSA_new_method.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_null_method.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_padding_add_PKCS1_OAEP.3=RSA_padding_add_PKCS1_type_1.3 1 f none /usr/local/ssl/man/man3/RSA_padding_add_PKCS1_type_1.3 0644 root root 8055 40013 1362466327 1 s none /usr/local/ssl/man/man3/RSA_padding_add_PKCS1_type_2.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_add_SSLv23.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_add_none.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_PKCS1_OAEP.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_PKCS1_type_1.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_PKCS1_type_2.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_SSLv23.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_none.3=RSA_padding_add_PKCS1_type_1.3 1 f none /usr/local/ssl/man/man3/RSA_print.3 0644 root root 5202 59024 1362466327 1 s none /usr/local/ssl/man/man3/RSA_print_fp.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/RSA_private_decrypt.3=RSA_public_encrypt.3 1 f none /usr/local/ssl/man/man3/RSA_private_encrypt.3 0644 root root 6066 7377 1362466327 1 s none /usr/local/ssl/man/man3/RSA_public_decrypt.3=RSA_private_encrypt.3 1 f none /usr/local/ssl/man/man3/RSA_public_encrypt.3 0644 root root 6655 52427 1362466328 1 s none /usr/local/ssl/man/man3/RSA_set_default_method.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_set_ex_data.3=RSA_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/RSA_set_method.3 0644 root root 12944 50379 1362466328 1 f none /usr/local/ssl/man/man3/RSA_sign.3 0644 root root 5892 56063 1362466328 1 f none /usr/local/ssl/man/man3/RSA_sign_ASN1_OCTET_STRING.3 0644 root root 5670 34817 1362466328 1 f none /usr/local/ssl/man/man3/RSA_size.3 0644 root root 4390 56880 1362466328 1 s none /usr/local/ssl/man/man3/RSA_verify.3=RSA_sign.3 1 s none /usr/local/ssl/man/man3/RSA_verify_ASN1_OCTET_STRING.3=RSA_sign_ASN1_OCTET_STRING.3 1 s none /usr/local/ssl/man/man3/SHA1.3=sha.3 1 s none /usr/local/ssl/man/man3/SHA1_Final.3=sha.3 1 s none /usr/local/ssl/man/man3/SHA1_Init.3=sha.3 1 s none /usr/local/ssl/man/man3/SHA1_Update.3=sha.3 1 f none /usr/local/ssl/man/man3/SMIME_read_CMS.3 0644 root root 5982 61819 1362466328 1 f none /usr/local/ssl/man/man3/SMIME_read_PKCS7.3 0644 root root 5998 61431 1362466328 1 f none /usr/local/ssl/man/man3/SMIME_write_CMS.3 0644 root root 6035 2347 1362466328 1 f none /usr/local/ssl/man/man3/SMIME_write_PKCS7.3 0644 root root 6071 3784 1362466328 1 s none /usr/local/ssl/man/man3/SSL.3=ssl.3 1 s none /usr/local/ssl/man/man3/SSL_CIPHER_description.3=SSL_CIPHER_get_name.3 1 s none /usr/local/ssl/man/man3/SSL_CIPHER_get_bits.3=SSL_CIPHER_get_name.3 1 f none /usr/local/ssl/man/man3/SSL_CIPHER_get_name.3 0644 root root 8301 51794 1362466334 1 s none /usr/local/ssl/man/man3/SSL_CIPHER_get_version.3=SSL_CIPHER_get_name.3 1 f none /usr/local/ssl/man/man3/SSL_COMP_add_compression_method.3 0644 root root 6344 41070 1362466334 1 s none /usr/local/ssl/man/man3/SSL_CTX_add_client_CA.3=SSL_CTX_set_client_CA_list.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_add_extra_chain_cert.3 0644 root root 4936 42674 1362466334 1 f none /usr/local/ssl/man/man3/SSL_CTX_add_session.3 0644 root root 6312 29649 1362466334 1 s none /usr/local/ssl/man/man3/SSL_CTX_callback_ctrl.3=SSL_CTX_ctrl.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_check_private_key.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_clear_options.3=SSL_CTX_set_options.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_ctrl.3 0644 root root 4839 31517 1362466334 1 f none /usr/local/ssl/man/man3/SSL_CTX_flush_sessions.3 0644 root root 5425 21837 1362466334 1 f none /usr/local/ssl/man/man3/SSL_CTX_free.3 0644 root root 5076 53737 1362466334 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_cert_store.3=SSL_CTX_set_cert_store.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_client_CA_list.3=SSL_get_client_CA_list.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_client_cert_cb.3=SSL_CTX_set_client_cert_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_ex_data.3=SSL_CTX_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_get_ex_new_index.3 0644 root root 5642 32714 1362466335 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_info_callback.3=SSL_CTX_set_info_callback.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_max_cert_list.3=SSL_CTX_set_max_cert_list.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_mode.3=SSL_CTX_set_mode.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_options.3=SSL_CTX_set_options.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_quiet_shutdown.3=SSL_CTX_set_quiet_shutdown.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_session_cache_mode.3=SSL_CTX_set_session_cache_mode.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_timeout.3=SSL_CTX_set_timeout.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_verify_callback.3=SSL_CTX_get_verify_mode.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_verify_depth.3=SSL_CTX_get_verify_mode.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_get_verify_mode.3 0644 root root 5661 42296 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_load_verify_locations.3 0644 root root 8367 13334 1362466335 1 s none /usr/local/ssl/man/man3/SSL_CTX_need_tmp_rsa.3=SSL_CTX_set_tmp_rsa_callback.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_new.3 0644 root root 7662 20423 1362466335 1 s none /usr/local/ssl/man/man3/SSL_CTX_remove_session.3=SSL_CTX_add_session.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_accept.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_accept_good.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_accept_renegotiate.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_cache_full.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_cb_hits.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_connect.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_connect_good.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_connect_renegotiate.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_get_cache_size.3=SSL_CTX_sess_set_cache_size.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_get_get_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_get_new_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_get_remove_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_hits.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_misses.3=SSL_CTX_sess_number.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_sess_number.3 0644 root root 6861 21045 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_sess_set_cache_size.3 0644 root root 5445 22350 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_sess_set_get_cb.3 0644 root root 7967 46865 1362466335 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_set_new_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_set_remove_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_timeouts.3=SSL_CTX_sess_number.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_sessions.3 0644 root root 4711 23061 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_cert_store.3 0644 root root 5858 59636 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_cert_verify_callback.3 0644 root root 6910 24959 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_cipher_list.3 0644 root root 6704 2341 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_client_CA_list.3 0644 root root 7374 55678 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_client_cert_cb.3 0644 root root 8450 29161 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_default_passwd_cb.3 0644 root root 6854 20381 1362466336 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_default_passwd_cb_userdata.3=SSL_CTX_set_default_passwd_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_ex_data.3=SSL_CTX_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_generate_session_id.3 0644 root root 10550 605 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_info_callback.3 0644 root root 9686 9648 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_max_cert_list.3 0644 root root 6828 14900 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_mode.3 0644 root root 7190 38537 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_msg_callback.3 0644 root root 7752 26902 1362466336 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_msg_callback_arg.3=SSL_CTX_set_msg_callback.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_options.3 0644 root root 18223 12711 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_psk_client_callback.3 0644 root root 5764 50653 1362466336 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_psk_server_callback.3=SSL_CTX_use_psk_identity_hint.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_quiet_shutdown.3 0644 root root 6197 21951 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_session_cache_mode.3 0644 root root 9391 37529 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_session_id_context.3 0644 root root 6790 10770 1362466337 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_ssl_version.3 0644 root root 5495 22352 1362466337 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_timeout.3 0644 root root 5798 56236 1362466337 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_tmp_dh.3=SSL_CTX_set_tmp_dh_callback.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_tmp_dh_callback.3 0644 root root 10955 31624 1362466337 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_tmp_rsa.3=SSL_CTX_set_tmp_rsa_callback.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_tmp_rsa_callback.3 0644 root root 10939 32051 1362466337 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_verify.3 0644 root root 16207 27985 1362466337 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_verify_depth.3=SSL_CTX_set_verify.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_PrivateKey.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_PrivateKey_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_PrivateKey_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_RSAPrivateKey.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_RSAPrivateKey_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_RSAPrivateKey_file.3=SSL_CTX_use_certificate.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_use_certificate.3 0644 root root 12987 33692 1362466337 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_certificate_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_certificate_chain_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_certificate_file.3=SSL_CTX_use_certificate.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_use_psk_identity_hint.3 0644 root root 6933 23762 1362466337 1 f none /usr/local/ssl/man/man3/SSL_SESSION_free.3 0644 root root 6049 8317 1362466337 1 s none /usr/local/ssl/man/man3/SSL_SESSION_get_ex_data.3=SSL_SESSION_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_SESSION_get_ex_new_index.3 0644 root root 6075 5120 1362466337 1 f none /usr/local/ssl/man/man3/SSL_SESSION_get_time.3 0644 root root 6008 3378 1362466338 1 s none /usr/local/ssl/man/man3/SSL_SESSION_get_timeout.3=SSL_SESSION_get_time.3 1 s none /usr/local/ssl/man/man3/SSL_SESSION_set_ex_data.3=SSL_SESSION_get_ex_new_index.3 1 s none /usr/local/ssl/man/man3/SSL_SESSION_set_time.3=SSL_SESSION_get_time.3 1 s none /usr/local/ssl/man/man3/SSL_SESSION_set_timeout.3=SSL_SESSION_get_time.3 1 f none /usr/local/ssl/man/man3/SSL_accept.3 0644 root root 6899 12609 1362466338 1 s none /usr/local/ssl/man/man3/SSL_add_client_CA.3=SSL_CTX_set_client_CA_list.3 1 s none /usr/local/ssl/man/man3/SSL_add_session.3=SSL_CTX_add_session.3 1 s none /usr/local/ssl/man/man3/SSL_alert_desc_string.3=SSL_alert_type_string.3 1 s none /usr/local/ssl/man/man3/SSL_alert_desc_string_long.3=SSL_alert_type_string.3 1 f none /usr/local/ssl/man/man3/SSL_alert_type_string.3 0644 root root 13959 28750 1362466338 1 s none /usr/local/ssl/man/man3/SSL_alert_type_string_long.3=SSL_alert_type_string.3 1 s none /usr/local/ssl/man/man3/SSL_callback_ctrl.3=SSL_CTX_ctrl.3 1 s none /usr/local/ssl/man/man3/SSL_check_private_key.3=SSL_CTX_use_certificate.3 1 f none /usr/local/ssl/man/man3/SSL_clear.3 0644 root root 6271 28646 1362466338 1 s none /usr/local/ssl/man/man3/SSL_clear_options.3=SSL_CTX_set_options.3 1 f none /usr/local/ssl/man/man3/SSL_connect.3 0644 root root 6650 57626 1362466338 1 s none /usr/local/ssl/man/man3/SSL_ctrl.3=SSL_CTX_ctrl.3 1 f none /usr/local/ssl/man/man3/SSL_do_handshake.3 0644 root root 6910 15381 1362466338 1 s none /usr/local/ssl/man/man3/SSL_flush_sessions.3=SSL_CTX_flush_sessions.3 1 f none /usr/local/ssl/man/man3/SSL_free.3 0644 root root 5268 5731 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_SSL_CTX.3 0644 root root 4324 51112 1362466338 1 s none /usr/local/ssl/man/man3/SSL_get_accept_state.3=SSL_set_connect_state.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher.3=SSL_get_current_cipher.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher_bits.3=SSL_get_current_cipher.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher_list.3=SSL_get_ciphers.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher_name.3=SSL_get_current_cipher.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher_version.3=SSL_get_current_cipher.3 1 f none /usr/local/ssl/man/man3/SSL_get_ciphers.3 0644 root root 5078 52566 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_client_CA_list.3 0644 root root 5354 9996 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_current_cipher.3 0644 root root 5313 7436 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_default_timeout.3 0644 root root 4917 41233 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_error.3 0644 root root 8926 54533 1362466338 1 s none /usr/local/ssl/man/man3/SSL_get_ex_data.3=SSL_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_get_ex_data_X509_STORE_CTX_idx.3 0644 root root 5720 42756 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_ex_new_index.3 0644 root root 5790 45499 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_fd.3 0644 root root 4784 26052 1362466339 1 s none /usr/local/ssl/man/man3/SSL_get_info_callback.3=SSL_CTX_set_info_callback.3 1 s none /usr/local/ssl/man/man3/SSL_get_max_cert_list.3=SSL_CTX_set_max_cert_list.3 1 s none /usr/local/ssl/man/man3/SSL_get_mode.3=SSL_CTX_set_mode.3 1 s none /usr/local/ssl/man/man3/SSL_get_msg_callback_arg.3=SSL_CTX_set_msg_callback.3 1 s none /usr/local/ssl/man/man3/SSL_get_options.3=SSL_CTX_set_options.3 1 f none /usr/local/ssl/man/man3/SSL_get_peer_cert_chain.3 0644 root root 5288 6273 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_peer_certificate.3 0644 root root 5374 15161 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_psk_identity.3 0644 root root 4877 39056 1362466339 1 s none /usr/local/ssl/man/man3/SSL_get_psk_identity_hint.3=SSL_get_psk_identity.3 1 s none /usr/local/ssl/man/man3/SSL_get_quiet_shutdown.3=SSL_CTX_set_quiet_shutdown.3 1 f none /usr/local/ssl/man/man3/SSL_get_rbio.3 0644 root root 4566 5759 1362466339 1 s none /usr/local/ssl/man/man3/SSL_get_secure_renegotiation_support.3=SSL_CTX_set_options.3 1 f none /usr/local/ssl/man/man3/SSL_get_session.3 0644 root root 6244 24437 1362466339 1 s none /usr/local/ssl/man/man3/SSL_get_shutdown.3=SSL_set_shutdown.3 1 s none /usr/local/ssl/man/man3/SSL_get_ssl_method.3=SSL_CTX_set_ssl_version.3 1 s none /usr/local/ssl/man/man3/SSL_get_verify_callback.3=SSL_CTX_get_verify_mode.3 1 s none /usr/local/ssl/man/man3/SSL_get_verify_depth.3=SSL_CTX_get_verify_mode.3 1 s none /usr/local/ssl/man/man3/SSL_get_verify_mode.3=SSL_CTX_get_verify_mode.3 1 f none /usr/local/ssl/man/man3/SSL_get_verify_result.3 0644 root root 5293 9353 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_version.3 0644 root root 4571 7601 1362466339 1 s none /usr/local/ssl/man/man3/SSL_has_matching_session_id.3=SSL_CTX_set_generate_session_id.3 1 f none /usr/local/ssl/man/man3/SSL_library_init.3 0644 root root 5516 22606 1362466339 1 f none /usr/local/ssl/man/man3/SSL_load_client_CA_file.3 0644 root root 5310 2633 1362466339 1 s none /usr/local/ssl/man/man3/SSL_load_error_strings.3=ERR_load_crypto_strings.3 1 s none /usr/local/ssl/man/man3/SSL_need_tmp_rsa.3=SSL_CTX_set_tmp_rsa_callback.3 1 f none /usr/local/ssl/man/man3/SSL_new.3 0644 root root 4790 26709 1362466339 1 f none /usr/local/ssl/man/man3/SSL_pending.3 0644 root root 4934 39608 1362466340 1 f none /usr/local/ssl/man/man3/SSL_read.3 0644 root root 9196 23996 1362466340 1 s none /usr/local/ssl/man/man3/SSL_remove_session.3=SSL_CTX_add_session.3 1 f none /usr/local/ssl/man/man3/SSL_rstate_string.3 0644 root root 5511 21172 1362466340 1 s none /usr/local/ssl/man/man3/SSL_rstate_string_long.3=SSL_rstate_string.3 1 f none /usr/local/ssl/man/man3/SSL_session_reused.3 0644 root root 4678 18571 1362466340 1 f none /usr/local/ssl/man/man3/SSL_set_bio.3 0644 root root 4734 21472 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_cipher_list.3=SSL_CTX_set_cipher_list.3 1 s none /usr/local/ssl/man/man3/SSL_set_client_CA_list.3=SSL_CTX_set_client_CA_list.3 1 f none /usr/local/ssl/man/man3/SSL_set_connect_state.3 0644 root root 5671 42540 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_ex_data.3=SSL_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_set_fd.3 0644 root root 5298 5689 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_generate_session_id.3=SSL_CTX_set_generate_session_id.3 1 s none /usr/local/ssl/man/man3/SSL_set_info_callback.3=SSL_CTX_set_info_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_max_cert_list.3=SSL_CTX_set_max_cert_list.3 1 s none /usr/local/ssl/man/man3/SSL_set_mode.3=SSL_CTX_set_mode.3 1 s none /usr/local/ssl/man/man3/SSL_set_msg_callback.3=SSL_CTX_set_msg_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_options.3=SSL_CTX_set_options.3 1 s none /usr/local/ssl/man/man3/SSL_set_psk_client_callback.3=SSL_CTX_set_psk_client_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_psk_server_callback.3=SSL_CTX_use_psk_identity_hint.3 1 s none /usr/local/ssl/man/man3/SSL_set_quiet_shutdown.3=SSL_CTX_set_quiet_shutdown.3 1 f none /usr/local/ssl/man/man3/SSL_set_session.3 0644 root root 5514 26044 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_session_id_context.3=SSL_CTX_set_session_id_context.3 1 f none /usr/local/ssl/man/man3/SSL_set_shutdown.3 0644 root root 6035 3993 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_ssl_method.3=SSL_CTX_set_ssl_version.3 1 s none /usr/local/ssl/man/man3/SSL_set_tmp_dh.3=SSL_CTX_set_tmp_dh_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_tmp_dh_callback.3=SSL_CTX_set_tmp_dh_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_tmp_rsa.3=SSL_CTX_set_tmp_rsa_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_tmp_rsa_callback.3=SSL_CTX_set_tmp_rsa_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_verify.3=SSL_CTX_set_verify.3 1 s none /usr/local/ssl/man/man3/SSL_set_verify_depth.3=SSL_CTX_set_verify.3 1 f none /usr/local/ssl/man/man3/SSL_set_verify_result.3 0644 root root 4857 36832 1362466340 1 f none /usr/local/ssl/man/man3/SSL_shutdown.3 0644 root root 11790 60065 1362466340 1 f none /usr/local/ssl/man/man3/SSL_state_string.3 0644 root root 5226 3877 1362466340 1 s none /usr/local/ssl/man/man3/SSL_state_string_long.3=SSL_state_string.3 1 s none /usr/local/ssl/man/man3/SSL_use_PrivateKey.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_PrivateKey_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_PrivateKey_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_RSAPrivateKey.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_RSAPrivateKey_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_RSAPrivateKey_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_certificate.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_certificate_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_certificate_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_psk_identity_hint.3=SSL_CTX_use_psk_identity_hint.3 1 f none /usr/local/ssl/man/man3/SSL_want.3 0644 root root 6309 27501 1362466340 1 s none /usr/local/ssl/man/man3/SSL_want_nothing.3=SSL_want.3 1 s none /usr/local/ssl/man/man3/SSL_want_read.3=SSL_want.3 1 s none /usr/local/ssl/man/man3/SSL_want_write.3=SSL_want.3 1 s none /usr/local/ssl/man/man3/SSL_want_x509_lookup.3=SSL_want.3 1 f none /usr/local/ssl/man/man3/SSL_write.3 0644 root root 8245 5619 1362466341 1 s none /usr/local/ssl/man/man3/SSLeay.3=OPENSSL_VERSION_NUMBER.3 1 s none /usr/local/ssl/man/man3/SSLeay_add_ssl_algorithms.3=SSL_library_init.3 1 s none /usr/local/ssl/man/man3/SSLeay_version.3=OPENSSL_VERSION_NUMBER.3 1 s none /usr/local/ssl/man/man3/UI_OpenSSL.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_error_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_info_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_input_boolean.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_input_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_user_data.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_verify_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_construct_prompt.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_ctrl.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_error_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_info_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_input_boolean.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_input_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_verify_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_free.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_get0_result.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_get0_user_data.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_get_default_method.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_get_method.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_new.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_new_method.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_process.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_set_default_method.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_set_method.3=ui.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_create_by_NID.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_create_by_OBJ.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_create_by_txt.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_get_data.3=X509_NAME_ENTRY_get_object.3 1 f none /usr/local/ssl/man/man3/X509_NAME_ENTRY_get_object.3 0644 root root 6925 5942 1362466328 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_set_data.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_set_object.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_add_entry.3=X509_NAME_add_entry_by_txt.3 1 s none /usr/local/ssl/man/man3/X509_NAME_add_entry_by_NID.3=X509_NAME_add_entry_by_txt.3 1 s none /usr/local/ssl/man/man3/X509_NAME_add_entry_by_OBJ.3=X509_NAME_add_entry_by_txt.3 1 f none /usr/local/ssl/man/man3/X509_NAME_add_entry_by_txt.3 0644 root root 8482 4066 1362466328 1 s none /usr/local/ssl/man/man3/X509_NAME_delete_entry.3=X509_NAME_add_entry_by_txt.3 1 s none /usr/local/ssl/man/man3/X509_NAME_entry_count.3=X509_NAME_get_index_by_NID.3 1 s none /usr/local/ssl/man/man3/X509_NAME_get_entry.3=X509_NAME_get_index_by_NID.3 1 f none /usr/local/ssl/man/man3/X509_NAME_get_index_by_NID.3 0644 root root 7750 8585 1362466328 1 s none /usr/local/ssl/man/man3/X509_NAME_get_index_by_OBJ.3=X509_NAME_get_index_by_NID.3 1 s none /usr/local/ssl/man/man3/X509_NAME_get_text_by_NID.3=X509_NAME_get_index_by_NID.3 1 s none /usr/local/ssl/man/man3/X509_NAME_get_text_by_OBJ.3=X509_NAME_get_index_by_NID.3 1 s none /usr/local/ssl/man/man3/X509_NAME_oneline.3=X509_NAME_print_ex.3 1 s none /usr/local/ssl/man/man3/X509_NAME_print.3=X509_NAME_print_ex.3 1 f none /usr/local/ssl/man/man3/X509_NAME_print_ex.3 0644 root root 8885 47655 1362466329 1 s none /usr/local/ssl/man/man3/X509_NAME_print_ex_fp.3=X509_NAME_print_ex.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_cleanup.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_free.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get0_param.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get1_chain.3=X509_STORE_CTX_get_error.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get_current_cert.3=X509_STORE_CTX_get_error.3 1 f none /usr/local/ssl/man/man3/X509_STORE_CTX_get_error.3 0644 root root 19523 60063 1362466329 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get_error_depth.3=X509_STORE_CTX_get_error.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get_ex_data.3=X509_STORE_CTX_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/X509_STORE_CTX_get_ex_new_index.3 0644 root root 5147 54962 1362466329 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_init.3=X509_STORE_CTX_new.3 1 f none /usr/local/ssl/man/man3/X509_STORE_CTX_new.3 0644 root root 9014 50575 1362466329 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set0_crls.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set0_param.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_cert.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_chain.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_default.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_error.3=X509_STORE_CTX_get_error.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_ex_data.3=X509_STORE_CTX_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/X509_STORE_CTX_set_verify_cb.3 0644 root root 9804 16220 1362466329 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_trusted_stack.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_set_verify_cb.3=X509_STORE_set_verify_cb_func.3 1 f none /usr/local/ssl/man/man3/X509_STORE_set_verify_cb_func.3 0644 root root 5422 11280 1362466329 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_add0_policy.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_clear_flags.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_get_depth.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_get_flags.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set1_policies.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_depth.3=X509_VERIFY_PARAM_set_flags.3 1 f none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_flags.3 0644 root root 11532 11617 1362466329 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_purpose.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_time.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_trust.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_free.3=X509_new.3 1 f none /usr/local/ssl/man/man3/X509_new.3 0644 root root 4772 22690 1362466329 1 f none /usr/local/ssl/man/man3/X509_verify_cert.3 0644 root root 5452 21885 1362466329 1 s none /usr/local/ssl/man/man3/X509_verify_cert_error_string.3=X509_STORE_CTX_get_error.3 1 f none /usr/local/ssl/man/man3/bio.3 0644 root root 5751 43203 1362466329 1 f none /usr/local/ssl/man/man3/blowfish.3 0644 root root 9095 14221 1362466329 1 f none /usr/local/ssl/man/man3/bn.3 0644 root root 11221 61669 1362466330 1 s none /usr/local/ssl/man/man3/bn_add_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_check_top.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_cmp_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_div_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_dump.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_expand.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_expand2.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_fix_top.3=bn_internal.3 1 f none /usr/local/ssl/man/man3/bn_internal.3 0644 root root 14857 23667 1362466330 1 s none /usr/local/ssl/man/man3/bn_mul_add_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_comba4.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_comba8.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_high.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_low_normal.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_low_recursive.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_normal.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_part_recursive.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_recursive.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_print.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_set_high.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_set_low.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_set_max.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_comba4.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_comba8.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_normal.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_recursive.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sub_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_wexpand.3=bn_internal.3 1 f none /usr/local/ssl/man/man3/buffer.3 0644 root root 6104 7196 1362466330 1 f none /usr/local/ssl/man/man3/crypto.3 0644 root root 6588 40849 1362466330 1 s none /usr/local/ssl/man/man3/d2i_509_CRL_fp.3=d2i_X509_CRL.3 1 f none /usr/local/ssl/man/man3/d2i_ASN1_OBJECT.3 0644 root root 4445 58409 1362466330 1 f none /usr/local/ssl/man/man3/d2i_DHparams.3 0644 root root 4426 59320 1362466330 1 s none /usr/local/ssl/man/man3/d2i_DSAPrivateKey.3=d2i_DSAPublicKey.3 1 f none /usr/local/ssl/man/man3/d2i_DSAPublicKey.3 0644 root root 6856 4433 1362466330 1 s none /usr/local/ssl/man/man3/d2i_DSA_PUBKEY.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/d2i_DSA_SIG.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/d2i_Netscape_RSA.3=d2i_RSAPublicKey.3 1 f none /usr/local/ssl/man/man3/d2i_PKCS8PrivateKey.3 0644 root root 6077 57790 1362466330 1 s none /usr/local/ssl/man/man3/d2i_PKCS8PrivateKey_bio.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/d2i_PKCS8PrivateKey_fp.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/d2i_RSAPrivateKey.3=d2i_RSAPublicKey.3 1 f none /usr/local/ssl/man/man3/d2i_RSAPublicKey.3 0644 root root 5913 54007 1362466330 1 s none /usr/local/ssl/man/man3/d2i_RSA_PUBKEY.3=d2i_RSAPublicKey.3 1 f none /usr/local/ssl/man/man3/d2i_SSL_SESSION.3 0644 root root 6685 62000 1362466341 1 f none /usr/local/ssl/man/man3/d2i_X509.3 0644 root root 11108 24525 1362466331 1 f none /usr/local/ssl/man/man3/d2i_X509_ALGOR.3 0644 root root 4477 62777 1362466331 1 f none /usr/local/ssl/man/man3/d2i_X509_CRL.3 0644 root root 4714 12787 1362466331 1 s none /usr/local/ssl/man/man3/d2i_X509_CRL_bio.3=d2i_X509_CRL.3 1 f none /usr/local/ssl/man/man3/d2i_X509_NAME.3 0644 root root 4558 3761 1362466331 1 f none /usr/local/ssl/man/man3/d2i_X509_REQ.3 0644 root root 4688 10663 1362466331 1 s none /usr/local/ssl/man/man3/d2i_X509_REQ_bio.3=d2i_X509_REQ.3 1 s none /usr/local/ssl/man/man3/d2i_X509_REQ_fp.3=d2i_X509_REQ.3 1 f none /usr/local/ssl/man/man3/d2i_X509_SIG.3 0644 root root 4462 61050 1362466331 1 s none /usr/local/ssl/man/man3/d2i_X509_bio.3=d2i_X509.3 1 s none /usr/local/ssl/man/man3/d2i_X509_fp.3=d2i_X509.3 1 f none /usr/local/ssl/man/man3/des.3 0644 root root 21744 757 1362466331 1 s none /usr/local/ssl/man/man3/des_read_2passwords.3=ui_compat.3 1 s none /usr/local/ssl/man/man3/des_read_password.3=ui_compat.3 1 s none /usr/local/ssl/man/man3/des_read_pw.3=ui_compat.3 1 s none /usr/local/ssl/man/man3/des_read_pw_string.3=ui_compat.3 1 f none /usr/local/ssl/man/man3/dh.3 0644 root root 6491 29155 1362466331 1 f none /usr/local/ssl/man/man3/dsa.3 0644 root root 8096 21263 1362466331 1 f none /usr/local/ssl/man/man3/ecdsa.3 0644 root root 11578 25597 1362466332 1 f none /usr/local/ssl/man/man3/engine.3 0644 root root 35675 62491 1362466332 1 f none /usr/local/ssl/man/man3/err.3 0644 root root 10975 44392 1362466332 1 f none /usr/local/ssl/man/man3/evp.3 0644 root root 5745 52135 1362466332 1 f none /usr/local/ssl/man/man3/hmac.3 0644 root root 7843 19210 1362466332 1 s none /usr/local/ssl/man/man3/i2d_ASN1_OBJECT.3=d2i_ASN1_OBJECT.3 1 f none /usr/local/ssl/man/man3/i2d_CMS_bio_stream.3 0644 root root 4908 35060 1362466332 1 s none /usr/local/ssl/man/man3/i2d_DHparams.3=d2i_DHparams.3 1 s none /usr/local/ssl/man/man3/i2d_DSAPrivateKey.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_DSAPublicKey.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_DSA_PUBKEY.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_DSA_SIG.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_Netscape_RSA.3=d2i_RSAPublicKey.3 1 f none /usr/local/ssl/man/man3/i2d_PKCS7_bio_stream.3 0644 root root 4903 33627 1362466332 1 s none /usr/local/ssl/man/man3/i2d_PKCS8PrivateKey_bio.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/i2d_PKCS8PrivateKey_fp.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/i2d_PKCS8PrivateKey_nid_bio.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/i2d_PKCS8PrivateKey_nid_fp.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/i2d_RSAPrivateKey.3=d2i_RSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_RSAPublicKey.3=d2i_RSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_RSA_PUBKEY.3=d2i_RSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_SSL_SESSION.3=d2i_SSL_SESSION.3 1 s none /usr/local/ssl/man/man3/i2d_X509.3=d2i_X509.3 1 s none /usr/local/ssl/man/man3/i2d_X509_ALGOR.3=d2i_X509_ALGOR.3 1 s none /usr/local/ssl/man/man3/i2d_X509_CRL.3=d2i_X509_CRL.3 1 s none /usr/local/ssl/man/man3/i2d_X509_CRL_bio.3=d2i_X509_CRL.3 1 s none /usr/local/ssl/man/man3/i2d_X509_CRL_fp.3=d2i_X509_CRL.3 1 s none /usr/local/ssl/man/man3/i2d_X509_NAME.3=d2i_X509_NAME.3 1 s none /usr/local/ssl/man/man3/i2d_X509_REQ.3=d2i_X509_REQ.3 1 s none /usr/local/ssl/man/man3/i2d_X509_REQ_bio.3=d2i_X509_REQ.3 1 s none /usr/local/ssl/man/man3/i2d_X509_REQ_fp.3=d2i_X509_REQ.3 1 s none /usr/local/ssl/man/man3/i2d_X509_SIG.3=d2i_X509_SIG.3 1 s none /usr/local/ssl/man/man3/i2d_X509_bio.3=d2i_X509.3 1 s none /usr/local/ssl/man/man3/i2d_X509_fp.3=d2i_X509.3 1 s none /usr/local/ssl/man/man3/lh_delete.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_doall.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_doall_arg.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_error.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_free.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_insert.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_new.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_node_stats.3=lh_stats.3 1 s none /usr/local/ssl/man/man3/lh_node_stats_bio.3=lh_stats.3 1 s none /usr/local/ssl/man/man3/lh_node_usage_stats.3=lh_stats.3 1 s none /usr/local/ssl/man/man3/lh_node_usage_stats_bio.3=lh_stats.3 1 s none /usr/local/ssl/man/man3/lh_retrieve.3=lhash.3 1 f none /usr/local/ssl/man/man3/lh_stats.3 0644 root root 5853 57141 1362466332 1 s none /usr/local/ssl/man/man3/lh_stats_bio.3=lh_stats.3 1 f none /usr/local/ssl/man/man3/lhash.3 0644 root root 18595 25269 1362466332 1 f none /usr/local/ssl/man/man3/md5.3 0644 root root 7351 27059 1362466332 1 f none /usr/local/ssl/man/man3/mdc2.3 0644 root root 5805 40333 1362466333 1 f none /usr/local/ssl/man/man3/pem.3 0644 root root 24691 4781 1362466333 1 f none /usr/local/ssl/man/man3/rand.3 0644 root root 10295 46922 1362466333 1 f none /usr/local/ssl/man/man3/rc4.3 0644 root root 5816 50747 1362466333 1 f none /usr/local/ssl/man/man3/ripemd.3 0644 root root 5875 43227 1362466333 1 f none /usr/local/ssl/man/man3/rsa.3 0644 root root 8216 36860 1362466333 1 f none /usr/local/ssl/man/man3/sha.3 0644 root root 6113 1530 1362466333 1 f none /usr/local/ssl/man/man3/ssl.3 0644 root root 46605 24634 1362466341 1 f none /usr/local/ssl/man/man3/threads.3 0644 root root 12114 1015 1362466333 1 f none /usr/local/ssl/man/man3/ui.3 0644 root root 12800 11503 1362466334 1 f none /usr/local/ssl/man/man3/ui_compat.3 0644 root root 5997 7718 1362466334 1 f none /usr/local/ssl/man/man3/x509.3 0644 root root 5965 56143 1362466334 1 d none /usr/local/ssl/man/man5 0755 root root 1 f none /usr/local/ssl/man/man5/config.5 0644 root root 14819 61316 1362466311 1 f none /usr/local/ssl/man/man5/x509v3_config.5 0644 root root 22443 64446 1362466315 1 d none /usr/local/ssl/man/man7 0755 root root 1 f none /usr/local/ssl/man/man7/des_modes.7 0644 root root 10175 40942 1362466331 1 d none /usr/local/ssl/misc 0755 root root 1 f none /usr/local/ssl/misc/CA.pl 0755 root root 5685 37995 1362466342 1 f none /usr/local/ssl/misc/CA.sh 0755 root root 5175 1711 1362466342 1 f none /usr/local/ssl/misc/c_hash 0755 root root 119 8936 1362466342 1 f none /usr/local/ssl/misc/c_info 0755 root root 152 11254 1362466342 1 f none /usr/local/ssl/misc/c_issuer 0755 root root 112 8495 1362466342 1 f none /usr/local/ssl/misc/c_name 0755 root root 110 8289 1362466342 1 f none /usr/local/ssl/misc/tsget 0755 root root 6419 47528 1362466342 1 f none /usr/local/ssl/openssl.cnf 0644 root root 10835 11846 1362466342 1 d none /usr/local/ssl/private 0755 root root 1 i checkinstall 790 2505 1362467353 1 i pkginfo 260 19973 1362467182 07070100000000000000000000000000000000000000010000000000000000000000000000000000000000000000000000000b00000000TRAILER!!!07070100048b39000081a40000000000000000000000015135996e00000104000000b600010002ffffffffffffffff0000000800000000pkginfoPKG=openssl NAME=openssl 1.0.1e i86pc Solaris 11 VERSION=1.0.1e PSTAMP=5th March 2013 VENDOR=The OpenSSL Project EMAIL=http://www.openssl.org/ DESC=Open Secure Sockets Layer ARCH=i386 CATEGORY=utility CLASSES=none BASEDIR=/ ISTATES=S s 1 2 3 RSTATES=S s 1 2 3 07070100048b38000081a40000000000000000000000015135996e000187cd000000b600010002ffffffffffffffff0000000700000000pkgmap: 1 39732 1 d none /usr ? ? ? 1 d none /usr/local ? ? ? 1 d none /usr/local/bin 0755 root root 1 f none /usr/local/bin/c_rehash 0755 root root 4263 2880 1362466342 1 f none /usr/local/bin/openssl 0755 root root 781464 20194 1362466342 1 d none /usr/local/include 0755 root root 1 d none /usr/local/include/openssl 0755 root root 1 f none /usr/local/include/openssl/aes.h 0644 root root 5507 58161 1362466341 1 f none /usr/local/include/openssl/asn1.h 0644 root root 52190 38969 1362466341 1 f none /usr/local/include/openssl/asn1_mac.h 0644 root root 19143 57898 1362466341 1 f none /usr/local/include/openssl/asn1t.h 0644 root root 30092 25250 1362466341 1 f none /usr/local/include/openssl/bio.h 0644 root root 32987 34097 1362466341 1 f none /usr/local/include/openssl/blowfish.h 0644 root root 5143 24257 1362466341 1 f none /usr/local/include/openssl/bn.h 0644 root root 36185 50177 1362466341 1 f none /usr/local/include/openssl/buffer.h 0644 root root 4646 55710 1362466341 1 f none /usr/local/include/openssl/camellia.h 0644 root root 4956 10364 1362466341 1 f none /usr/local/include/openssl/cast.h 0644 root root 4492 44581 1362466341 1 f none /usr/local/include/openssl/cmac.h 0644 root root 3244 60353 1362466342 1 f none /usr/local/include/openssl/cms.h 0644 root root 19927 41890 1362466342 1 f none /usr/local/include/openssl/comp.h 0644 root root 1978 28645 1362466342 1 f none /usr/local/include/openssl/conf.h 0644 root root 9848 3123 1362466341 1 f none /usr/local/include/openssl/conf_api.h 0644 root root 4080 9563 1362466341 1 f none /usr/local/include/openssl/crypto.h 0644 root root 24337 19026 1362466341 1 f none /usr/local/include/openssl/des.h 0644 root root 10849 55778 1362466341 1 f none /usr/local/include/openssl/des_old.h 0644 root root 18238 48461 1362466341 1 f none /usr/local/include/openssl/dh.h 0644 root root 9979 64451 1362466341 1 f none /usr/local/include/openssl/dsa.h 0644 root root 12057 30299 1362466341 1 f none /usr/local/include/openssl/dso.h 0644 root root 18095 38398 1362466341 1 f none /usr/local/include/openssl/dtls1.h 0644 root root 8026 63952 1362466342 1 f none /usr/local/include/openssl/e_os2.h 0644 root root 10444 23195 1362466341 1 f none /usr/local/include/openssl/ebcdic.h 0644 root root 540 47941 1362466341 1 f none /usr/local/include/openssl/ec.h 0644 root root 46413 56303 1362466341 1 f none /usr/local/include/openssl/ecdh.h 0644 root root 4682 43390 1362466341 1 f none /usr/local/include/openssl/ecdsa.h 0644 root root 10510 64542 1362466341 1 f none /usr/local/include/openssl/engine.h 0644 root root 40585 27372 1362466341 1 f none /usr/local/include/openssl/err.h 0644 root root 15862 4222 1362466341 1 f none /usr/local/include/openssl/evp.h 0644 root root 52791 65319 1362466341 1 f none /usr/local/include/openssl/hmac.h 0644 root root 4476 40756 1362466341 1 f none /usr/local/include/openssl/idea.h 0644 root root 4469 43521 1362466341 1 f none /usr/local/include/openssl/krb5_asn.h 0644 root root 7642 35465 1362466342 1 f none /usr/local/include/openssl/kssl.h 0644 root root 6064 28392 1362466342 1 f none /usr/local/include/openssl/lhash.h 0644 root root 9092 27166 1362466341 1 f none /usr/local/include/openssl/md4.h 0644 root root 4692 49456 1362466341 1 f none /usr/local/include/openssl/md5.h 0644 root root 4692 49489 1362466341 1 f none /usr/local/include/openssl/mdc2.h 0644 root root 3917 59579 1362466341 1 f none /usr/local/include/openssl/modes.h 0644 root root 5619 10181 1362466341 1 f none /usr/local/include/openssl/obj_mac.h 0644 root root 136214 36798 1362466341 1 f none /usr/local/include/openssl/objects.h 0644 root root 36641 52204 1362466341 1 f none /usr/local/include/openssl/ocsp.h 0644 root root 24041 62204 1362466342 1 f none /usr/local/include/openssl/opensslconf.h 0644 root root 6371 41876 1362466341 1 f none /usr/local/include/openssl/opensslv.h 0644 root root 3752 45726 1362466341 1 f none /usr/local/include/openssl/ossl_typ.h 0644 root root 7397 22039 1362466341 1 f none /usr/local/include/openssl/pem.h 0644 root root 21992 19216 1362466341 1 f none /usr/local/include/openssl/pem2.h 0644 root root 2863 31540 1362466341 1 f none /usr/local/include/openssl/pkcs12.h 0644 root root 12654 57182 1362466342 1 f none /usr/local/include/openssl/pkcs7.h 0644 root root 18064 2734 1362466342 1 f none /usr/local/include/openssl/pqueue.h 0644 root root 3580 29045 1362466342 1 f none /usr/local/include/openssl/rand.h 0644 root root 5534 65103 1362466341 1 f none /usr/local/include/openssl/rc2.h 0644 root root 4405 35880 1362466341 1 f none /usr/local/include/openssl/rc4.h 0644 root root 3797 52171 1362466341 1 f none /usr/local/include/openssl/ripemd.h 0644 root root 4327 25625 1362466341 1 f none /usr/local/include/openssl/rsa.h 0644 root root 22870 5778 1362466341 1 f none /usr/local/include/openssl/safestack.h 0644 root root 184155 25492 1362466341 1 f none /usr/local/include/openssl/seed.h 0644 root root 5714 60632 1362466341 1 f none /usr/local/include/openssl/sha.h 0644 root root 7636 15612 1362466341 1 f none /usr/local/include/openssl/srp.h 0644 root root 5378 29851 1362466342 1 f none /usr/local/include/openssl/srtp.h 0644 root root 6644 14172 1362466342 1 f none /usr/local/include/openssl/ssl.h 0644 root root 103414 45647 1362466342 1 f none /usr/local/include/openssl/ssl2.h 0644 root root 10755 53980 1362466342 1 f none /usr/local/include/openssl/ssl23.h 0644 root root 3744 44724 1362466342 1 f none /usr/local/include/openssl/ssl3.h 0644 root root 26746 41372 1362466342 1 f none /usr/local/include/openssl/stack.h 0644 root root 4412 35454 1362466341 1 f none /usr/local/include/openssl/symhacks.h 0644 root root 23941 40398 1362466341 1 f none /usr/local/include/openssl/tls1.h 0644 root root 35062 17998 1362466342 1 f none /usr/local/include/openssl/ts.h 0644 root root 31006 60169 1362466342 1 f none /usr/local/include/openssl/txt_db.h 0644 root root 4481 38340 1362466341 1 f none /usr/local/include/openssl/ui.h 0644 root root 16656 29887 1362466342 1 f none /usr/local/include/openssl/ui_compat.h 0644 root root 3439 16714 1362466342 1 f none /usr/local/include/openssl/whrlpool.h 0644 root root 1019 16704 1362466341 1 f none /usr/local/include/openssl/x509.h 0644 root root 45041 1201 1362466341 1 f none /usr/local/include/openssl/x509_vfy.h 0644 root root 22408 56970 1362466341 1 f none /usr/local/include/openssl/x509v3.h 0644 root root 32713 3182 1362466341 1 d none /usr/local/lib 0755 root root 1 d none /usr/local/lib/engines 0755 root root 1 f none /usr/local/lib/engines/lib4758cca.so 0555 root root 21424 7356 1362466342 1 f none /usr/local/lib/engines/libaep.so 0555 root root 21068 54841 1362466342 1 f none /usr/local/lib/engines/libatalla.so 0555 root root 17288 40322 1362466342 1 f none /usr/local/lib/engines/libcapi.so 0555 root root 5352 46508 1362466342 1 f none /usr/local/lib/engines/libchil.so 0555 root root 26964 49790 1362466342 1 f none /usr/local/lib/engines/libcswift.so 0555 root root 23868 33034 1362466342 1 f none /usr/local/lib/engines/libgmp.so 0555 root root 5332 43538 1362466342 1 f none /usr/local/lib/engines/libgost.so 0555 root root 127912 51492 1362466342 1 f none /usr/local/lib/engines/libnuron.so 0555 root root 14836 14277 1362466342 1 f none /usr/local/lib/engines/libpadlock.so 0555 root root 5372 48530 1362466342 1 f none /usr/local/lib/engines/libsureware.so 0555 root root 26680 62505 1362466342 1 f none /usr/local/lib/engines/libubsec.so 0555 root root 21756 27377 1362466342 1 f none /usr/local/lib/libcrypto.a 0644 root root 4017024 36222 1362466342 1 s none /usr/local/lib/libcrypto.so=libcrypto.so.1.0.0 1 s none /usr/local/lib/libcrypto.so.0.9.7=libcrypto.so.0.9.8 1 f none /usr/local/lib/libcrypto.so.0.9.8 0755 root root 2337652 9148 1362467112 1 f none /usr/local/lib/libcrypto.so.1.0.0 0555 root root 2785108 63545 1362466342 1 f none /usr/local/lib/libssl.a 0644 root root 680244 44793 1362466342 1 s none /usr/local/lib/libssl.so=libssl.so.1.0.0 1 s none /usr/local/lib/libssl.so.0.9.7=libssl.so.0.9.8 1 f none /usr/local/lib/libssl.so.0.9.8 0755 root root 448196 8189 1362467112 1 f none /usr/local/lib/libssl.so.1.0.0 0555 root root 544040 32694 1362466342 1 d none /usr/local/lib/pkgconfig 0755 root root 1 f none /usr/local/lib/pkgconfig/libcrypto.pc 0644 root root 275 25165 1362466342 1 f none /usr/local/lib/pkgconfig/libssl.pc 0644 root root 290 26474 1362466342 1 f none /usr/local/lib/pkgconfig/openssl.pc 0644 root root 300 27406 1362466342 1 d none /usr/local/ssl 0755 root root 1 d none /usr/local/ssl/certs 0755 root root 1 d none /usr/local/ssl/man 0755 root root 1 d none /usr/local/ssl/man/man1 0755 root root 1 f none /usr/local/ssl/man/man1/CA.pl.1 0644 root root 10157 32057 1362466311 1 f none /usr/local/ssl/man/man1/asn1parse.1 0644 root root 9689 26054 1362466311 1 f none /usr/local/ssl/man/man1/ca.1 0644 root root 29641 33968 1362466311 1 f none /usr/local/ssl/man/man1/ciphers.1 0644 root root 22121 411 1362466311 1 f none /usr/local/ssl/man/man1/cms.1 0644 root root 26811 17097 1362466311 1 f none /usr/local/ssl/man/man1/crl.1 0644 root root 6627 47364 1362466311 1 f none /usr/local/ssl/man/man1/crl2pkcs7.1 0644 root root 6715 61222 1362466311 1 f none /usr/local/ssl/man/man1/dgst.1 0644 root root 8650 33804 1362466311 1 f none /usr/local/ssl/man/man1/dhparam.1 0644 root root 8341 6029 1362466311 1 f none /usr/local/ssl/man/man1/dsa.1 0644 root root 9035 68 1362466312 1 f none /usr/local/ssl/man/man1/dsaparam.1 0644 root root 7185 37562 1362466312 1 f none /usr/local/ssl/man/man1/ec.1 0644 root root 10337 48711 1362466312 1 f none /usr/local/ssl/man/man1/ecparam.1 0644 root root 9568 46488 1362466312 1 f none /usr/local/ssl/man/man1/enc.1 0644 root root 14921 3013 1362466312 1 f none /usr/local/ssl/man/man1/errstr.1 0644 root root 4577 7821 1362466312 1 f none /usr/local/ssl/man/man1/gendsa.1 0644 root root 5760 47543 1362466312 1 f none /usr/local/ssl/man/man1/genpkey.1 0644 root root 10591 52935 1362466312 1 f none /usr/local/ssl/man/man1/genrsa.1 0644 root root 6771 5444 1362466312 1 s none /usr/local/ssl/man/man1/md2.1=dgst.1 1 s none /usr/local/ssl/man/man1/md4.1=dgst.1 1 s none /usr/local/ssl/man/man1/md5.1=dgst.1 1 s none /usr/local/ssl/man/man1/mdc2.1=dgst.1 1 f none /usr/local/ssl/man/man1/nseq.1 0644 root root 5739 46402 1362466312 1 f none /usr/local/ssl/man/man1/ocsp.1 0644 root root 18890 35316 1362466312 1 f none /usr/local/ssl/man/man1/openssl.1 0644 root root 15893 49691 1362466312 1 f none /usr/local/ssl/man/man1/passwd.1 0644 root root 5859 54853 1362466313 1 f none /usr/local/ssl/man/man1/pkcs12.1 0644 root root 17416 9366 1362466313 1 f none /usr/local/ssl/man/man1/pkcs7.1 0644 root root 6611 46381 1362466313 1 f none /usr/local/ssl/man/man1/pkcs8.1 0644 root root 13255 28469 1362466313 1 f none /usr/local/ssl/man/man1/pkey.1 0644 root root 7753 23376 1362466313 1 f none /usr/local/ssl/man/man1/pkeyparam.1 0644 root root 5550 29610 1362466313 1 f none /usr/local/ssl/man/man1/pkeyutl.1 0644 root root 10714 19571 1362466313 1 f none /usr/local/ssl/man/man1/rand.1 0644 root root 5107 54168 1362466313 1 f none /usr/local/ssl/man/man1/req.1 0644 root root 29521 17415 1362466313 1 s none /usr/local/ssl/man/man1/ripemd160.1=dgst.1 1 f none /usr/local/ssl/man/man1/rsa.1 0644 root root 10229 40340 1362466313 1 f none /usr/local/ssl/man/man1/rsautl.1 0644 root root 9775 8272 1362466313 1 f none /usr/local/ssl/man/man1/s_client.1 0644 root root 15029 15162 1362466313 1 f none /usr/local/ssl/man/man1/s_server.1 0644 root root 16071 32987 1362466314 1 f none /usr/local/ssl/man/man1/s_time.1 0644 root root 10562 20833 1362466314 1 f none /usr/local/ssl/man/man1/sess_id.1 0644 root root 8279 57778 1362466314 1 s none /usr/local/ssl/man/man1/sha.1=dgst.1 1 s none /usr/local/ssl/man/man1/sha1.1=dgst.1 1 f none /usr/local/ssl/man/man1/smime.1 0644 root root 20596 43919 1362466314 1 f none /usr/local/ssl/man/man1/speed.1 0644 root root 4882 37145 1362466314 1 f none /usr/local/ssl/man/man1/spkac.1 0644 root root 7901 32626 1362466314 1 f none /usr/local/ssl/man/man1/ts.1 0644 root root 26628 53722 1362466314 1 f none /usr/local/ssl/man/man1/tsget.1 0644 root root 10967 34719 1362466314 1 f none /usr/local/ssl/man/man1/verify.1 0644 root root 22062 32262 1362466314 1 f none /usr/local/ssl/man/man1/version.1 0644 root root 4807 25455 1362466314 1 f none /usr/local/ssl/man/man1/x509.1 0644 root root 35448 22912 1362466314 1 d none /usr/local/ssl/man/man3 0755 root root 1 s none /usr/local/ssl/man/man3/ASN1_OBJECT_free.3=ASN1_OBJECT_new.3 1 f none /usr/local/ssl/man/man3/ASN1_OBJECT_new.3 0644 root root 5173 55808 1362466315 1 s none /usr/local/ssl/man/man3/ASN1_STRING_cmp.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_data.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_dup.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_free.3=ASN1_STRING_new.3 1 f none /usr/local/ssl/man/man3/ASN1_STRING_length.3 0644 root root 6953 12455 1362466315 1 s none /usr/local/ssl/man/man3/ASN1_STRING_length_set.3=ASN1_STRING_length.3 1 f none /usr/local/ssl/man/man3/ASN1_STRING_new.3 0644 root root 4943 35202 1362466315 1 f none /usr/local/ssl/man/man3/ASN1_STRING_print_ex.3 0644 root root 8081 48524 1362466315 1 s none /usr/local/ssl/man/man3/ASN1_STRING_print_ex_fp.3=ASN1_STRING_print_ex.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_set.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_type.3=ASN1_STRING_length.3 1 s none /usr/local/ssl/man/man3/ASN1_STRING_type_new.3=ASN1_STRING_new.3 1 f none /usr/local/ssl/man/man3/ASN1_generate_nconf.3 0644 root root 13630 14084 1362466315 1 s none /usr/local/ssl/man/man3/ASN1_generate_v3.3=ASN1_generate_nconf.3 1 s none /usr/local/ssl/man/man3/BF_cbc_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_cfb64_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_decrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_ecb_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_ofb64_encrypt.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_options.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BF_set_key.3=blowfish.3 1 s none /usr/local/ssl/man/man3/BIO_append_filename.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_callback_ctrl.3=BIO_ctrl.3 1 f none /usr/local/ssl/man/man3/BIO_ctrl.3 0644 root root 9443 34824 1362466315 1 s none /usr/local/ssl/man/man3/BIO_ctrl_get_read_request.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_ctrl_get_write_guarantee.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_ctrl_pending.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_ctrl_reset_read_request.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_ctrl_wpending.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_debug_callback.3=BIO_set_callback.3 1 s none /usr/local/ssl/man/man3/BIO_destroy_bio_pair.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_do_accept.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_do_connect.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_eof.3=BIO_ctrl.3 1 f none /usr/local/ssl/man/man3/BIO_f_base64.3 0644 root root 6053 60418 1362466315 1 f none /usr/local/ssl/man/man3/BIO_f_buffer.3 0644 root root 6892 13103 1362466315 1 f none /usr/local/ssl/man/man3/BIO_f_cipher.3 0644 root root 6703 63013 1362466315 1 f none /usr/local/ssl/man/man3/BIO_f_md.3 0644 root root 9012 47235 1362466315 1 f none /usr/local/ssl/man/man3/BIO_f_null.3 0644 root root 4558 5555 1362466316 1 f none /usr/local/ssl/man/man3/BIO_f_ssl.3 0644 root root 15386 49842 1362466316 1 f none /usr/local/ssl/man/man3/BIO_find_type.3 0644 root root 7126 62431 1362466316 1 s none /usr/local/ssl/man/man3/BIO_flush.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_free.3=BIO_new.3 1 s none /usr/local/ssl/man/man3/BIO_free_all.3=BIO_new.3 1 s none /usr/local/ssl/man/man3/BIO_get_accept_port.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_get_bind_mode.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_get_callback.3=BIO_set_callback.3 1 s none /usr/local/ssl/man/man3/BIO_get_callback_arg.3=BIO_set_callback.3 1 s none /usr/local/ssl/man/man3/BIO_get_cipher_ctx.3=BIO_f_cipher.3 1 s none /usr/local/ssl/man/man3/BIO_get_cipher_status.3=BIO_f_cipher.3 1 s none /usr/local/ssl/man/man3/BIO_get_close.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_get_conn_hostname.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_get_conn_int_port.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_get_conn_ip.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_get_conn_port.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_get_fd.3=BIO_s_fd.3 1 s none /usr/local/ssl/man/man3/BIO_get_fp.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_get_info_callback.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_get_md.3=BIO_f_md.3 1 s none /usr/local/ssl/man/man3/BIO_get_md_ctx.3=BIO_f_md.3 1 s none /usr/local/ssl/man/man3/BIO_get_mem_data.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_get_mem_ptr.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_get_num_renegotiates.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_get_read_request.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_get_retry_BIO.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_get_retry_reason.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_get_ssl.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_get_write_buf_size.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_get_write_guarantee.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_gets.3=BIO_read.3 1 s none /usr/local/ssl/man/man3/BIO_int_ctrl.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_make_bio_pair.3=BIO_s_bio.3 1 f none /usr/local/ssl/man/man3/BIO_new.3 0644 root root 6047 64968 1362466316 1 f none /usr/local/ssl/man/man3/BIO_new_CMS.3 0644 root root 6202 20993 1362466316 1 s none /usr/local/ssl/man/man3/BIO_new_bio_pair.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_new_buffer_ssl_connect.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_new_fd.3=BIO_s_fd.3 1 s none /usr/local/ssl/man/man3/BIO_new_file.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_new_fp.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_new_mem_buf.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_new_socket.3=BIO_s_socket.3 1 s none /usr/local/ssl/man/man3/BIO_new_ssl.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_new_ssl_connect.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_next.3=BIO_find_type.3 1 s none /usr/local/ssl/man/man3/BIO_pending.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_pop.3=BIO_push.3 1 s none /usr/local/ssl/man/man3/BIO_ptr_ctrl.3=BIO_ctrl.3 1 f none /usr/local/ssl/man/man3/BIO_push.3 0644 root root 6063 64055 1362466316 1 s none /usr/local/ssl/man/man3/BIO_puts.3=BIO_read.3 1 f none /usr/local/ssl/man/man3/BIO_read.3 0644 root root 6532 48488 1362466316 1 s none /usr/local/ssl/man/man3/BIO_read_filename.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_reset.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_retry_type.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_rw_filename.3=BIO_s_file.3 1 f none /usr/local/ssl/man/man3/BIO_s_accept.3 0644 root root 11781 35266 1362466316 1 f none /usr/local/ssl/man/man3/BIO_s_bio.3 0644 root root 12392 34384 1362466316 1 f none /usr/local/ssl/man/man3/BIO_s_connect.3 0644 root root 11535 26352 1362466316 1 f none /usr/local/ssl/man/man3/BIO_s_fd.3 0644 root root 6897 6404 1362466317 1 f none /usr/local/ssl/man/man3/BIO_s_file.3 0644 root root 9075 56431 1362466317 1 f none /usr/local/ssl/man/man3/BIO_s_mem.3 0644 root root 8320 579 1362466317 1 f none /usr/local/ssl/man/man3/BIO_s_null.3 0644 root root 4761 23823 1362466317 1 f none /usr/local/ssl/man/man3/BIO_s_socket.3 0644 root root 5673 36488 1362466317 1 s none /usr/local/ssl/man/man3/BIO_seek.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_set.3=BIO_new.3 1 s none /usr/local/ssl/man/man3/BIO_set_accept_bios.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_set_accept_port.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_set_bind_mode.3=BIO_s_accept.3 1 f none /usr/local/ssl/man/man3/BIO_set_callback.3 0644 root root 7885 23503 1362466317 1 s none /usr/local/ssl/man/man3/BIO_set_callback_arg.3=BIO_set_callback.3 1 s none /usr/local/ssl/man/man3/BIO_set_cipher.3=BIO_f_cipher.3 1 s none /usr/local/ssl/man/man3/BIO_set_close.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_set_conn_hostname.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_conn_int_port.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_conn_ip.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_conn_port.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_fd.3=BIO_s_fd.3 1 s none /usr/local/ssl/man/man3/BIO_set_fp.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BIO_set_info_callback.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_set_md.3=BIO_f_md.3 1 s none /usr/local/ssl/man/man3/BIO_set_mem_buf.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_set_mem_eof_return.3=BIO_s_mem.3 1 s none /usr/local/ssl/man/man3/BIO_set_nbio.3=BIO_s_connect.3 1 s none /usr/local/ssl/man/man3/BIO_set_nbio_accept.3=BIO_s_accept.3 1 s none /usr/local/ssl/man/man3/BIO_set_ssl.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_set_ssl_mode.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_set_ssl_renegotiate_bytes.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_set_ssl_renegotiate_timeout.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_set_write_buf_size.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_should_io_special.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_should_read.3=BIO_should_retry.3 1 f none /usr/local/ssl/man/man3/BIO_should_retry.3 0644 root root 9124 10563 1362466317 1 s none /usr/local/ssl/man/man3/BIO_should_write.3=BIO_should_retry.3 1 s none /usr/local/ssl/man/man3/BIO_shutdown_wr.3=BIO_s_bio.3 1 s none /usr/local/ssl/man/man3/BIO_ssl_copy_session_id.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_ssl_shutdown.3=BIO_f_ssl.3 1 s none /usr/local/ssl/man/man3/BIO_tell.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_vfree.3=BIO_new.3 1 s none /usr/local/ssl/man/man3/BIO_wpending.3=BIO_ctrl.3 1 s none /usr/local/ssl/man/man3/BIO_write.3=BIO_read.3 1 s none /usr/local/ssl/man/man3/BIO_write_filename.3=BIO_s_file.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_convert.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_convert_ex.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_create_param.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_free.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_get_flags.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_get_thread_id.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_invert.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_invert_ex.3=BN_BLINDING_new.3 1 f none /usr/local/ssl/man/man3/BN_BLINDING_new.3 0644 root root 9080 50898 1362466317 1 s none /usr/local/ssl/man/man3/BN_BLINDING_set_flags.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_set_thread_id.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_BLINDING_update.3=BN_BLINDING_new.3 1 s none /usr/local/ssl/man/man3/BN_CTX_end.3=BN_CTX_start.3 1 s none /usr/local/ssl/man/man3/BN_CTX_free.3=BN_CTX_new.3 1 s none /usr/local/ssl/man/man3/BN_CTX_get.3=BN_CTX_start.3 1 s none /usr/local/ssl/man/man3/BN_CTX_init.3=BN_CTX_new.3 1 f none /usr/local/ssl/man/man3/BN_CTX_new.3 0644 root root 5478 18513 1362466317 1 f none /usr/local/ssl/man/man3/BN_CTX_start.3 0644 root root 5517 22314 1362466317 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_copy.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_free.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_init.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_new.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_MONT_CTX_set.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_RECP_CTX_free.3=BN_mod_mul_reciprocal.3 1 s none /usr/local/ssl/man/man3/BN_RECP_CTX_init.3=BN_mod_mul_reciprocal.3 1 s none /usr/local/ssl/man/man3/BN_RECP_CTX_new.3=BN_mod_mul_reciprocal.3 1 s none /usr/local/ssl/man/man3/BN_RECP_CTX_set.3=BN_mod_mul_reciprocal.3 1 f none /usr/local/ssl/man/man3/BN_add.3 0644 root root 8862 28087 1362466318 1 f none /usr/local/ssl/man/man3/BN_add_word.3 0644 root root 5745 37789 1362466318 1 s none /usr/local/ssl/man/man3/BN_bin2bn.3=BN_bn2bin.3 1 f none /usr/local/ssl/man/man3/BN_bn2bin.3 0644 root root 7780 16762 1362466318 1 s none /usr/local/ssl/man/man3/BN_bn2dec.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_bn2hex.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_bn2mpi.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_clear.3=BN_new.3 1 s none /usr/local/ssl/man/man3/BN_clear_bit.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_clear_free.3=BN_new.3 1 f none /usr/local/ssl/man/man3/BN_cmp.3 0644 root root 5205 56898 1362466318 1 f none /usr/local/ssl/man/man3/BN_copy.3 0644 root root 4605 8212 1362466318 1 s none /usr/local/ssl/man/man3/BN_dec2bn.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_div.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_div_recp.3=BN_mod_mul_reciprocal.3 1 s none /usr/local/ssl/man/man3/BN_div_word.3=BN_add_word.3 1 s none /usr/local/ssl/man/man3/BN_dup.3=BN_copy.3 1 s none /usr/local/ssl/man/man3/BN_exp.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_free.3=BN_new.3 1 s none /usr/local/ssl/man/man3/BN_from_montgomery.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_gcd.3=BN_add.3 1 f none /usr/local/ssl/man/man3/BN_generate_prime.3 0644 root root 7384 52194 1362466318 1 s none /usr/local/ssl/man/man3/BN_get_word.3=BN_zero.3 1 s none /usr/local/ssl/man/man3/BN_hex2bn.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_init.3=BN_new.3 1 s none /usr/local/ssl/man/man3/BN_is_bit_set.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_is_odd.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_is_one.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_is_prime.3=BN_generate_prime.3 1 s none /usr/local/ssl/man/man3/BN_is_prime_fasttest.3=BN_generate_prime.3 1 s none /usr/local/ssl/man/man3/BN_is_word.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_is_zero.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_lshift.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_lshift1.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_mask_bits.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_mod.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mod_add.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mod_exp.3=BN_add.3 1 f none /usr/local/ssl/man/man3/BN_mod_inverse.3 0644 root root 4822 26920 1362466318 1 s none /usr/local/ssl/man/man3/BN_mod_mul.3=BN_add.3 1 f none /usr/local/ssl/man/man3/BN_mod_mul_montgomery.3 0644 root root 7474 47493 1362466318 1 f none /usr/local/ssl/man/man3/BN_mod_mul_reciprocal.3 0644 root root 6636 46320 1362466318 1 s none /usr/local/ssl/man/man3/BN_mod_sqr.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mod_sub.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mod_word.3=BN_add_word.3 1 s none /usr/local/ssl/man/man3/BN_mpi2bn.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_mul.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_mul_word.3=BN_add_word.3 1 f none /usr/local/ssl/man/man3/BN_new.3 0644 root root 5311 3415 1362466318 1 s none /usr/local/ssl/man/man3/BN_nnmod.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_num_bits.3=BN_num_bytes.3 1 s none /usr/local/ssl/man/man3/BN_num_bits_word.3=BN_num_bytes.3 1 f none /usr/local/ssl/man/man3/BN_num_bytes.3 0644 root root 5636 32619 1362466319 1 s none /usr/local/ssl/man/man3/BN_one.3=BN_zero.3 1 s none /usr/local/ssl/man/man3/BN_print.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_print_fp.3=BN_bn2bin.3 1 s none /usr/local/ssl/man/man3/BN_pseudo_rand.3=BN_rand.3 1 f none /usr/local/ssl/man/man3/BN_rand.3 0644 root root 5934 61330 1362466319 1 s none /usr/local/ssl/man/man3/BN_rshift.3=BN_set_bit.3 1 s none /usr/local/ssl/man/man3/BN_rshift1.3=BN_set_bit.3 1 f none /usr/local/ssl/man/man3/BN_set_bit.3 0644 root root 6015 58192 1362466319 1 s none /usr/local/ssl/man/man3/BN_set_word.3=BN_zero.3 1 s none /usr/local/ssl/man/man3/BN_sqr.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_sub.3=BN_add.3 1 s none /usr/local/ssl/man/man3/BN_sub_word.3=BN_add_word.3 1 f none /usr/local/ssl/man/man3/BN_swap.3 0644 root root 4110 33094 1362466319 1 s none /usr/local/ssl/man/man3/BN_to_montgomery.3=BN_mod_mul_montgomery.3 1 s none /usr/local/ssl/man/man3/BN_ucmp.3=BN_cmp.3 1 s none /usr/local/ssl/man/man3/BN_value_one.3=BN_zero.3 1 f none /usr/local/ssl/man/man3/BN_zero.3 0644 root root 5453 15465 1362466319 1 s none /usr/local/ssl/man/man3/BUF_MEM_free.3=buffer.3 1 s none /usr/local/ssl/man/man3/BUF_MEM_grow.3=buffer.3 1 s none /usr/local/ssl/man/man3/BUF_MEM_new.3=buffer.3 1 s none /usr/local/ssl/man/man3/BUF_strdup.3=buffer.3 1 s none /usr/local/ssl/man/man3/CMS_ReceiptRequest_create0.3=CMS_get1_ReceiptRequest.3 1 s none /usr/local/ssl/man/man3/CMS_ReceiptRequest_get0_values.3=CMS_get1_ReceiptRequest.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_decrypt.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_kekri_get0_id.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_kekri_id_cmp.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_ktri_cert_cmp.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_ktri_get0_signer_id.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_set0_key.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_set0_pkey.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_RecipientInfo_type.3=CMS_get0_RecipientInfos.3 1 s none /usr/local/ssl/man/man3/CMS_SignerInfo_cert_cmp.3=CMS_get0_SignerInfos.3 1 s none /usr/local/ssl/man/man3/CMS_SignerInfo_get0_signer_id.3=CMS_get0_SignerInfos.3 1 s none /usr/local/ssl/man/man3/CMS_SignerInfo_sign.3=CMS_sign_add1_signer.3 1 f none /usr/local/ssl/man/man3/CMS_add0_cert.3 0644 root root 6096 5000 1362466319 1 s none /usr/local/ssl/man/man3/CMS_add0_crl.3=CMS_add0_cert.3 1 s none /usr/local/ssl/man/man3/CMS_add0_recipient_key.3=CMS_add1_recipient_cert.3 1 s none /usr/local/ssl/man/man3/CMS_add1_ReceiptRequest.3=CMS_get1_ReceiptRequest.3 1 s none /usr/local/ssl/man/man3/CMS_add1_cert.3=CMS_add0_cert.3 1 f none /usr/local/ssl/man/man3/CMS_add1_recipient_cert.3 0644 root root 6428 44360 1362466319 1 f none /usr/local/ssl/man/man3/CMS_compress.3 0644 root root 6551 53379 1362466319 1 f none /usr/local/ssl/man/man3/CMS_decrypt.3 0644 root root 6265 26592 1362466319 1 f none /usr/local/ssl/man/man3/CMS_encrypt.3 0644 root root 7928 43323 1362466319 1 f none /usr/local/ssl/man/man3/CMS_final.3 0644 root root 5006 46351 1362466319 1 f none /usr/local/ssl/man/man3/CMS_get0_RecipientInfos.3 0644 root root 9326 41804 1362466319 1 f none /usr/local/ssl/man/man3/CMS_get0_SignerInfos.3 0644 root root 6693 2274 1362466320 1 s none /usr/local/ssl/man/man3/CMS_get0_eContentType.3=CMS_get0_type.3 1 f none /usr/local/ssl/man/man3/CMS_get0_type.3 0644 root root 5942 61747 1362466320 1 f none /usr/local/ssl/man/man3/CMS_get1_ReceiptRequest.3 0644 root root 6878 17579 1362466320 1 s none /usr/local/ssl/man/man3/CMS_get1_certs.3=CMS_add0_cert.3 1 s none /usr/local/ssl/man/man3/CMS_get1_crls.3=CMS_add0_cert.3 1 s none /usr/local/ssl/man/man3/CMS_set1_eContentType.3=CMS_get0_type.3 1 s none /usr/local/ssl/man/man3/CMS_set1_signer_certs.3=CMS_get0_SignerInfos.3 1 f none /usr/local/ssl/man/man3/CMS_sign.3 0644 root root 9443 45120 1362466320 1 f none /usr/local/ssl/man/man3/CMS_sign_add1_signer.3 0644 root root 8331 13924 1362466320 1 f none /usr/local/ssl/man/man3/CMS_sign_receipt.3 0644 root root 5315 6899 1362466320 1 f none /usr/local/ssl/man/man3/CMS_uncompress.3 0644 root root 5486 23495 1362466320 1 f none /usr/local/ssl/man/man3/CMS_verify.3 0644 root root 9026 14051 1362466320 1 f none /usr/local/ssl/man/man3/CMS_verify_receipt.3 0644 root root 5278 4585 1362466320 1 s none /usr/local/ssl/man/man3/CONF_modules_finish.3=CONF_modules_free.3 1 f none /usr/local/ssl/man/man3/CONF_modules_free.3 0644 root root 5184 63056 1362466320 1 s none /usr/local/ssl/man/man3/CONF_modules_load.3=CONF_modules_load_file.3 1 f none /usr/local/ssl/man/man3/CONF_modules_load_file.3 0644 root root 6015 3007 1362466320 1 s none /usr/local/ssl/man/man3/CONF_modules_unload.3=CONF_modules_free.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_cmp.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_cpy.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_current.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_get_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_hash.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_THREADID_set_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_destroy_dynlockid.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_get_ex_data.3=CRYPTO_set_ex_data.3 1 s none /usr/local/ssl/man/man3/CRYPTO_get_new_dynlockid.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_lock.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_num_locks.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_set_dynlock_create_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_set_dynlock_destroy_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/CRYPTO_set_dynlock_lock_callback.3=threads.3 1 f none /usr/local/ssl/man/man3/CRYPTO_set_ex_data.3 0644 root root 5685 42013 1362466320 1 s none /usr/local/ssl/man/man3/CRYPTO_set_locking_callback.3=threads.3 1 s none /usr/local/ssl/man/man3/DES_cbc_cksum.3=des.3 1 s none /usr/local/ssl/man/man3/DES_cfb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_cfb_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_crypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ecb2_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ecb3_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ecb_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede2_cbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede2_cfb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede2_ofb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede3_cbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede3_cbcm_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede3_cfb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ede3_ofb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_enc_read.3=des.3 1 s none /usr/local/ssl/man/man3/DES_enc_write.3=des.3 1 s none /usr/local/ssl/man/man3/DES_fcrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_is_weak_key.3=des.3 1 s none /usr/local/ssl/man/man3/DES_key_sched.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ncbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ofb64_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_ofb_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_pcbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DES_quad_cksum.3=des.3 1 s none /usr/local/ssl/man/man3/DES_random_key.3=des.3 1 s none /usr/local/ssl/man/man3/DES_set_key.3=des.3 1 s none /usr/local/ssl/man/man3/DES_set_key_checked.3=des.3 1 s none /usr/local/ssl/man/man3/DES_set_key_unchecked.3=des.3 1 s none /usr/local/ssl/man/man3/DES_set_odd_parity.3=des.3 1 s none /usr/local/ssl/man/man3/DES_string_to_2keys.3=des.3 1 s none /usr/local/ssl/man/man3/DES_string_to_key.3=des.3 1 s none /usr/local/ssl/man/man3/DES_xcbc_encrypt.3=des.3 1 s none /usr/local/ssl/man/man3/DH_OpenSSL.3=DH_set_method.3 1 s none /usr/local/ssl/man/man3/DH_check.3=DH_generate_parameters.3 1 s none /usr/local/ssl/man/man3/DH_compute_key.3=DH_generate_key.3 1 s none /usr/local/ssl/man/man3/DH_free.3=DH_new.3 1 f none /usr/local/ssl/man/man3/DH_generate_key.3 0644 root root 5391 15609 1362466321 1 f none /usr/local/ssl/man/man3/DH_generate_parameters.3 0644 root root 6383 33074 1362466321 1 s none /usr/local/ssl/man/man3/DH_get_default_method.3=DH_set_method.3 1 s none /usr/local/ssl/man/man3/DH_get_ex_data.3=DH_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/DH_get_ex_new_index.3 0644 root root 4774 23815 1362466321 1 f none /usr/local/ssl/man/man3/DH_new.3 0644 root root 4763 23783 1362466321 1 s none /usr/local/ssl/man/man3/DH_new_method.3=DH_set_method.3 1 s none /usr/local/ssl/man/man3/DH_set_default_method.3=DH_set_method.3 1 s none /usr/local/ssl/man/man3/DH_set_ex_data.3=DH_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/DH_set_method.3 0644 root root 9392 20514 1362466321 1 f none /usr/local/ssl/man/man3/DH_size.3 0644 root root 4431 60723 1362466321 1 s none /usr/local/ssl/man/man3/DHparams_print.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DHparams_print_fp.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DSA_OpenSSL.3=DSA_set_method.3 1 s none /usr/local/ssl/man/man3/DSA_SIG_free.3=DSA_SIG_new.3 1 f none /usr/local/ssl/man/man3/DSA_SIG_new.3 0644 root root 4794 25271 1362466321 1 f none /usr/local/ssl/man/man3/DSA_do_sign.3 0644 root root 5172 59175 1362466321 1 s none /usr/local/ssl/man/man3/DSA_do_verify.3=DSA_do_sign.3 1 f none /usr/local/ssl/man/man3/DSA_dup_DH.3 0644 root root 4633 11410 1362466321 1 s none /usr/local/ssl/man/man3/DSA_free.3=DSA_new.3 1 f none /usr/local/ssl/man/man3/DSA_generate_key.3 0644 root root 4621 11805 1362466321 1 f none /usr/local/ssl/man/man3/DSA_generate_parameters.3 0644 root root 7152 30590 1362466321 1 s none /usr/local/ssl/man/man3/DSA_get_default_method.3=DSA_set_method.3 1 s none /usr/local/ssl/man/man3/DSA_get_ex_data.3=DSA_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/DSA_get_ex_new_index.3 0644 root root 4791 25171 1362466321 1 f none /usr/local/ssl/man/man3/DSA_new.3 0644 root root 4844 30656 1362466321 1 s none /usr/local/ssl/man/man3/DSA_new_method.3=DSA_set_method.3 1 s none /usr/local/ssl/man/man3/DSA_print.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DSA_print_fp.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DSA_set_default_method.3=DSA_set_method.3 1 s none /usr/local/ssl/man/man3/DSA_set_ex_data.3=DSA_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/DSA_set_method.3 0644 root root 10012 55652 1362466322 1 f none /usr/local/ssl/man/man3/DSA_sign.3 0644 root root 6239 16231 1362466322 1 s none /usr/local/ssl/man/man3/DSA_sign_setup.3=DSA_sign.3 1 f none /usr/local/ssl/man/man3/DSA_size.3 0644 root root 4435 60282 1362466322 1 s none /usr/local/ssl/man/man3/DSA_verify.3=DSA_sign.3 1 s none /usr/local/ssl/man/man3/DSAparams_print.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/DSAparams_print_fp.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/ERR_GET_FUNC.3=ERR_GET_LIB.3 1 f none /usr/local/ssl/man/man3/ERR_GET_LIB.3 0644 root root 5376 10189 1362466322 1 s none /usr/local/ssl/man/man3/ERR_GET_REASON.3=ERR_GET_LIB.3 1 s none /usr/local/ssl/man/man3/ERR_PACK.3=ERR_load_strings.3 1 s none /usr/local/ssl/man/man3/ERR_add_error_data.3=ERR_put_error.3 1 f none /usr/local/ssl/man/man3/ERR_clear_error.3 0644 root root 4333 52941 1362466322 1 f none /usr/local/ssl/man/man3/ERR_error_string.3 0644 root root 6410 43619 1362466322 1 s none /usr/local/ssl/man/man3/ERR_error_string_n.3=ERR_error_string.3 1 s none /usr/local/ssl/man/man3/ERR_free_strings.3=ERR_load_crypto_strings.3 1 s none /usr/local/ssl/man/man3/ERR_func_error_string.3=ERR_error_string.3 1 f none /usr/local/ssl/man/man3/ERR_get_error.3 0644 root root 6769 6560 1362466322 1 s none /usr/local/ssl/man/man3/ERR_get_error_line.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_get_error_line_data.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_get_next_error_library.3=ERR_load_strings.3 1 s none /usr/local/ssl/man/man3/ERR_lib_error_string.3=ERR_error_string.3 1 s none /usr/local/ssl/man/man3/ERR_load_UI_strings.3=ui.3 1 f none /usr/local/ssl/man/man3/ERR_load_crypto_strings.3 0644 root root 5008 50313 1362466322 1 f none /usr/local/ssl/man/man3/ERR_load_strings.3 0644 root root 5265 2069 1362466322 1 s none /usr/local/ssl/man/man3/ERR_peek_error.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_error_line.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_error_line_data.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_last_error.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_last_error_line.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_peek_last_error_line_data.3=ERR_get_error.3 1 s none /usr/local/ssl/man/man3/ERR_pop_to_mark.3=ERR_set_mark.3 1 f none /usr/local/ssl/man/man3/ERR_print_errors.3 0644 root root 5298 9295 1362466322 1 s none /usr/local/ssl/man/man3/ERR_print_errors_fp.3=ERR_print_errors.3 1 f none /usr/local/ssl/man/man3/ERR_put_error.3 0644 root root 5019 48107 1362466322 1 s none /usr/local/ssl/man/man3/ERR_reason_error_string.3=ERR_error_string.3 1 f none /usr/local/ssl/man/man3/ERR_remove_state.3 0644 root root 4577 10196 1362466323 1 f none /usr/local/ssl/man/man3/ERR_set_mark.3 0644 root root 4710 20131 1362466323 1 f none /usr/local/ssl/man/man3/EVP_BytesToKey.3 0644 root root 6241 17607 1362466323 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_block_size.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_cipher.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_cleanup.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_ctrl.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_flags.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_get_app_data.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_init.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_iv_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_key_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_mode.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_nid.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_set_app_data.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_set_key_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_set_padding.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_CTX_type.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_asn1_to_param.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_block_size.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_flags.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_iv_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_key_length.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_mode.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_nid.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_param_to_asn1.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CIPHER_type.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherFinal.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherFinal_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherInit.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherInit_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_CipherUpdate.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptFinal.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptFinal_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptInit.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptInit_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DecryptUpdate.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_DigestFinal_ex.3=EVP_DigestInit.3 1 f none /usr/local/ssl/man/man3/EVP_DigestInit.3 0644 root root 15873 46619 1362466323 1 s none /usr/local/ssl/man/man3/EVP_DigestInit_ex.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_DigestSignFinal.3=EVP_DigestSignInit.3 1 f none /usr/local/ssl/man/man3/EVP_DigestSignInit.3 0644 root root 7698 22794 1362466323 1 s none /usr/local/ssl/man/man3/EVP_DigestSignUpdate.3=EVP_DigestSignInit.3 1 s none /usr/local/ssl/man/man3/EVP_DigestUpdate.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_DigestVerifyFinal.3=EVP_DigestVerifyInit.3 1 f none /usr/local/ssl/man/man3/EVP_DigestVerifyInit.3 0644 root root 7352 58365 1362466323 1 s none /usr/local/ssl/man/man3/EVP_DigestVerifyUpdate.3=EVP_DigestVerifyInit.3 1 s none /usr/local/ssl/man/man3/EVP_EncryptFinal.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_EncryptFinal_ex.3=EVP_EncryptInit.3 1 f none /usr/local/ssl/man/man3/EVP_EncryptInit.3 0644 root root 29087 6410 1362466323 1 s none /usr/local/ssl/man/man3/EVP_EncryptInit_ex.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_EncryptUpdate.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_MAX_MD_SIZE.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_block_size.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_cleanup.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_copy.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_copy_ex.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_create.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_destroy.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_init.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_md.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_size.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_CTX_type.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_block_size.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_pkey_type.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_size.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_MD_type.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_OpenFinal.3=EVP_OpenInit.3 1 f none /usr/local/ssl/man/man3/EVP_OpenInit.3 0644 root root 6013 1779 1362466323 1 s none /usr/local/ssl/man/man3/EVP_OpenUpdate.3=EVP_OpenInit.3 1 s none /usr/local/ssl/man/man3/EVP_PKEVP_PKEY_CTX_set_app_data.3=EVP_PKEY_keygen.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_CTX_ctrl.3 0644 root root 9940 17335 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_dup.3=EVP_PKEY_CTX_new.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_free.3=EVP_PKEY_CTX_new.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_get_app_data.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_get_cb.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_get_keygen_info.3=EVP_PKEY_keygen.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_CTX_new.3 0644 root root 5614 31288 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_new_id.3=EVP_PKEY_CTX_new.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_CTX_set_cb.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_assign_DH.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_assign_DSA.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_assign_EC_KEY.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_assign_RSA.3=EVP_PKEY_set1_RSA.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_cmp.3 0644 root root 5917 62402 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_cmp_parameters.3=EVP_PKEY_cmp.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_copy_parameters.3=EVP_PKEY_cmp.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_ctrl.3=EVP_PKEY_CTX_ctrl.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_ctrl_str.3=EVP_PKEY_CTX_ctrl.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_decrypt.3 0644 root root 6767 57658 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_decrypt_init.3=EVP_PKEY_decrypt.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_derive.3 0644 root root 6696 54092 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_derive_init.3=EVP_PKEY_derive.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_derive_set_peer.3=EVP_PKEY_derive.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_encrypt.3 0644 root root 6767 57854 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_encrypt_init.3=EVP_PKEY_encrypt.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_free.3=EVP_PKEY_new.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get1_DH.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get1_DSA.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get1_EC_KEY.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get1_RSA.3=EVP_PKEY_set1_RSA.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_get_default_digest.3 0644 root root 4991 45943 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_get_default_digest_nid.3=EVP_PKEY_get_default_digest.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_keygen.3 0644 root root 9716 43324 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_keygen_init.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_missing_parameters.3=EVP_PKEY_cmp.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_new.3 0644 root root 4950 39857 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_paramgen.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_paramgen_init.3=EVP_PKEY_keygen.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_print_params.3=EVP_PKEY_print_private.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_print_private.3 0644 root root 5710 38878 1362466324 1 s none /usr/local/ssl/man/man3/EVP_PKEY_print_public.3=EVP_PKEY_print_private.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_set1_DH.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_set1_DSA.3=EVP_PKEY_set1_RSA.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_set1_EC_KEY.3=EVP_PKEY_set1_RSA.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_set1_RSA.3 0644 root root 6877 63984 1362466324 1 f none /usr/local/ssl/man/man3/EVP_PKEY_sign.3 0644 root root 6847 62186 1362466325 1 s none /usr/local/ssl/man/man3/EVP_PKEY_sign_init.3=EVP_PKEY_sign.3 1 s none /usr/local/ssl/man/man3/EVP_PKEY_type.3=EVP_PKEY_set1_RSA.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_verify.3 0644 root root 6845 2566 1362466325 1 s none /usr/local/ssl/man/man3/EVP_PKEY_verify_init.3=EVP_PKEY_verify.3 1 f none /usr/local/ssl/man/man3/EVP_PKEY_verify_recover.3 0644 root root 7402 51405 1362466325 1 s none /usr/local/ssl/man/man3/EVP_PKEY_verify_recover_init.3=EVP_PKEY_verify_recover.3 1 s none /usr/local/ssl/man/man3/EVP_SealFinal.3=EVP_SealInit.3 1 f none /usr/local/ssl/man/man3/EVP_SealInit.3 0644 root root 7183 40414 1362466325 1 s none /usr/local/ssl/man/man3/EVP_SealUpdate.3=EVP_SealInit.3 1 s none /usr/local/ssl/man/man3/EVP_SignFinal.3=EVP_SignInit.3 1 f none /usr/local/ssl/man/man3/EVP_SignInit.3 0644 root root 7847 34419 1362466325 1 s none /usr/local/ssl/man/man3/EVP_SignUpdate.3=EVP_SignInit.3 1 s none /usr/local/ssl/man/man3/EVP_VerifyFinal.3=EVP_VerifyInit.3 1 f none /usr/local/ssl/man/man3/EVP_VerifyInit.3 0644 root root 7441 231 1362466325 1 s none /usr/local/ssl/man/man3/EVP_VerifyUpdate.3=EVP_VerifyInit.3 1 s none /usr/local/ssl/man/man3/EVP_dss.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_dss1.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_cipherbyname.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_cipherbynid.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_cipherbyobj.3=EVP_EncryptInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_digestbyname.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_digestbynid.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_get_digestbyobj.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_md2.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_md5.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_md_null.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_mdc2.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_ripemd160.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha1.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha224.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha256.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha384.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/EVP_sha512.3=EVP_DigestInit.3 1 s none /usr/local/ssl/man/man3/HMAC.3=hmac.3 1 s none /usr/local/ssl/man/man3/HMAC_Final.3=hmac.3 1 s none /usr/local/ssl/man/man3/HMAC_Init.3=hmac.3 1 s none /usr/local/ssl/man/man3/HMAC_Update.3=hmac.3 1 s none /usr/local/ssl/man/man3/HMAC_cleanup.3=hmac.3 1 s none /usr/local/ssl/man/man3/MD2.3=md5.3 1 s none /usr/local/ssl/man/man3/MD2_Final.3=md5.3 1 s none /usr/local/ssl/man/man3/MD2_Init.3=md5.3 1 s none /usr/local/ssl/man/man3/MD2_Update.3=md5.3 1 s none /usr/local/ssl/man/man3/MD4.3=md5.3 1 s none /usr/local/ssl/man/man3/MD4_Final.3=md5.3 1 s none /usr/local/ssl/man/man3/MD4_Init.3=md5.3 1 s none /usr/local/ssl/man/man3/MD4_Update.3=md5.3 1 s none /usr/local/ssl/man/man3/MD5.3=md5.3 1 s none /usr/local/ssl/man/man3/MD5_Final.3=md5.3 1 s none /usr/local/ssl/man/man3/MD5_Init.3=md5.3 1 s none /usr/local/ssl/man/man3/MD5_Update.3=md5.3 1 s none /usr/local/ssl/man/man3/MDC2.3=mdc2.3 1 s none /usr/local/ssl/man/man3/MDC2_Final.3=mdc2.3 1 s none /usr/local/ssl/man/man3/MDC2_Init.3=mdc2.3 1 s none /usr/local/ssl/man/man3/MDC2_Update.3=mdc2.3 1 s none /usr/local/ssl/man/man3/OBJ_cleanup.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_cmp.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_create.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_dup.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_ln2nid.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_nid2ln.3=OBJ_nid2obj.3 1 f none /usr/local/ssl/man/man3/OBJ_nid2obj.3 0644 root root 9406 20547 1362466325 1 s none /usr/local/ssl/man/man3/OBJ_nid2sn.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_obj2nid.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_obj2txt.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_sn2nid.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_txt2nid.3=OBJ_nid2obj.3 1 s none /usr/local/ssl/man/man3/OBJ_txt2obj.3=OBJ_nid2obj.3 1 f none /usr/local/ssl/man/man3/OPENSSL_Applink.3 0644 root root 4466 3313 1362466325 1 f none /usr/local/ssl/man/man3/OPENSSL_VERSION_NUMBER.3 0644 root root 6808 55699 1362466325 1 f none /usr/local/ssl/man/man3/OPENSSL_config.3 0644 root root 7287 56733 1362466325 1 f none /usr/local/ssl/man/man3/OPENSSL_ia32cap.3 0644 root root 5643 40125 1362466325 1 f none /usr/local/ssl/man/man3/OPENSSL_load_builtin_modules.3 0644 root root 5286 8115 1362466325 1 s none /usr/local/ssl/man/man3/OPENSSL_no_config.3=OPENSSL_config.3 1 f none /usr/local/ssl/man/man3/OpenSSL_add_all_algorithms.3 0644 root root 6033 10562 1362466326 1 s none /usr/local/ssl/man/man3/OpenSSL_add_all_ciphers.3=OpenSSL_add_all_algorithms.3 1 s none /usr/local/ssl/man/man3/OpenSSL_add_all_digests.3=OpenSSL_add_all_algorithms.3 1 s none /usr/local/ssl/man/man3/OpenSSL_add_ssl_algorithms.3=SSL_library_init.3 1 s none /usr/local/ssl/man/man3/PEM.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_DHparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_DSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_DSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_DSAparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_NETSCAPE_CERT_SEQUENCE.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_PKCS7.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_RSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_RSAPublicKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_RSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_X509.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_X509_AUX.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_X509_CRL.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_X509_REQ.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_DHparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_DSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_DSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_DSAparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_NETSCAPE_CERT_SEQUENCE.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_PKCS7.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_RSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_RSAPublicKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_RSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_X509.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_X509_AUX.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_X509_CRL.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_read_bio_X509_REQ.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_DHparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_DSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_DSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_DSAparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_NETSCAPE_CERT_SEQUENCE.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PKCS7.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PKCS8PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PKCS8PrivateKey_nid.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_RSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_RSAPublicKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_RSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509_AUX.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509_CRL.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509_REQ.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_X509_REQ_NEW.3=pem.3 1 f none /usr/local/ssl/man/man3/PEM_write_bio_CMS_stream.3 0644 root root 4858 32006 1362466326 1 s none /usr/local/ssl/man/man3/PEM_write_bio_DHparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_DSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_DSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_DSAparams.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_NETSCAPE_CERT_SEQUENCE.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PKCS7.3=pem.3 1 f none /usr/local/ssl/man/man3/PEM_write_bio_PKCS7_stream.3 0644 root root 4853 30573 1362466326 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PKCS8PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PKCS8PrivateKey_nid.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_PrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_RSAPrivateKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_RSAPublicKey.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_RSA_PUBKEY.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509_AUX.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509_CRL.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509_REQ.3=pem.3 1 s none /usr/local/ssl/man/man3/PEM_write_bio_X509_REQ_NEW.3=pem.3 1 f none /usr/local/ssl/man/man3/PKCS12_create.3 0644 root root 6907 14862 1362466326 1 f none /usr/local/ssl/man/man3/PKCS12_parse.3 0644 root root 5677 37018 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_decrypt.3 0644 root root 5651 37258 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_encrypt.3 0644 root root 7044 26410 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_sign.3 0644 root root 8876 55939 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_sign_add_signer.3 0644 root root 7386 58111 1362466326 1 f none /usr/local/ssl/man/man3/PKCS7_verify.3 0644 root root 8824 57986 1362466326 1 s none /usr/local/ssl/man/man3/RAND_SSLeay.3=RAND_set_rand_method.3 1 f none /usr/local/ssl/man/man3/RAND_add.3 0644 root root 6836 10063 1362466326 1 f none /usr/local/ssl/man/man3/RAND_bytes.3 0644 root root 5473 24369 1362466326 1 f none /usr/local/ssl/man/man3/RAND_cleanup.3 0644 root root 4283 47437 1362466326 1 f none /usr/local/ssl/man/man3/RAND_egd.3 0644 root root 7452 63801 1362466327 1 s none /usr/local/ssl/man/man3/RAND_event.3=RAND_add.3 1 s none /usr/local/ssl/man/man3/RAND_file_name.3=RAND_load_file.3 1 s none /usr/local/ssl/man/man3/RAND_get_rand_method.3=RAND_set_rand_method.3 1 f none /usr/local/ssl/man/man3/RAND_load_file.3 0644 root root 5572 28982 1362466327 1 s none /usr/local/ssl/man/man3/RAND_pseudo_bytes.3=RAND_bytes.3 1 s none /usr/local/ssl/man/man3/RAND_screen.3=RAND_add.3 1 s none /usr/local/ssl/man/man3/RAND_seed.3=RAND_add.3 1 f none /usr/local/ssl/man/man3/RAND_set_rand_method.3 0644 root root 7224 35149 1362466327 1 s none /usr/local/ssl/man/man3/RAND_status.3=RAND_add.3 1 s none /usr/local/ssl/man/man3/RAND_write_file.3=RAND_load_file.3 1 s none /usr/local/ssl/man/man3/RC4.3=rc4.3 1 s none /usr/local/ssl/man/man3/RC4_set_key.3=rc4.3 1 s none /usr/local/ssl/man/man3/RIPEMD160.3=ripemd.3 1 s none /usr/local/ssl/man/man3/RIPEMD160_Final.3=ripemd.3 1 s none /usr/local/ssl/man/man3/RIPEMD160_Init.3=ripemd.3 1 s none /usr/local/ssl/man/man3/RIPEMD160_Update.3=ripemd.3 1 s none /usr/local/ssl/man/man3/RSA_PKCS1_SSLeay.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_blinding_off.3=RSA_blinding_on.3 1 f none /usr/local/ssl/man/man3/RSA_blinding_on.3 0644 root root 5033 48878 1362466327 1 f none /usr/local/ssl/man/man3/RSA_check_key.3 0644 root root 6393 37293 1362466327 1 s none /usr/local/ssl/man/man3/RSA_flags.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_free.3=RSA_new.3 1 f none /usr/local/ssl/man/man3/RSA_generate_key.3 0644 root root 5670 36564 1362466327 1 s none /usr/local/ssl/man/man3/RSA_get_default_method.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_get_ex_data.3=RSA_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/RSA_get_ex_new_index.3 0644 root root 9704 1246 1362466327 1 s none /usr/local/ssl/man/man3/RSA_get_method.3=RSA_set_method.3 1 f none /usr/local/ssl/man/man3/RSA_new.3 0644 root root 4831 29645 1362466327 1 s none /usr/local/ssl/man/man3/RSA_new_method.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_null_method.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_padding_add_PKCS1_OAEP.3=RSA_padding_add_PKCS1_type_1.3 1 f none /usr/local/ssl/man/man3/RSA_padding_add_PKCS1_type_1.3 0644 root root 8055 40013 1362466327 1 s none /usr/local/ssl/man/man3/RSA_padding_add_PKCS1_type_2.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_add_SSLv23.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_add_none.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_PKCS1_OAEP.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_PKCS1_type_1.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_PKCS1_type_2.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_SSLv23.3=RSA_padding_add_PKCS1_type_1.3 1 s none /usr/local/ssl/man/man3/RSA_padding_check_none.3=RSA_padding_add_PKCS1_type_1.3 1 f none /usr/local/ssl/man/man3/RSA_print.3 0644 root root 5202 59024 1362466327 1 s none /usr/local/ssl/man/man3/RSA_print_fp.3=RSA_print.3 1 s none /usr/local/ssl/man/man3/RSA_private_decrypt.3=RSA_public_encrypt.3 1 f none /usr/local/ssl/man/man3/RSA_private_encrypt.3 0644 root root 6066 7377 1362466327 1 s none /usr/local/ssl/man/man3/RSA_public_decrypt.3=RSA_private_encrypt.3 1 f none /usr/local/ssl/man/man3/RSA_public_encrypt.3 0644 root root 6655 52427 1362466328 1 s none /usr/local/ssl/man/man3/RSA_set_default_method.3=RSA_set_method.3 1 s none /usr/local/ssl/man/man3/RSA_set_ex_data.3=RSA_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/RSA_set_method.3 0644 root root 12944 50379 1362466328 1 f none /usr/local/ssl/man/man3/RSA_sign.3 0644 root root 5892 56063 1362466328 1 f none /usr/local/ssl/man/man3/RSA_sign_ASN1_OCTET_STRING.3 0644 root root 5670 34817 1362466328 1 f none /usr/local/ssl/man/man3/RSA_size.3 0644 root root 4390 56880 1362466328 1 s none /usr/local/ssl/man/man3/RSA_verify.3=RSA_sign.3 1 s none /usr/local/ssl/man/man3/RSA_verify_ASN1_OCTET_STRING.3=RSA_sign_ASN1_OCTET_STRING.3 1 s none /usr/local/ssl/man/man3/SHA1.3=sha.3 1 s none /usr/local/ssl/man/man3/SHA1_Final.3=sha.3 1 s none /usr/local/ssl/man/man3/SHA1_Init.3=sha.3 1 s none /usr/local/ssl/man/man3/SHA1_Update.3=sha.3 1 f none /usr/local/ssl/man/man3/SMIME_read_CMS.3 0644 root root 5982 61819 1362466328 1 f none /usr/local/ssl/man/man3/SMIME_read_PKCS7.3 0644 root root 5998 61431 1362466328 1 f none /usr/local/ssl/man/man3/SMIME_write_CMS.3 0644 root root 6035 2347 1362466328 1 f none /usr/local/ssl/man/man3/SMIME_write_PKCS7.3 0644 root root 6071 3784 1362466328 1 s none /usr/local/ssl/man/man3/SSL.3=ssl.3 1 s none /usr/local/ssl/man/man3/SSL_CIPHER_description.3=SSL_CIPHER_get_name.3 1 s none /usr/local/ssl/man/man3/SSL_CIPHER_get_bits.3=SSL_CIPHER_get_name.3 1 f none /usr/local/ssl/man/man3/SSL_CIPHER_get_name.3 0644 root root 8301 51794 1362466334 1 s none /usr/local/ssl/man/man3/SSL_CIPHER_get_version.3=SSL_CIPHER_get_name.3 1 f none /usr/local/ssl/man/man3/SSL_COMP_add_compression_method.3 0644 root root 6344 41070 1362466334 1 s none /usr/local/ssl/man/man3/SSL_CTX_add_client_CA.3=SSL_CTX_set_client_CA_list.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_add_extra_chain_cert.3 0644 root root 4936 42674 1362466334 1 f none /usr/local/ssl/man/man3/SSL_CTX_add_session.3 0644 root root 6312 29649 1362466334 1 s none /usr/local/ssl/man/man3/SSL_CTX_callback_ctrl.3=SSL_CTX_ctrl.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_check_private_key.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_clear_options.3=SSL_CTX_set_options.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_ctrl.3 0644 root root 4839 31517 1362466334 1 f none /usr/local/ssl/man/man3/SSL_CTX_flush_sessions.3 0644 root root 5425 21837 1362466334 1 f none /usr/local/ssl/man/man3/SSL_CTX_free.3 0644 root root 5076 53737 1362466334 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_cert_store.3=SSL_CTX_set_cert_store.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_client_CA_list.3=SSL_get_client_CA_list.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_client_cert_cb.3=SSL_CTX_set_client_cert_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_ex_data.3=SSL_CTX_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_get_ex_new_index.3 0644 root root 5642 32714 1362466335 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_info_callback.3=SSL_CTX_set_info_callback.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_max_cert_list.3=SSL_CTX_set_max_cert_list.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_mode.3=SSL_CTX_set_mode.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_options.3=SSL_CTX_set_options.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_quiet_shutdown.3=SSL_CTX_set_quiet_shutdown.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_session_cache_mode.3=SSL_CTX_set_session_cache_mode.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_timeout.3=SSL_CTX_set_timeout.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_verify_callback.3=SSL_CTX_get_verify_mode.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_get_verify_depth.3=SSL_CTX_get_verify_mode.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_get_verify_mode.3 0644 root root 5661 42296 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_load_verify_locations.3 0644 root root 8367 13334 1362466335 1 s none /usr/local/ssl/man/man3/SSL_CTX_need_tmp_rsa.3=SSL_CTX_set_tmp_rsa_callback.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_new.3 0644 root root 7662 20423 1362466335 1 s none /usr/local/ssl/man/man3/SSL_CTX_remove_session.3=SSL_CTX_add_session.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_accept.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_accept_good.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_accept_renegotiate.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_cache_full.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_cb_hits.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_connect.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_connect_good.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_connect_renegotiate.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_get_cache_size.3=SSL_CTX_sess_set_cache_size.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_get_get_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_get_new_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_get_remove_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_hits.3=SSL_CTX_sess_number.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_misses.3=SSL_CTX_sess_number.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_sess_number.3 0644 root root 6861 21045 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_sess_set_cache_size.3 0644 root root 5445 22350 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_sess_set_get_cb.3 0644 root root 7967 46865 1362466335 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_set_new_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_set_remove_cb.3=SSL_CTX_sess_set_get_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_sess_timeouts.3=SSL_CTX_sess_number.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_sessions.3 0644 root root 4711 23061 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_cert_store.3 0644 root root 5858 59636 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_cert_verify_callback.3 0644 root root 6910 24959 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_cipher_list.3 0644 root root 6704 2341 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_client_CA_list.3 0644 root root 7374 55678 1362466335 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_client_cert_cb.3 0644 root root 8450 29161 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_default_passwd_cb.3 0644 root root 6854 20381 1362466336 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_default_passwd_cb_userdata.3=SSL_CTX_set_default_passwd_cb.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_ex_data.3=SSL_CTX_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_generate_session_id.3 0644 root root 10550 605 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_info_callback.3 0644 root root 9686 9648 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_max_cert_list.3 0644 root root 6828 14900 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_mode.3 0644 root root 7190 38537 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_msg_callback.3 0644 root root 7752 26902 1362466336 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_msg_callback_arg.3=SSL_CTX_set_msg_callback.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_options.3 0644 root root 18223 12711 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_psk_client_callback.3 0644 root root 5764 50653 1362466336 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_psk_server_callback.3=SSL_CTX_use_psk_identity_hint.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_quiet_shutdown.3 0644 root root 6197 21951 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_session_cache_mode.3 0644 root root 9391 37529 1362466336 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_session_id_context.3 0644 root root 6790 10770 1362466337 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_ssl_version.3 0644 root root 5495 22352 1362466337 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_timeout.3 0644 root root 5798 56236 1362466337 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_tmp_dh.3=SSL_CTX_set_tmp_dh_callback.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_tmp_dh_callback.3 0644 root root 10955 31624 1362466337 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_tmp_rsa.3=SSL_CTX_set_tmp_rsa_callback.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_tmp_rsa_callback.3 0644 root root 10939 32051 1362466337 1 f none /usr/local/ssl/man/man3/SSL_CTX_set_verify.3 0644 root root 16207 27985 1362466337 1 s none /usr/local/ssl/man/man3/SSL_CTX_set_verify_depth.3=SSL_CTX_set_verify.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_PrivateKey.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_PrivateKey_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_PrivateKey_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_RSAPrivateKey.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_RSAPrivateKey_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_RSAPrivateKey_file.3=SSL_CTX_use_certificate.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_use_certificate.3 0644 root root 12987 33692 1362466337 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_certificate_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_certificate_chain_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_CTX_use_certificate_file.3=SSL_CTX_use_certificate.3 1 f none /usr/local/ssl/man/man3/SSL_CTX_use_psk_identity_hint.3 0644 root root 6933 23762 1362466337 1 f none /usr/local/ssl/man/man3/SSL_SESSION_free.3 0644 root root 6049 8317 1362466337 1 s none /usr/local/ssl/man/man3/SSL_SESSION_get_ex_data.3=SSL_SESSION_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_SESSION_get_ex_new_index.3 0644 root root 6075 5120 1362466337 1 f none /usr/local/ssl/man/man3/SSL_SESSION_get_time.3 0644 root root 6008 3378 1362466338 1 s none /usr/local/ssl/man/man3/SSL_SESSION_get_timeout.3=SSL_SESSION_get_time.3 1 s none /usr/local/ssl/man/man3/SSL_SESSION_set_ex_data.3=SSL_SESSION_get_ex_new_index.3 1 s none /usr/local/ssl/man/man3/SSL_SESSION_set_time.3=SSL_SESSION_get_time.3 1 s none /usr/local/ssl/man/man3/SSL_SESSION_set_timeout.3=SSL_SESSION_get_time.3 1 f none /usr/local/ssl/man/man3/SSL_accept.3 0644 root root 6899 12609 1362466338 1 s none /usr/local/ssl/man/man3/SSL_add_client_CA.3=SSL_CTX_set_client_CA_list.3 1 s none /usr/local/ssl/man/man3/SSL_add_session.3=SSL_CTX_add_session.3 1 s none /usr/local/ssl/man/man3/SSL_alert_desc_string.3=SSL_alert_type_string.3 1 s none /usr/local/ssl/man/man3/SSL_alert_desc_string_long.3=SSL_alert_type_string.3 1 f none /usr/local/ssl/man/man3/SSL_alert_type_string.3 0644 root root 13959 28750 1362466338 1 s none /usr/local/ssl/man/man3/SSL_alert_type_string_long.3=SSL_alert_type_string.3 1 s none /usr/local/ssl/man/man3/SSL_callback_ctrl.3=SSL_CTX_ctrl.3 1 s none /usr/local/ssl/man/man3/SSL_check_private_key.3=SSL_CTX_use_certificate.3 1 f none /usr/local/ssl/man/man3/SSL_clear.3 0644 root root 6271 28646 1362466338 1 s none /usr/local/ssl/man/man3/SSL_clear_options.3=SSL_CTX_set_options.3 1 f none /usr/local/ssl/man/man3/SSL_connect.3 0644 root root 6650 57626 1362466338 1 s none /usr/local/ssl/man/man3/SSL_ctrl.3=SSL_CTX_ctrl.3 1 f none /usr/local/ssl/man/man3/SSL_do_handshake.3 0644 root root 6910 15381 1362466338 1 s none /usr/local/ssl/man/man3/SSL_flush_sessions.3=SSL_CTX_flush_sessions.3 1 f none /usr/local/ssl/man/man3/SSL_free.3 0644 root root 5268 5731 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_SSL_CTX.3 0644 root root 4324 51112 1362466338 1 s none /usr/local/ssl/man/man3/SSL_get_accept_state.3=SSL_set_connect_state.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher.3=SSL_get_current_cipher.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher_bits.3=SSL_get_current_cipher.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher_list.3=SSL_get_ciphers.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher_name.3=SSL_get_current_cipher.3 1 s none /usr/local/ssl/man/man3/SSL_get_cipher_version.3=SSL_get_current_cipher.3 1 f none /usr/local/ssl/man/man3/SSL_get_ciphers.3 0644 root root 5078 52566 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_client_CA_list.3 0644 root root 5354 9996 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_current_cipher.3 0644 root root 5313 7436 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_default_timeout.3 0644 root root 4917 41233 1362466338 1 f none /usr/local/ssl/man/man3/SSL_get_error.3 0644 root root 8926 54533 1362466338 1 s none /usr/local/ssl/man/man3/SSL_get_ex_data.3=SSL_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_get_ex_data_X509_STORE_CTX_idx.3 0644 root root 5720 42756 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_ex_new_index.3 0644 root root 5790 45499 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_fd.3 0644 root root 4784 26052 1362466339 1 s none /usr/local/ssl/man/man3/SSL_get_info_callback.3=SSL_CTX_set_info_callback.3 1 s none /usr/local/ssl/man/man3/SSL_get_max_cert_list.3=SSL_CTX_set_max_cert_list.3 1 s none /usr/local/ssl/man/man3/SSL_get_mode.3=SSL_CTX_set_mode.3 1 s none /usr/local/ssl/man/man3/SSL_get_msg_callback_arg.3=SSL_CTX_set_msg_callback.3 1 s none /usr/local/ssl/man/man3/SSL_get_options.3=SSL_CTX_set_options.3 1 f none /usr/local/ssl/man/man3/SSL_get_peer_cert_chain.3 0644 root root 5288 6273 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_peer_certificate.3 0644 root root 5374 15161 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_psk_identity.3 0644 root root 4877 39056 1362466339 1 s none /usr/local/ssl/man/man3/SSL_get_psk_identity_hint.3=SSL_get_psk_identity.3 1 s none /usr/local/ssl/man/man3/SSL_get_quiet_shutdown.3=SSL_CTX_set_quiet_shutdown.3 1 f none /usr/local/ssl/man/man3/SSL_get_rbio.3 0644 root root 4566 5759 1362466339 1 s none /usr/local/ssl/man/man3/SSL_get_secure_renegotiation_support.3=SSL_CTX_set_options.3 1 f none /usr/local/ssl/man/man3/SSL_get_session.3 0644 root root 6244 24437 1362466339 1 s none /usr/local/ssl/man/man3/SSL_get_shutdown.3=SSL_set_shutdown.3 1 s none /usr/local/ssl/man/man3/SSL_get_ssl_method.3=SSL_CTX_set_ssl_version.3 1 s none /usr/local/ssl/man/man3/SSL_get_verify_callback.3=SSL_CTX_get_verify_mode.3 1 s none /usr/local/ssl/man/man3/SSL_get_verify_depth.3=SSL_CTX_get_verify_mode.3 1 s none /usr/local/ssl/man/man3/SSL_get_verify_mode.3=SSL_CTX_get_verify_mode.3 1 f none /usr/local/ssl/man/man3/SSL_get_verify_result.3 0644 root root 5293 9353 1362466339 1 f none /usr/local/ssl/man/man3/SSL_get_version.3 0644 root root 4571 7601 1362466339 1 s none /usr/local/ssl/man/man3/SSL_has_matching_session_id.3=SSL_CTX_set_generate_session_id.3 1 f none /usr/local/ssl/man/man3/SSL_library_init.3 0644 root root 5516 22606 1362466339 1 f none /usr/local/ssl/man/man3/SSL_load_client_CA_file.3 0644 root root 5310 2633 1362466339 1 s none /usr/local/ssl/man/man3/SSL_load_error_strings.3=ERR_load_crypto_strings.3 1 s none /usr/local/ssl/man/man3/SSL_need_tmp_rsa.3=SSL_CTX_set_tmp_rsa_callback.3 1 f none /usr/local/ssl/man/man3/SSL_new.3 0644 root root 4790 26709 1362466339 1 f none /usr/local/ssl/man/man3/SSL_pending.3 0644 root root 4934 39608 1362466340 1 f none /usr/local/ssl/man/man3/SSL_read.3 0644 root root 9196 23996 1362466340 1 s none /usr/local/ssl/man/man3/SSL_remove_session.3=SSL_CTX_add_session.3 1 f none /usr/local/ssl/man/man3/SSL_rstate_string.3 0644 root root 5511 21172 1362466340 1 s none /usr/local/ssl/man/man3/SSL_rstate_string_long.3=SSL_rstate_string.3 1 f none /usr/local/ssl/man/man3/SSL_session_reused.3 0644 root root 4678 18571 1362466340 1 f none /usr/local/ssl/man/man3/SSL_set_bio.3 0644 root root 4734 21472 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_cipher_list.3=SSL_CTX_set_cipher_list.3 1 s none /usr/local/ssl/man/man3/SSL_set_client_CA_list.3=SSL_CTX_set_client_CA_list.3 1 f none /usr/local/ssl/man/man3/SSL_set_connect_state.3 0644 root root 5671 42540 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_ex_data.3=SSL_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/SSL_set_fd.3 0644 root root 5298 5689 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_generate_session_id.3=SSL_CTX_set_generate_session_id.3 1 s none /usr/local/ssl/man/man3/SSL_set_info_callback.3=SSL_CTX_set_info_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_max_cert_list.3=SSL_CTX_set_max_cert_list.3 1 s none /usr/local/ssl/man/man3/SSL_set_mode.3=SSL_CTX_set_mode.3 1 s none /usr/local/ssl/man/man3/SSL_set_msg_callback.3=SSL_CTX_set_msg_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_options.3=SSL_CTX_set_options.3 1 s none /usr/local/ssl/man/man3/SSL_set_psk_client_callback.3=SSL_CTX_set_psk_client_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_psk_server_callback.3=SSL_CTX_use_psk_identity_hint.3 1 s none /usr/local/ssl/man/man3/SSL_set_quiet_shutdown.3=SSL_CTX_set_quiet_shutdown.3 1 f none /usr/local/ssl/man/man3/SSL_set_session.3 0644 root root 5514 26044 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_session_id_context.3=SSL_CTX_set_session_id_context.3 1 f none /usr/local/ssl/man/man3/SSL_set_shutdown.3 0644 root root 6035 3993 1362466340 1 s none /usr/local/ssl/man/man3/SSL_set_ssl_method.3=SSL_CTX_set_ssl_version.3 1 s none /usr/local/ssl/man/man3/SSL_set_tmp_dh.3=SSL_CTX_set_tmp_dh_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_tmp_dh_callback.3=SSL_CTX_set_tmp_dh_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_tmp_rsa.3=SSL_CTX_set_tmp_rsa_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_tmp_rsa_callback.3=SSL_CTX_set_tmp_rsa_callback.3 1 s none /usr/local/ssl/man/man3/SSL_set_verify.3=SSL_CTX_set_verify.3 1 s none /usr/local/ssl/man/man3/SSL_set_verify_depth.3=SSL_CTX_set_verify.3 1 f none /usr/local/ssl/man/man3/SSL_set_verify_result.3 0644 root root 4857 36832 1362466340 1 f none /usr/local/ssl/man/man3/SSL_shutdown.3 0644 root root 11790 60065 1362466340 1 f none /usr/local/ssl/man/man3/SSL_state_string.3 0644 root root 5226 3877 1362466340 1 s none /usr/local/ssl/man/man3/SSL_state_string_long.3=SSL_state_string.3 1 s none /usr/local/ssl/man/man3/SSL_use_PrivateKey.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_PrivateKey_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_PrivateKey_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_RSAPrivateKey.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_RSAPrivateKey_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_RSAPrivateKey_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_certificate.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_certificate_ASN1.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_certificate_file.3=SSL_CTX_use_certificate.3 1 s none /usr/local/ssl/man/man3/SSL_use_psk_identity_hint.3=SSL_CTX_use_psk_identity_hint.3 1 f none /usr/local/ssl/man/man3/SSL_want.3 0644 root root 6309 27501 1362466340 1 s none /usr/local/ssl/man/man3/SSL_want_nothing.3=SSL_want.3 1 s none /usr/local/ssl/man/man3/SSL_want_read.3=SSL_want.3 1 s none /usr/local/ssl/man/man3/SSL_want_write.3=SSL_want.3 1 s none /usr/local/ssl/man/man3/SSL_want_x509_lookup.3=SSL_want.3 1 f none /usr/local/ssl/man/man3/SSL_write.3 0644 root root 8245 5619 1362466341 1 s none /usr/local/ssl/man/man3/SSLeay.3=OPENSSL_VERSION_NUMBER.3 1 s none /usr/local/ssl/man/man3/SSLeay_add_ssl_algorithms.3=SSL_library_init.3 1 s none /usr/local/ssl/man/man3/SSLeay_version.3=OPENSSL_VERSION_NUMBER.3 1 s none /usr/local/ssl/man/man3/UI_OpenSSL.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_error_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_info_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_input_boolean.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_input_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_user_data.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_add_verify_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_construct_prompt.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_ctrl.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_error_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_info_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_input_boolean.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_input_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_dup_verify_string.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_free.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_get0_result.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_get0_user_data.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_get_default_method.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_get_method.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_new.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_new_method.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_process.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_set_default_method.3=ui.3 1 s none /usr/local/ssl/man/man3/UI_set_method.3=ui.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_create_by_NID.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_create_by_OBJ.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_create_by_txt.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_get_data.3=X509_NAME_ENTRY_get_object.3 1 f none /usr/local/ssl/man/man3/X509_NAME_ENTRY_get_object.3 0644 root root 6925 5942 1362466328 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_set_data.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_ENTRY_set_object.3=X509_NAME_ENTRY_get_object.3 1 s none /usr/local/ssl/man/man3/X509_NAME_add_entry.3=X509_NAME_add_entry_by_txt.3 1 s none /usr/local/ssl/man/man3/X509_NAME_add_entry_by_NID.3=X509_NAME_add_entry_by_txt.3 1 s none /usr/local/ssl/man/man3/X509_NAME_add_entry_by_OBJ.3=X509_NAME_add_entry_by_txt.3 1 f none /usr/local/ssl/man/man3/X509_NAME_add_entry_by_txt.3 0644 root root 8482 4066 1362466328 1 s none /usr/local/ssl/man/man3/X509_NAME_delete_entry.3=X509_NAME_add_entry_by_txt.3 1 s none /usr/local/ssl/man/man3/X509_NAME_entry_count.3=X509_NAME_get_index_by_NID.3 1 s none /usr/local/ssl/man/man3/X509_NAME_get_entry.3=X509_NAME_get_index_by_NID.3 1 f none /usr/local/ssl/man/man3/X509_NAME_get_index_by_NID.3 0644 root root 7750 8585 1362466328 1 s none /usr/local/ssl/man/man3/X509_NAME_get_index_by_OBJ.3=X509_NAME_get_index_by_NID.3 1 s none /usr/local/ssl/man/man3/X509_NAME_get_text_by_NID.3=X509_NAME_get_index_by_NID.3 1 s none /usr/local/ssl/man/man3/X509_NAME_get_text_by_OBJ.3=X509_NAME_get_index_by_NID.3 1 s none /usr/local/ssl/man/man3/X509_NAME_oneline.3=X509_NAME_print_ex.3 1 s none /usr/local/ssl/man/man3/X509_NAME_print.3=X509_NAME_print_ex.3 1 f none /usr/local/ssl/man/man3/X509_NAME_print_ex.3 0644 root root 8885 47655 1362466329 1 s none /usr/local/ssl/man/man3/X509_NAME_print_ex_fp.3=X509_NAME_print_ex.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_cleanup.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_free.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get0_param.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get1_chain.3=X509_STORE_CTX_get_error.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get_current_cert.3=X509_STORE_CTX_get_error.3 1 f none /usr/local/ssl/man/man3/X509_STORE_CTX_get_error.3 0644 root root 19523 60063 1362466329 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get_error_depth.3=X509_STORE_CTX_get_error.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_get_ex_data.3=X509_STORE_CTX_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/X509_STORE_CTX_get_ex_new_index.3 0644 root root 5147 54962 1362466329 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_init.3=X509_STORE_CTX_new.3 1 f none /usr/local/ssl/man/man3/X509_STORE_CTX_new.3 0644 root root 9014 50575 1362466329 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set0_crls.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set0_param.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_cert.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_chain.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_default.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_error.3=X509_STORE_CTX_get_error.3 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_set_ex_data.3=X509_STORE_CTX_get_ex_new_index.3 1 f none /usr/local/ssl/man/man3/X509_STORE_CTX_set_verify_cb.3 0644 root root 9804 16220 1362466329 1 s none /usr/local/ssl/man/man3/X509_STORE_CTX_trusted_stack.3=X509_STORE_CTX_new.3 1 s none /usr/local/ssl/man/man3/X509_STORE_set_verify_cb.3=X509_STORE_set_verify_cb_func.3 1 f none /usr/local/ssl/man/man3/X509_STORE_set_verify_cb_func.3 0644 root root 5422 11280 1362466329 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_add0_policy.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_clear_flags.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_get_depth.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_get_flags.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set1_policies.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_depth.3=X509_VERIFY_PARAM_set_flags.3 1 f none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_flags.3 0644 root root 11532 11617 1362466329 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_purpose.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_time.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_VERIFY_PARAM_set_trust.3=X509_VERIFY_PARAM_set_flags.3 1 s none /usr/local/ssl/man/man3/X509_free.3=X509_new.3 1 f none /usr/local/ssl/man/man3/X509_new.3 0644 root root 4772 22690 1362466329 1 f none /usr/local/ssl/man/man3/X509_verify_cert.3 0644 root root 5452 21885 1362466329 1 s none /usr/local/ssl/man/man3/X509_verify_cert_error_string.3=X509_STORE_CTX_get_error.3 1 f none /usr/local/ssl/man/man3/bio.3 0644 root root 5751 43203 1362466329 1 f none /usr/local/ssl/man/man3/blowfish.3 0644 root root 9095 14221 1362466329 1 f none /usr/local/ssl/man/man3/bn.3 0644 root root 11221 61669 1362466330 1 s none /usr/local/ssl/man/man3/bn_add_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_check_top.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_cmp_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_div_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_dump.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_expand.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_expand2.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_fix_top.3=bn_internal.3 1 f none /usr/local/ssl/man/man3/bn_internal.3 0644 root root 14857 23667 1362466330 1 s none /usr/local/ssl/man/man3/bn_mul_add_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_comba4.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_comba8.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_high.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_low_normal.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_low_recursive.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_normal.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_part_recursive.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_recursive.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_mul_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_print.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_set_high.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_set_low.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_set_max.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_comba4.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_comba8.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_normal.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_recursive.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sqr_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_sub_words.3=bn_internal.3 1 s none /usr/local/ssl/man/man3/bn_wexpand.3=bn_internal.3 1 f none /usr/local/ssl/man/man3/buffer.3 0644 root root 6104 7196 1362466330 1 f none /usr/local/ssl/man/man3/crypto.3 0644 root root 6588 40849 1362466330 1 s none /usr/local/ssl/man/man3/d2i_509_CRL_fp.3=d2i_X509_CRL.3 1 f none /usr/local/ssl/man/man3/d2i_ASN1_OBJECT.3 0644 root root 4445 58409 1362466330 1 f none /usr/local/ssl/man/man3/d2i_DHparams.3 0644 root root 4426 59320 1362466330 1 s none /usr/local/ssl/man/man3/d2i_DSAPrivateKey.3=d2i_DSAPublicKey.3 1 f none /usr/local/ssl/man/man3/d2i_DSAPublicKey.3 0644 root root 6856 4433 1362466330 1 s none /usr/local/ssl/man/man3/d2i_DSA_PUBKEY.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/d2i_DSA_SIG.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/d2i_Netscape_RSA.3=d2i_RSAPublicKey.3 1 f none /usr/local/ssl/man/man3/d2i_PKCS8PrivateKey.3 0644 root root 6077 57790 1362466330 1 s none /usr/local/ssl/man/man3/d2i_PKCS8PrivateKey_bio.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/d2i_PKCS8PrivateKey_fp.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/d2i_RSAPrivateKey.3=d2i_RSAPublicKey.3 1 f none /usr/local/ssl/man/man3/d2i_RSAPublicKey.3 0644 root root 5913 54007 1362466330 1 s none /usr/local/ssl/man/man3/d2i_RSA_PUBKEY.3=d2i_RSAPublicKey.3 1 f none /usr/local/ssl/man/man3/d2i_SSL_SESSION.3 0644 root root 6685 62000 1362466341 1 f none /usr/local/ssl/man/man3/d2i_X509.3 0644 root root 11108 24525 1362466331 1 f none /usr/local/ssl/man/man3/d2i_X509_ALGOR.3 0644 root root 4477 62777 1362466331 1 f none /usr/local/ssl/man/man3/d2i_X509_CRL.3 0644 root root 4714 12787 1362466331 1 s none /usr/local/ssl/man/man3/d2i_X509_CRL_bio.3=d2i_X509_CRL.3 1 f none /usr/local/ssl/man/man3/d2i_X509_NAME.3 0644 root root 4558 3761 1362466331 1 f none /usr/local/ssl/man/man3/d2i_X509_REQ.3 0644 root root 4688 10663 1362466331 1 s none /usr/local/ssl/man/man3/d2i_X509_REQ_bio.3=d2i_X509_REQ.3 1 s none /usr/local/ssl/man/man3/d2i_X509_REQ_fp.3=d2i_X509_REQ.3 1 f none /usr/local/ssl/man/man3/d2i_X509_SIG.3 0644 root root 4462 61050 1362466331 1 s none /usr/local/ssl/man/man3/d2i_X509_bio.3=d2i_X509.3 1 s none /usr/local/ssl/man/man3/d2i_X509_fp.3=d2i_X509.3 1 f none /usr/local/ssl/man/man3/des.3 0644 root root 21744 757 1362466331 1 s none /usr/local/ssl/man/man3/des_read_2passwords.3=ui_compat.3 1 s none /usr/local/ssl/man/man3/des_read_password.3=ui_compat.3 1 s none /usr/local/ssl/man/man3/des_read_pw.3=ui_compat.3 1 s none /usr/local/ssl/man/man3/des_read_pw_string.3=ui_compat.3 1 f none /usr/local/ssl/man/man3/dh.3 0644 root root 6491 29155 1362466331 1 f none /usr/local/ssl/man/man3/dsa.3 0644 root root 8096 21263 1362466331 1 f none /usr/local/ssl/man/man3/ecdsa.3 0644 root root 11578 25597 1362466332 1 f none /usr/local/ssl/man/man3/engine.3 0644 root root 35675 62491 1362466332 1 f none /usr/local/ssl/man/man3/err.3 0644 root root 10975 44392 1362466332 1 f none /usr/local/ssl/man/man3/evp.3 0644 root root 5745 52135 1362466332 1 f none /usr/local/ssl/man/man3/hmac.3 0644 root root 7843 19210 1362466332 1 s none /usr/local/ssl/man/man3/i2d_ASN1_OBJECT.3=d2i_ASN1_OBJECT.3 1 f none /usr/local/ssl/man/man3/i2d_CMS_bio_stream.3 0644 root root 4908 35060 1362466332 1 s none /usr/local/ssl/man/man3/i2d_DHparams.3=d2i_DHparams.3 1 s none /usr/local/ssl/man/man3/i2d_DSAPrivateKey.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_DSAPublicKey.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_DSA_PUBKEY.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_DSA_SIG.3=d2i_DSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_Netscape_RSA.3=d2i_RSAPublicKey.3 1 f none /usr/local/ssl/man/man3/i2d_PKCS7_bio_stream.3 0644 root root 4903 33627 1362466332 1 s none /usr/local/ssl/man/man3/i2d_PKCS8PrivateKey_bio.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/i2d_PKCS8PrivateKey_fp.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/i2d_PKCS8PrivateKey_nid_bio.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/i2d_PKCS8PrivateKey_nid_fp.3=d2i_PKCS8PrivateKey.3 1 s none /usr/local/ssl/man/man3/i2d_RSAPrivateKey.3=d2i_RSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_RSAPublicKey.3=d2i_RSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_RSA_PUBKEY.3=d2i_RSAPublicKey.3 1 s none /usr/local/ssl/man/man3/i2d_SSL_SESSION.3=d2i_SSL_SESSION.3 1 s none /usr/local/ssl/man/man3/i2d_X509.3=d2i_X509.3 1 s none /usr/local/ssl/man/man3/i2d_X509_ALGOR.3=d2i_X509_ALGOR.3 1 s none /usr/local/ssl/man/man3/i2d_X509_CRL.3=d2i_X509_CRL.3 1 s none /usr/local/ssl/man/man3/i2d_X509_CRL_bio.3=d2i_X509_CRL.3 1 s none /usr/local/ssl/man/man3/i2d_X509_CRL_fp.3=d2i_X509_CRL.3 1 s none /usr/local/ssl/man/man3/i2d_X509_NAME.3=d2i_X509_NAME.3 1 s none /usr/local/ssl/man/man3/i2d_X509_REQ.3=d2i_X509_REQ.3 1 s none /usr/local/ssl/man/man3/i2d_X509_REQ_bio.3=d2i_X509_REQ.3 1 s none /usr/local/ssl/man/man3/i2d_X509_REQ_fp.3=d2i_X509_REQ.3 1 s none /usr/local/ssl/man/man3/i2d_X509_SIG.3=d2i_X509_SIG.3 1 s none /usr/local/ssl/man/man3/i2d_X509_bio.3=d2i_X509.3 1 s none /usr/local/ssl/man/man3/i2d_X509_fp.3=d2i_X509.3 1 s none /usr/local/ssl/man/man3/lh_delete.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_doall.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_doall_arg.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_error.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_free.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_insert.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_new.3=lhash.3 1 s none /usr/local/ssl/man/man3/lh_node_stats.3=lh_stats.3 1 s none /usr/local/ssl/man/man3/lh_node_stats_bio.3=lh_stats.3 1 s none /usr/local/ssl/man/man3/lh_node_usage_stats.3=lh_stats.3 1 s none /usr/local/ssl/man/man3/lh_node_usage_stats_bio.3=lh_stats.3 1 s none /usr/local/ssl/man/man3/lh_retrieve.3=lhash.3 1 f none /usr/local/ssl/man/man3/lh_stats.3 0644 root root 5853 57141 1362466332 1 s none /usr/local/ssl/man/man3/lh_stats_bio.3=lh_stats.3 1 f none /usr/local/ssl/man/man3/lhash.3 0644 root root 18595 25269 1362466332 1 f none /usr/local/ssl/man/man3/md5.3 0644 root root 7351 27059 1362466332 1 f none /usr/local/ssl/man/man3/mdc2.3 0644 root root 5805 40333 1362466333 1 f none /usr/local/ssl/man/man3/pem.3 0644 root root 24691 4781 1362466333 1 f none /usr/local/ssl/man/man3/rand.3 0644 root root 10295 46922 1362466333 1 f none /usr/local/ssl/man/man3/rc4.3 0644 root root 5816 50747 1362466333 1 f none /usr/local/ssl/man/man3/ripemd.3 0644 root root 5875 43227 1362466333 1 f none /usr/local/ssl/man/man3/rsa.3 0644 root root 8216 36860 1362466333 1 f none /usr/local/ssl/man/man3/sha.3 0644 root root 6113 1530 1362466333 1 f none /usr/local/ssl/man/man3/ssl.3 0644 root root 46605 24634 1362466341 1 f none /usr/local/ssl/man/man3/threads.3 0644 root root 12114 1015 1362466333 1 f none /usr/local/ssl/man/man3/ui.3 0644 root root 12800 11503 1362466334 1 f none /usr/local/ssl/man/man3/ui_compat.3 0644 root root 5997 7718 1362466334 1 f none /usr/local/ssl/man/man3/x509.3 0644 root root 5965 56143 1362466334 1 d none /usr/local/ssl/man/man5 0755 root root 1 f none /usr/local/ssl/man/man5/config.5 0644 root root 14819 61316 1362466311 1 f none /usr/local/ssl/man/man5/x509v3_config.5 0644 root root 22443 64446 1362466315 1 d none /usr/local/ssl/man/man7 0755 root root 1 f none /usr/local/ssl/man/man7/des_modes.7 0644 root root 10175 40942 1362466331 1 d none /usr/local/ssl/misc 0755 root root 1 f none /usr/local/ssl/misc/CA.pl 0755 root root 5685 37995 1362466342 1 f none /usr/local/ssl/misc/CA.sh 0755 root root 5175 1711 1362466342 1 f none /usr/local/ssl/misc/c_hash 0755 root root 119 8936 1362466342 1 f none /usr/local/ssl/misc/c_info 0755 root root 152 11254 1362466342 1 f none /usr/local/ssl/misc/c_issuer 0755 root root 112 8495 1362466342 1 f none /usr/local/ssl/misc/c_name 0755 root root 110 8289 1362466342 1 f none /usr/local/ssl/misc/tsget 0755 root root 6419 47528 1362466342 1 f none /usr/local/ssl/openssl.cnf 0644 root root 10835 11846 1362466342 1 d none /usr/local/ssl/private 0755 root root 1 i checkinstall 790 2505 1362467353 1 i pkginfo 260 19973 1362467182 07070100048d02000041ed0000000000000000000000025135996e00000000000000b600010002ffffffffffffffff0000000800000000install07070100048d03000081ed00000000000000000000000151359a1900000316000000b600010002ffffffffffffffff0000001500000000install/checkinstall#!/bin/sh # expected_bits="64" expected_release="5.11" expected_platform="i386" # release=`uname -r` platform=`uname -p` bits=`isainfo -b` # if [ ${platform} != ${expected_platform} ]; then echo "\n\n\n\tThis package must be installed on a ${expected_platform} architecture\n" echo "\tAborting installation.\n\n\n" exit 1 fi if [ ${release} != ${expected_release} ]; then echo "\n\n\n\tThis package must be installed on a ${expected_release} machine\n" echo "\tAborting installation.\n\n\n" exit 1 fi #if [ ${bits} != ${expected_bits} ]; then # echo "\n\n\n\tThis package must be installed on a ${expected_bits} bit machine\n" # echo "\tYour machine is running a ${bits} bit O.S. currently\n" # echo "\tAborting installation.\n\n\n" # exit 1 #fi exit 0 07070100048b3a000041ed0000000000000000000000035135996e00000000000000b600010002ffffffffffffffff0000000500000000root07070100048b3b000041ed0000000000000000000000035135996e00000000000000b600010002ffffffffffffffff0000000900000000root/usr07070100048b3c000041ed0000000000000000000000065135996e00000000000000b600010002ffffffffffffffff0000000f00000000root/usr/local07070100048ba5000041ed0000000000000000000000045135996e00000000000000b600010002ffffffffffffffff0000001300000000root/usr/local/ssl07070100048d01000081a40000000000000000000000015135962600002a53000000b600010002ffffffffffffffff0000001f00000000root/usr/local/ssl/openssl.cnf# # OpenSSL example configuration file. # This is mostly being used for generation of certificate requests. # # This definition stops the following lines choking if HOME isn't # defined. HOME = . RANDFILE = $ENV::HOME/.rnd # Extra OBJECT IDENTIFIER info: #oid_file = $ENV::HOME/.oid oid_section = new_oids # To use this configuration file with the "-extfile" option of the # "openssl x509" utility, name here the section containing the # X.509v3 extensions to use: # extensions = # (Alternatively, use a configuration file that has only # X.509v3 extensions in its main [= default] section.) [ new_oids ] # We can add new OIDs in here for use by 'ca', 'req' and 'ts'. # Add a simple OID like this: # testoid1=1.2.3.4 # Or use config file substitution like this: # testoid2=${testoid1}.5.6 # Policies used by the TSA examples. tsa_policy1 = 1.2.3.4.1 tsa_policy2 = 1.2.3.4.5.6 tsa_policy3 = 1.2.3.4.5.7 #################################################################### [ ca ] default_ca = CA_default # The default ca section #################################################################### [ CA_default ] dir = ./demoCA # Where everything is kept certs = $dir/certs # Where the issued certs are kept crl_dir = $dir/crl # Where the issued crl are kept database = $dir/index.txt # database index file. #unique_subject = no # Set to 'no' to allow creation of # several ctificates with same subject. new_certs_dir = $dir/newcerts # default place for new certs. certificate = $dir/cacert.pem # The CA certificate serial = $dir/serial # The current serial number crlnumber = $dir/crlnumber # the current crl number # must be commented out to leave a V1 CRL crl = $dir/crl.pem # The current CRL private_key = $dir/private/cakey.pem# The private key RANDFILE = $dir/private/.rand # private random number file x509_extensions = usr_cert # The extentions to add to the cert # Comment out the following two lines for the "traditional" # (and highly broken) format. name_opt = ca_default # Subject Name options cert_opt = ca_default # Certificate field options # Extension copying option: use with caution. # copy_extensions = copy # Extensions to add to a CRL. Note: Netscape communicator chokes on V2 CRLs # so this is commented out by default to leave a V1 CRL. # crlnumber must also be commented out to leave a V1 CRL. # crl_extensions = crl_ext default_days = 365 # how long to certify for default_crl_days= 30 # how long before next CRL default_md = default # use public key default MD preserve = no # keep passed DN ordering # A few difference way of specifying how similar the request should look # For type CA, the listed attributes must be the same, and the optional # and supplied fields are just that :-) policy = policy_match # For the CA policy [ policy_match ] countryName = match stateOrProvinceName = match organizationName = match organizationalUnitName = optional commonName = supplied emailAddress = optional # For the 'anything' policy # At this point in time, you must list all acceptable 'object' # types. [ policy_anything ] countryName = optional stateOrProvinceName = optional localityName = optional organizationName = optional organizationalUnitName = optional commonName = supplied emailAddress = optional #################################################################### [ req ] default_bits = 1024 default_keyfile = privkey.pem distinguished_name = req_distinguished_name attributes = req_attributes x509_extensions = v3_ca # The extentions to add to the self signed cert # Passwords for private keys if not present they will be prompted for # input_password = secret # output_password = secret # This sets a mask for permitted string types. There are several options. # default: PrintableString, T61String, BMPString. # pkix : PrintableString, BMPString (PKIX recommendation before 2004) # utf8only: only UTF8Strings (PKIX recommendation after 2004). # nombstr : PrintableString, T61String (no BMPStrings or UTF8Strings). # MASK:XXXX a literal mask value. # WARNING: ancient versions of Netscape crash on BMPStrings or UTF8Strings. string_mask = utf8only # req_extensions = v3_req # The extensions to add to a certificate request [ req_distinguished_name ] countryName = Country Name (2 letter code) countryName_default = AU countryName_min = 2 countryName_max = 2 stateOrProvinceName = State or Province Name (full name) stateOrProvinceName_default = Some-State localityName = Locality Name (eg, city) 0.organizationName = Organization Name (eg, company) 0.organizationName_default = Internet Widgits Pty Ltd # we can do this but it is not needed normally :-) #1.organizationName = Second Organization Name (eg, company) #1.organizationName_default = World Wide Web Pty Ltd organizationalUnitName = Organizational Unit Name (eg, section) #organizationalUnitName_default = commonName = Common Name (e.g. server FQDN or YOUR name) commonName_max = 64 emailAddress = Email Address emailAddress_max = 64 # SET-ex3 = SET extension number 3 [ req_attributes ] challengePassword = A challenge password challengePassword_min = 4 challengePassword_max = 20 unstructuredName = An optional company name [ usr_cert ] # These extensions are added when 'ca' signs a request. # This goes against PKIX guidelines but some CAs do it and some software # requires this to avoid interpreting an end user certificate as a CA. basicConstraints=CA:FALSE # Here are some examples of the usage of nsCertType. If it is omitted # the certificate can be used for anything *except* object signing. # This is OK for an SSL server. # nsCertType = server # For an object signing certificate this would be used. # nsCertType = objsign # For normal client use this is typical # nsCertType = client, email # and for everything including object signing: # nsCertType = client, email, objsign # This is typical in keyUsage for a client certificate. # keyUsage = nonRepudiation, digitalSignature, keyEncipherment # This will be displayed in Netscape's comment listbox. nsComment = "OpenSSL Generated Certificate" # PKIX recommendations harmless if included in all certificates. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer # This stuff is for subjectAltName and issuerAltname. # Import the email address. # subjectAltName=email:copy # An alternative to produce certificates that aren't # deprecated according to PKIX. # subjectAltName=email:move # Copy subject details # issuerAltName=issuer:copy #nsCaRevocationUrl = http://www.domain.dom/ca-crl.pem #nsBaseUrl #nsRevocationUrl #nsRenewalUrl #nsCaPolicyUrl #nsSslServerName # This is required for TSA certificates. # extendedKeyUsage = critical,timeStamping [ v3_req ] # Extensions to add to a certificate request basicConstraints = CA:FALSE keyUsage = nonRepudiation, digitalSignature, keyEncipherment [ v3_ca ] # Extensions for a typical CA # PKIX recommendation. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid:always,issuer # This is what PKIX recommends but some broken software chokes on critical # extensions. #basicConstraints = critical,CA:true # So we do this instead. basicConstraints = CA:true # Key usage: this is typical for a CA certificate. However since it will # prevent it being used as an test self-signed certificate it is best # left out by default. # keyUsage = cRLSign, keyCertSign # Some might want this also # nsCertType = sslCA, emailCA # Include email address in subject alt name: another PKIX recommendation # subjectAltName=email:copy # Copy issuer details # issuerAltName=issuer:copy # DER hex encoding of an extension: beware experts only! # obj=DER:02:03 # Where 'obj' is a standard or added object # You can even override a supported extension: # basicConstraints= critical, DER:30:03:01:01:FF [ crl_ext ] # CRL extensions. # Only issuerAltName and authorityKeyIdentifier make any sense in a CRL. # issuerAltName=issuer:copy authorityKeyIdentifier=keyid:always [ proxy_cert_ext ] # These extensions should be added when creating a proxy certificate # This goes against PKIX guidelines but some CAs do it and some software # requires this to avoid interpreting an end user certificate as a CA. basicConstraints=CA:FALSE # Here are some examples of the usage of nsCertType. If it is omitted # the certificate can be used for anything *except* object signing. # This is OK for an SSL server. # nsCertType = server # For an object signing certificate this would be used. # nsCertType = objsign # For normal client use this is typical # nsCertType = client, email # and for everything including object signing: # nsCertType = client, email, objsign # This is typical in keyUsage for a client certificate. # keyUsage = nonRepudiation, digitalSignature, keyEncipherment # This will be displayed in Netscape's comment listbox. nsComment = "OpenSSL Generated Certificate" # PKIX recommendations harmless if included in all certificates. subjectKeyIdentifier=hash authorityKeyIdentifier=keyid,issuer # This stuff is for subjectAltName and issuerAltname. # Import the email address. # subjectAltName=email:copy # An alternative to produce certificates that aren't # deprecated according to PKIX. # subjectAltName=email:move # Copy subject details # issuerAltName=issuer:copy #nsCaRevocationUrl = http://www.domain.dom/ca-crl.pem #nsBaseUrl #nsRevocationUrl #nsRenewalUrl #nsCaPolicyUrl #nsSslServerName # This really needs to be in place for it to be a proxy certificate. proxyCertInfo=critical,language:id-ppl-anyLanguage,pathlen:3,policy:foo #################################################################### [ tsa ] default_tsa = tsa_config1 # the default TSA section [ tsa_config1 ] # These are used by the TSA reply generation only. dir = ./demoCA # TSA root directory serial = $dir/tsaserial # The current serial number (mandatory) crypto_device = builtin # OpenSSL engine to use for signing signer_cert = $dir/tsacert.pem # The TSA signing certificate # (optional) certs = $dir/cacert.pem # Certificate chain to include in reply # (optional) signer_key = $dir/private/tsakey.pem # The TSA private key (optional) default_policy = tsa_policy1 # Policy if request did not specify it # (optional) other_policies = tsa_policy2, tsa_policy3 # acceptable policies (optional) digests = md5, sha1 # Acceptable message digests (mandatory) accuracy = secs:1, millisecs:500, microsecs:100 # (optional) clock_precision_digits = 0 # number of digits after dot. (optional) ordering = yes # Is ordering defined for timestamps? # (optional, default: no) tsa_name = yes # Must the TSA name be included in the reply? # (optional, default: no) ess_cert_id_chain = no # Must the ESS cert id chain be included? # (optional, default: no) 07070100048cf9000041ed0000000000000000000000025135996e00000000000000b600010002ffffffffffffffff0000001800000000root/usr/local/ssl/misc07070100048cfd000081ed0000000000000000000000015135962600000098000000b600010002ffffffffffffffff0000001f00000000root/usr/local/ssl/misc/c_info#!/bin/sh # # print the subject # for i in $* do n=`openssl x509 -subject -issuer -enddate -noout -in $i` echo "$i" echo "$n" echo "--------" done 07070100048cfb000081ed0000000000000000000000015135962600001437000000b600010002ffffffffffffffff0000001e00000000root/usr/local/ssl/misc/CA.sh#!/bin/sh # # CA - wrapper around ca to make it easier to use ... basically ca requires # some setup stuff to be done before you can use it and this makes # things easier between now and when Eric is convinced to fix it :-) # # CA -newca ... will setup the right stuff # CA -newreq ... will generate a certificate request # CA -sign ... will sign the generated request and output # # At the end of that grab newreq.pem and newcert.pem (one has the key # and the other the certificate) and cat them together and that is what # you want/need ... I'll make even this a little cleaner later. # # # 12-Jan-96 tjh Added more things ... including CA -signcert which # converts a certificate to a request and then signs it. # 10-Jan-96 eay Fixed a few more bugs and added the SSLEAY_CONFIG # environment variable so this can be driven from # a script. # 25-Jul-96 eay Cleaned up filenames some more. # 11-Jun-96 eay Fixed a few filename missmatches. # 03-May-96 eay Modified to use 'ssleay cmd' instead of 'cmd'. # 18-Apr-96 tjh Original hacking # # Tim Hudson # tjh@cryptsoft.com # # default openssl.cnf file has setup as per the following # demoCA ... where everything is stored cp_pem() { infile=$1 outfile=$2 bound=$3 flag=0 exec <$infile; while read line; do if [ $flag -eq 1 ]; then echo $line|grep "^-----END.*$bound" 2>/dev/null 1>/dev/null if [ $? -eq 0 ] ; then echo $line >>$outfile break else echo $line >>$outfile fi fi echo $line|grep "^-----BEGIN.*$bound" 2>/dev/null 1>/dev/null if [ $? -eq 0 ]; then echo $line >$outfile flag=1 fi done } usage() { echo "usage: $0 -newcert|-newreq|-newreq-nodes|-newca|-sign|-verify" >&2 } if [ -z "$OPENSSL" ]; then OPENSSL=openssl; fi if [ -z "$DAYS" ] ; then DAYS="-days 365" ; fi # 1 year CADAYS="-days 1095" # 3 years REQ="$OPENSSL req $SSLEAY_CONFIG" CA="$OPENSSL ca $SSLEAY_CONFIG" VERIFY="$OPENSSL verify" X509="$OPENSSL x509" PKCS12="openssl pkcs12" if [ -z "$CATOP" ] ; then CATOP=./demoCA ; fi CAKEY=./cakey.pem CAREQ=./careq.pem CACERT=./cacert.pem RET=0 while [ "$1" != "" ] ; do case $1 in -\?|-h|-help) usage exit 0 ;; -newcert) # create a certificate $REQ -new -x509 -keyout newkey.pem -out newcert.pem $DAYS RET=$? echo "Certificate is in newcert.pem, private key is in newkey.pem" ;; -newreq) # create a certificate request $REQ -new -keyout newkey.pem -out newreq.pem $DAYS RET=$? echo "Request is in newreq.pem, private key is in newkey.pem" ;; -newreq-nodes) # create a certificate request $REQ -new -nodes -keyout newreq.pem -out newreq.pem $DAYS RET=$? echo "Request (and private key) is in newreq.pem" ;; -newca) # if explicitly asked for or it doesn't exist then setup the directory # structure that Eric likes to manage things NEW="1" if [ "$NEW" -o ! -f ${CATOP}/serial ]; then # create the directory hierarchy mkdir -p ${CATOP} mkdir -p ${CATOP}/certs mkdir -p ${CATOP}/crl mkdir -p ${CATOP}/newcerts mkdir -p ${CATOP}/private touch ${CATOP}/index.txt fi if [ ! -f ${CATOP}/private/$CAKEY ]; then echo "CA certificate filename (or enter to create)" read FILE # ask user for existing CA certificate if [ "$FILE" ]; then cp_pem $FILE ${CATOP}/private/$CAKEY PRIVATE cp_pem $FILE ${CATOP}/$CACERT CERTIFICATE RET=$? if [ ! -f "${CATOP}/serial" ]; then $X509 -in ${CATOP}/$CACERT -noout -next_serial \ -out ${CATOP}/serial fi else echo "Making CA certificate ..." $REQ -new -keyout ${CATOP}/private/$CAKEY \ -out ${CATOP}/$CAREQ $CA -create_serial -out ${CATOP}/$CACERT $CADAYS -batch \ -keyfile ${CATOP}/private/$CAKEY -selfsign \ -extensions v3_ca \ -infiles ${CATOP}/$CAREQ RET=$? fi fi ;; -xsign) $CA -policy policy_anything -infiles newreq.pem RET=$? ;; -pkcs12) if [ -z "$2" ] ; then CNAME="My Certificate" else CNAME="$2" fi $PKCS12 -in newcert.pem -inkey newreq.pem -certfile ${CATOP}/$CACERT \ -out newcert.p12 -export -name "$CNAME" RET=$? exit $RET ;; -sign|-signreq) $CA -policy policy_anything -out newcert.pem -infiles newreq.pem RET=$? cat newcert.pem echo "Signed certificate is in newcert.pem" ;; -signCA) $CA -policy policy_anything -out newcert.pem -extensions v3_ca -infiles newreq.pem RET=$? echo "Signed CA certificate is in newcert.pem" ;; -signcert) echo "Cert passphrase will be requested twice - bug?" $X509 -x509toreq -in newreq.pem -signkey newreq.pem -out tmp.pem $CA -policy policy_anything -out newcert.pem -infiles tmp.pem RET=$? cat newcert.pem echo "Signed certificate is in newcert.pem" ;; -verify) shift if [ -z "$1" ]; then $VERIFY -CAfile $CATOP/$CACERT newcert.pem RET=$? else for j do $VERIFY -CAfile $CATOP/$CACERT $j if [ $? != 0 ]; then RET=$? fi done fi exit $RET ;; *) echo "Unknown arg $i" >&2 usage exit 1 ;; esac shift done exit $RET 07070100048d00000081ed0000000000000000000000015135962600001913000000b600010002ffffffffffffffff0000001e00000000root/usr/local/ssl/misc/tsget#!/usr/bin/perl -w # Written by Zoltan Glozik . # Copyright (c) 2002 The OpenTSA Project. All rights reserved. $::version = '$Id: tsget,v 1.1.2.2 2009/09/07 17:57:02 steve Exp $'; use strict; use IO::Handle; use Getopt::Std; use File::Basename; use WWW::Curl::Easy; use vars qw(%options); # Callback for reading the body. sub read_body { my ($maxlength, $state) = @_; my $return_data = ""; my $data_len = length ${$state->{data}}; if ($state->{bytes} < $data_len) { $data_len = $data_len - $state->{bytes}; $data_len = $maxlength if $data_len > $maxlength; $return_data = substr ${$state->{data}}, $state->{bytes}, $data_len; $state->{bytes} += $data_len; } return $return_data; } # Callback for writing the body into a variable. sub write_body { my ($data, $pointer) = @_; ${$pointer} .= $data; return length($data); } # Initialise a new Curl object. sub create_curl { my $url = shift; # Create Curl object. my $curl = WWW::Curl::Easy::new(); # Error-handling related options. $curl->setopt(CURLOPT_VERBOSE, 1) if $options{d}; $curl->setopt(CURLOPT_FAILONERROR, 1); $curl->setopt(CURLOPT_USERAGENT, "OpenTSA tsget.pl/" . (split / /, $::version)[2]); # Options for POST method. $curl->setopt(CURLOPT_UPLOAD, 1); $curl->setopt(CURLOPT_CUSTOMREQUEST, "POST"); $curl->setopt(CURLOPT_HTTPHEADER, ["Content-Type: application/timestamp-query", "Accept: application/timestamp-reply,application/timestamp-response"]); $curl->setopt(CURLOPT_READFUNCTION, \&read_body); $curl->setopt(CURLOPT_HEADERFUNCTION, sub { return length($_[0]); }); # Options for getting the result. $curl->setopt(CURLOPT_WRITEFUNCTION, \&write_body); # SSL related options. $curl->setopt(CURLOPT_SSLKEYTYPE, "PEM"); $curl->setopt(CURLOPT_SSL_VERIFYPEER, 1); # Verify server's certificate. $curl->setopt(CURLOPT_SSL_VERIFYHOST, 2); # Check server's CN. $curl->setopt(CURLOPT_SSLKEY, $options{k}) if defined($options{k}); $curl->setopt(CURLOPT_SSLKEYPASSWD, $options{p}) if defined($options{p}); $curl->setopt(CURLOPT_SSLCERT, $options{c}) if defined($options{c}); $curl->setopt(CURLOPT_CAINFO, $options{C}) if defined($options{C}); $curl->setopt(CURLOPT_CAPATH, $options{P}) if defined($options{P}); $curl->setopt(CURLOPT_RANDOM_FILE, $options{r}) if defined($options{r}); $curl->setopt(CURLOPT_EGDSOCKET, $options{g}) if defined($options{g}); # Setting destination. $curl->setopt(CURLOPT_URL, $url); return $curl; } # Send a request and returns the body back. sub get_timestamp { my $curl = shift; my $body = shift; my $ts_body; local $::error_buf; # Error-handling related options. $curl->setopt(CURLOPT_ERRORBUFFER, "::error_buf"); # Options for POST method. $curl->setopt(CURLOPT_INFILE, {data => $body, bytes => 0}); $curl->setopt(CURLOPT_INFILESIZE, length(${$body})); # Options for getting the result. $curl->setopt(CURLOPT_FILE, \$ts_body); # Send the request... my $error_code = $curl->perform(); my $error_string; if ($error_code != 0) { my $http_code = $curl->getinfo(CURLINFO_HTTP_CODE); $error_string = "could not get timestamp"; $error_string .= ", http code: $http_code" unless $http_code == 0; $error_string .= ", curl code: $error_code"; $error_string .= " ($::error_buf)" if defined($::error_buf); } else { my $ct = $curl->getinfo(CURLINFO_CONTENT_TYPE); if (lc($ct) ne "application/timestamp-reply" && lc($ct) ne "application/timestamp-response") { $error_string = "unexpected content type returned: $ct"; } } return ($ts_body, $error_string); } # Print usage information and exists. sub usage { print STDERR "usage: $0 -h [-e ] [-o ] "; print STDERR "[-v] [-d] [-k ] [-p ] "; print STDERR "[-c ] [-C ] [-P ] "; print STDERR "[-r ] [-g ] []...\n"; exit 1; } # ---------------------------------------------------------------------- # Main program # ---------------------------------------------------------------------- # Getting command-line options (default comes from TSGET environment variable). my $getopt_arg = "h:e:o:vdk:p:c:C:P:r:g:"; if (exists $ENV{TSGET}) { my @old_argv = @ARGV; @ARGV = split /\s+/, $ENV{TSGET}; getopts($getopt_arg, \%options) or usage; @ARGV = @old_argv; } getopts($getopt_arg, \%options) or usage; # Checking argument consistency. if (!exists($options{h}) || (@ARGV == 0 && !exists($options{o})) || (@ARGV > 1 && exists($options{o}))) { print STDERR "Inconsistent command line options.\n"; usage; } # Setting defaults. @ARGV = ("-") unless @ARGV != 0; $options{e} = ".tsr" unless defined($options{e}); # Processing requests. my $curl = create_curl $options{h}; undef $/; # For reading whole files. REQUEST: foreach (@ARGV) { my $input = $_; my ($base, $path) = fileparse($input, '\.[^.]*'); my $output_base = $base . $options{e}; my $output = defined($options{o}) ? $options{o} : $path . $output_base; STDERR->printflush("$input: ") if $options{v}; # Read request. my $body; if ($input eq "-") { # Read the request from STDIN; $body = ; } else { # Read the request from file. open INPUT, "<" . $input or warn("$input: could not open input file: $!\n"), next REQUEST; $body = ; close INPUT or warn("$input: could not close input file: $!\n"), next REQUEST; } # Send request. STDERR->printflush("sending request") if $options{v}; my ($ts_body, $error) = get_timestamp $curl, \$body; if (defined($error)) { die "$input: fatal error: $error\n"; } STDERR->printflush(", reply received") if $options{v}; # Write response. if ($output eq "-") { # Write to STDOUT. print $ts_body; } else { # Write to file. open OUTPUT, ">", $output or warn("$output: could not open output file: $!\n"), next REQUEST; print OUTPUT $ts_body; close OUTPUT or warn("$output: could not close output file: $!\n"), next REQUEST; } STDERR->printflush(", $output written.\n") if $options{v}; } $curl->cleanup(); WWW::Curl::Easy::global_cleanup(); 07070100048cfc000081ed0000000000000000000000015135962600000077000000b600010002ffffffffffffffff0000001f00000000root/usr/local/ssl/misc/c_hash#!/bin/sh # print out the hash values # for i in $* do h=`openssl x509 -hash -noout -in $i` echo "$h.0 => $i" done 07070100048cfe000081ed0000000000000000000000015135962600000070000000b600010002ffffffffffffffff0000002100000000root/usr/local/ssl/misc/c_issuer#!/bin/sh # # print out the issuer # for i in $* do n=`openssl x509 -issuer -noout -in $i` echo "$i $n" done 07070100048cff000081ed000000000000000000000001513596260000006e000000b600010002ffffffffffffffff0000001f00000000root/usr/local/ssl/misc/c_name#!/bin/sh # # print the subject # for i in $* do n=`openssl x509 -subject -noout -in $i` echo "$i $n" done 07070100048cfa000081ed0000000000000000000000015135962600001635000000b600010002ffffffffffffffff0000001e00000000root/usr/local/ssl/misc/CA.pl#!/usr/local/bin/perl # # CA - wrapper around ca to make it easier to use ... basically ca requires # some setup stuff to be done before you can use it and this makes # things easier between now and when Eric is convinced to fix it :-) # # CA -newca ... will setup the right stuff # CA -newreq[-nodes] ... will generate a certificate request # CA -sign ... will sign the generated request and output # # At the end of that grab newreq.pem and newcert.pem (one has the key # and the other the certificate) and cat them together and that is what # you want/need ... I'll make even this a little cleaner later. # # # 12-Jan-96 tjh Added more things ... including CA -signcert which # converts a certificate to a request and then signs it. # 10-Jan-96 eay Fixed a few more bugs and added the SSLEAY_CONFIG # environment variable so this can be driven from # a script. # 25-Jul-96 eay Cleaned up filenames some more. # 11-Jun-96 eay Fixed a few filename missmatches. # 03-May-96 eay Modified to use 'ssleay cmd' instead of 'cmd'. # 18-Apr-96 tjh Original hacking # # Tim Hudson # tjh@cryptsoft.com # # 27-Apr-98 snh Translation into perl, fix existing CA bug. # # # Steve Henson # shenson@bigfoot.com # default openssl.cnf file has setup as per the following # demoCA ... where everything is stored my $openssl; if(defined $ENV{OPENSSL}) { $openssl = $ENV{OPENSSL}; } else { $openssl = "openssl"; $ENV{OPENSSL} = $openssl; } $SSLEAY_CONFIG=$ENV{"SSLEAY_CONFIG"}; $DAYS="-days 365"; # 1 year $CADAYS="-days 1095"; # 3 years $REQ="$openssl req $SSLEAY_CONFIG"; $CA="$openssl ca $SSLEAY_CONFIG"; $VERIFY="$openssl verify"; $X509="$openssl x509"; $PKCS12="$openssl pkcs12"; $CATOP="./demoCA"; $CAKEY="cakey.pem"; $CAREQ="careq.pem"; $CACERT="cacert.pem"; $DIRMODE = 0777; $RET = 0; foreach (@ARGV) { if ( /^(-\?|-h|-help)$/ ) { print STDERR "usage: CA -newcert|-newreq|-newreq-nodes|-newca|-sign|-verify\n"; exit 0; } elsif (/^-newcert$/) { # create a certificate system ("$REQ -new -x509 -keyout newkey.pem -out newcert.pem $DAYS"); $RET=$?; print "Certificate is in newcert.pem, private key is in newkey.pem\n" } elsif (/^-newreq$/) { # create a certificate request system ("$REQ -new -keyout newkey.pem -out newreq.pem $DAYS"); $RET=$?; print "Request is in newreq.pem, private key is in newkey.pem\n"; } elsif (/^-newreq-nodes$/) { # create a certificate request system ("$REQ -new -nodes -keyout newkey.pem -out newreq.pem $DAYS"); $RET=$?; print "Request is in newreq.pem, private key is in newkey.pem\n"; } elsif (/^-newca$/) { # if explicitly asked for or it doesn't exist then setup the # directory structure that Eric likes to manage things $NEW="1"; if ( "$NEW" || ! -f "${CATOP}/serial" ) { # create the directory hierarchy mkdir $CATOP, $DIRMODE; mkdir "${CATOP}/certs", $DIRMODE; mkdir "${CATOP}/crl", $DIRMODE ; mkdir "${CATOP}/newcerts", $DIRMODE; mkdir "${CATOP}/private", $DIRMODE; open OUT, ">${CATOP}/index.txt"; close OUT; open OUT, ">${CATOP}/crlnumber"; print OUT "01\n"; close OUT; } if ( ! -f "${CATOP}/private/$CAKEY" ) { print "CA certificate filename (or enter to create)\n"; $FILE = ; chop $FILE; # ask user for existing CA certificate if ($FILE) { cp_pem($FILE,"${CATOP}/private/$CAKEY", "PRIVATE"); cp_pem($FILE,"${CATOP}/$CACERT", "CERTIFICATE"); $RET=$?; } else { print "Making CA certificate ...\n"; system ("$REQ -new -keyout " . "${CATOP}/private/$CAKEY -out ${CATOP}/$CAREQ"); system ("$CA -create_serial " . "-out ${CATOP}/$CACERT $CADAYS -batch " . "-keyfile ${CATOP}/private/$CAKEY -selfsign " . "-extensions v3_ca " . "-infiles ${CATOP}/$CAREQ "); $RET=$?; } } } elsif (/^-pkcs12$/) { my $cname = $ARGV[1]; $cname = "My Certificate" unless defined $cname; system ("$PKCS12 -in newcert.pem -inkey newkey.pem " . "-certfile ${CATOP}/$CACERT -out newcert.p12 " . "-export -name \"$cname\""); $RET=$?; print "PKCS #12 file is in newcert.p12\n"; exit $RET; } elsif (/^-xsign$/) { system ("$CA -policy policy_anything -infiles newreq.pem"); $RET=$?; } elsif (/^(-sign|-signreq)$/) { system ("$CA -policy policy_anything -out newcert.pem " . "-infiles newreq.pem"); $RET=$?; print "Signed certificate is in newcert.pem\n"; } elsif (/^(-signCA)$/) { system ("$CA -policy policy_anything -out newcert.pem " . "-extensions v3_ca -infiles newreq.pem"); $RET=$?; print "Signed CA certificate is in newcert.pem\n"; } elsif (/^-signcert$/) { system ("$X509 -x509toreq -in newreq.pem -signkey newreq.pem " . "-out tmp.pem"); system ("$CA -policy policy_anything -out newcert.pem " . "-infiles tmp.pem"); $RET = $?; print "Signed certificate is in newcert.pem\n"; } elsif (/^-verify$/) { if (shift) { foreach $j (@ARGV) { system ("$VERIFY -CAfile $CATOP/$CACERT $j"); $RET=$? if ($? != 0); } exit $RET; } else { system ("$VERIFY -CAfile $CATOP/$CACERT newcert.pem"); $RET=$?; exit 0; } } else { print STDERR "Unknown arg $_\n"; print STDERR "usage: CA -newcert|-newreq|-newreq-nodes|-newca|-sign|-verify\n"; exit 1; } } exit $RET; sub cp_pem { my ($infile, $outfile, $bound) = @_; open IN, $infile; open OUT, ">$outfile"; my $flag = 0; while () { $flag = 1 if (/^-----BEGIN.*$bound/) ; print OUT $_ if ($flag); if (/^-----END.*$bound/) { close IN; close OUT; return; } } } 07070100048ba6000041ed0000000000000000000000065135996e00000000000000b600010002ffffffffffffffff0000001700000000root/usr/local/ssl/man07070100048bd4000041ed0000000000000000000000025135996e00000000000000b600010002ffffffffffffffff0000001c00000000root/usr/local/ssl/man/man307070100048c0a000081a40000000000000000000000015135961000001736000000b600010002ffffffffffffffff0000002c00000000root/usr/local/ssl/man/man3/CMS_get0_type.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CMS_get0_type 3" .TH CMS_get0_type 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& CMS_get0_type, CMS_set1_eContentType, CMS_get0_eContentType \- get and set CMS content types .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& const ASN1_OBJECT *CMS_get0_type(CMS_ContentInfo *cms); \& int CMS_set1_eContentType(CMS_ContentInfo *cms, const ASN1_OBJECT *oid); \& const ASN1_OBJECT *CMS_get0_eContentType(CMS_ContentInfo *cms); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fICMS_get0_type()\fR returns the content type of a CMS_ContentInfo structure as and \s-1ASN1_OBJECT\s0 pointer. An application can then decide how to process the CMS_ContentInfo structure based on this value. .PP \&\fICMS_set1_eContentType()\fR sets the embedded content type of a CMS_ContentInfo structure. It should be called with \s-1CMS\s0 functions with the \fB\s-1CMS_PARTIAL\s0\fR flag and \fBbefore\fR the structure is finalised, otherwise the results are undefined. .PP \&\s-1ASN1_OBJECT\s0 *\fICMS_get0_eContentType()\fR returns a pointer to the embedded content type. .SH "NOTES" .IX Header "NOTES" As the \fB0\fR implies \fICMS_get0_type()\fR and \fICMS_get0_eContentType()\fR return internal pointers which should \fBnot\fR be freed up. \fICMS_set1_eContentType()\fR copies the supplied \s-1OID\s0 and it \fBshould\fR be freed up after use. .PP The \fB\s-1ASN1_OBJECT\s0\fR values returned can be converted to an integer \fB\s-1NID\s0\fR value using \fIOBJ_obj2nid()\fR. For the currently supported content types the following values are returned: .PP .Vb 6 \& NID_pkcs7_data \& NID_pkcs7_signed \& NID_pkcs7_digest \& NID_id_smime_ct_compressedData: \& NID_pkcs7_encrypted \& NID_pkcs7_enveloped .Ve .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fICMS_get0_type()\fR and \fICMS_get0_eContentType()\fR return and \s-1ASN1_OBJECT\s0 structure. .PP \&\fICMS_set1_eContentType()\fR returns 1 for success or 0 if an error occurred. The error can be obtained from \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fICMS_get0_type()\fR, \fICMS_set1_eContentType()\fR and \fICMS_get0_eContentType()\fR were all first added to OpenSSL 0.9.8 07070100048cbe000081a40000000000000000000000015135961800002122000000b600010002ffffffffffffffff0000003900000000root/usr/local/ssl/man/man3/X509_NAME_add_entry_by_txt.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "X509_NAME_add_entry_by_txt 3" .TH X509_NAME_add_entry_by_txt 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" X509_NAME_add_entry_by_txt, X509_NAME_add_entry_by_OBJ, X509_NAME_add_entry_by_NID, X509_NAME_add_entry, X509_NAME_delete_entry \- X509_NAME modification functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int X509_NAME_add_entry_by_txt(X509_NAME *name, const char *field, int type, const unsigned char *bytes, int len, int loc, int set); \& \& int X509_NAME_add_entry_by_OBJ(X509_NAME *name, ASN1_OBJECT *obj, int type, unsigned char *bytes, int len, int loc, int set); \& \& int X509_NAME_add_entry_by_NID(X509_NAME *name, int nid, int type, unsigned char *bytes, int len, int loc, int set); \& \& int X509_NAME_add_entry(X509_NAME *name,X509_NAME_ENTRY *ne, int loc, int set); \& \& X509_NAME_ENTRY *X509_NAME_delete_entry(X509_NAME *name, int loc); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIX509_NAME_add_entry_by_txt()\fR, \fIX509_NAME_add_entry_by_OBJ()\fR and \&\fIX509_NAME_add_entry_by_NID()\fR add a field whose name is defined by a string \fBfield\fR, an object \fBobj\fR or a \s-1NID\s0 \fBnid\fR respectively. The field value to be added is in \fBbytes\fR of length \fBlen\fR. If \&\fBlen\fR is \-1 then the field length is calculated internally using strlen(bytes). .PP The type of field is determined by \fBtype\fR which can either be a definition of the type of \fBbytes\fR (such as \fB\s-1MBSTRING_ASC\s0\fR) or a standard \s-1ASN1\s0 type (such as \fBV_ASN1_IA5STRING\fR). The new entry is added to a position determined by \fBloc\fR and \fBset\fR. .PP \&\fIX509_NAME_add_entry()\fR adds a copy of \fBX509_NAME_ENTRY\fR structure \fBne\fR to \fBname\fR. The new entry is added to a position determined by \fBloc\fR and \fBset\fR. Since a copy of \fBne\fR is added \fBne\fR must be freed up after the call. .PP \&\fIX509_NAME_delete_entry()\fR deletes an entry from \fBname\fR at position \&\fBloc\fR. The deleted entry is returned and must be freed up. .SH "NOTES" .IX Header "NOTES" The use of string types such as \fB\s-1MBSTRING_ASC\s0\fR or \fB\s-1MBSTRING_UTF8\s0\fR is strongly recommened for the \fBtype\fR parameter. This allows the internal code to correctly determine the type of the field and to apply length checks according to the relevant standards. This is done using \fIASN1_STRING_set_by_NID()\fR. .PP If instead an \s-1ASN1\s0 type is used no checks are performed and the supplied data in \fBbytes\fR is used directly. .PP In \fIX509_NAME_add_entry_by_txt()\fR the \fBfield\fR string represents the field name using OBJ_txt2obj(field, 0). .PP The \fBloc\fR and \fBset\fR parameters determine where a new entry should be added. For almost all applications \fBloc\fR can be set to \-1 and \fBset\fR to 0. This adds a new entry to the end of \fBname\fR as a single valued RelativeDistinguishedName (\s-1RDN\s0). .PP \&\fBloc\fR actually determines the index where the new entry is inserted: if it is \-1 it is appended. .PP \&\fBset\fR determines how the new type is added. If it is zero a new \s-1RDN\s0 is created. .PP If \fBset\fR is \-1 or 1 it is added to the previous or next \s-1RDN\s0 structure respectively. This will then be a multivalued \s-1RDN:\s0 since multivalues RDNs are very seldom used \fBset\fR is almost always set to zero. .SH "EXAMPLES" .IX Header "EXAMPLES" Create an \fBX509_NAME\fR structure: .PP \&\*(L"C=UK, O=Disorganized Organization, CN=Joe Bloggs\*(R" .PP .Vb 10 \& X509_NAME *nm; \& nm = X509_NAME_new(); \& if (nm == NULL) \& /* Some error */ \& if (!X509_NAME_add_entry_by_txt(nm, MBSTRING_ASC, \& "C", "UK", \-1, \-1, 0)) \& /* Error */ \& if (!X509_NAME_add_entry_by_txt(nm, MBSTRING_ASC, \& "O", "Disorganized Organization", \-1, \-1, 0)) \& /* Error */ \& if (!X509_NAME_add_entry_by_txt(nm, MBSTRING_ASC, \& "CN", "Joe Bloggs", \-1, \-1, 0)) \& /* Error */ .Ve .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIX509_NAME_add_entry_by_txt()\fR, \fIX509_NAME_add_entry_by_OBJ()\fR, \&\fIX509_NAME_add_entry_by_NID()\fR and \fIX509_NAME_add_entry()\fR return 1 for success of 0 if an error occurred. .PP \&\fIX509_NAME_delete_entry()\fR returns either the deleted \fBX509_NAME_ENTRY\fR structure of \fB\s-1NULL\s0\fR if an error occurred. .SH "BUGS" .IX Header "BUGS" \&\fBtype\fR can still be set to \fBV_ASN1_APP_CHOOSE\fR to use a different algorithm to determine field types. Since this form does not understand multicharacter types, performs no length checks and can result in invalid field types its use is strongly discouraged. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fId2i_X509_NAME\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" 07070100048c84000081a40000000000000000000000015135962000001aac000000b600010002ffffffffffffffff0000003800000000root/usr/local/ssl/man/man3/SSL_CTX_set_max_cert_list.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_set_max_cert_list 3" .TH SSL_CTX_set_max_cert_list 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_set_max_cert_list, SSL_CTX_get_max_cert_list, SSL_set_max_cert_list, SSL_get_max_cert_list, \- manipulate allowed for the peer's certificate chain .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& long SSL_CTX_set_max_cert_list(SSL_CTX *ctx, long size); \& long SSL_CTX_get_max_cert_list(SSL_CTX *ctx); \& \& long SSL_set_max_cert_list(SSL *ssl, long size); \& long SSL_get_max_cert_list(SSL *ctx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_set_max_cert_list()\fR sets the maximum size allowed for the peer's certificate chain for all \s-1SSL\s0 objects created from \fBctx\fR to be bytes. The \s-1SSL\s0 objects inherit the setting valid for \fBctx\fR at the time \&\fISSL_new\fR\|(3) is being called. .PP \&\fISSL_CTX_get_max_cert_list()\fR returns the currently set maximum size for \fBctx\fR. .PP \&\fISSL_set_max_cert_list()\fR sets the maximum size allowed for the peer's certificate chain for \fBssl\fR to be bytes. This setting stays valid until a new value is set. .PP \&\fISSL_get_max_cert_list()\fR returns the currently set maximum size for \fBssl\fR. .SH "NOTES" .IX Header "NOTES" During the handshake process, the peer may send a certificate chain. The \s-1TLS/SSL\s0 standard does not give any maximum size of the certificate chain. The OpenSSL library handles incoming data by a dynamically allocated buffer. In order to prevent this buffer from growing without bounds due to data received from a faulty or malicious peer, a maximum size for the certificate chain is set. .PP The default value for the maximum certificate chain size is 100kB (30kB on the 16bit \s-1DOS\s0 platform). This should be sufficient for usual certificate chains (OpenSSL's default maximum chain length is 10, see \&\fISSL_CTX_set_verify\fR\|(3), and certificates without special extensions have a typical size of 1\-2kB). .PP For special applications it can be necessary to extend the maximum certificate chain size allowed to be sent by the peer, see e.g. the work on \&\*(L"Internet X.509 Public Key Infrastructure Proxy Certificate Profile\*(R" and \*(L"\s-1TLS\s0 Delegation Protocol\*(R" at http://www.ietf.org/ and http://www.globus.org/ . .PP Under normal conditions it should never be necessary to set a value smaller than the default, as the buffer is handled dynamically and only uses the memory actually required by the data sent by the peer. .PP If the maximum certificate chain size allowed is exceeded, the handshake will fail with a \s-1SSL_R_EXCESSIVE_MESSAGE_SIZE\s0 error. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_CTX_set_max_cert_list()\fR and \fISSL_set_max_cert_list()\fR return the previously set value. .PP \&\fISSL_CTX_get_max_cert_list()\fR and \fISSL_get_max_cert_list()\fR return the currently set value. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_new\fR\|(3), \&\fISSL_CTX_set_verify\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" SSL*_set/\fIget_max_cert_list()\fR have been introduced in OpenSSL 0.9.7. 07070100048c27000081a4000000000000000000000001513596120000190a000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/ERR_error_string.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "ERR_error_string 3" .TH ERR_error_string 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" ERR_error_string, ERR_error_string_n, ERR_lib_error_string, ERR_func_error_string, ERR_reason_error_string \- obtain human\-readable error message .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& char *ERR_error_string(unsigned long e, char *buf); \& void ERR_error_string_n(unsigned long e, char *buf, size_t len); \& \& const char *ERR_lib_error_string(unsigned long e); \& const char *ERR_func_error_string(unsigned long e); \& const char *ERR_reason_error_string(unsigned long e); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIERR_error_string()\fR generates a human-readable string representing the error code \fIe\fR, and places it at \fIbuf\fR. \fIbuf\fR must be at least 120 bytes long. If \fIbuf\fR is \fB\s-1NULL\s0\fR, the error string is placed in a static buffer. \&\fIERR_error_string_n()\fR is a variant of \fIERR_error_string()\fR that writes at most \fIlen\fR characters (including the terminating 0) and truncates the string if necessary. For \fIERR_error_string_n()\fR, \fIbuf\fR may not be \fB\s-1NULL\s0\fR. .PP The string will have the following format: .PP .Vb 1 \& error:[error code]:[library name]:[function name]:[reason string] .Ve .PP \&\fIerror code\fR is an 8 digit hexadecimal number, \fIlibrary name\fR, \&\fIfunction name\fR and \fIreason string\fR are \s-1ASCII\s0 text. .PP \&\fIERR_lib_error_string()\fR, \fIERR_func_error_string()\fR and \&\fIERR_reason_error_string()\fR return the library name, function name and reason string respectively. .PP The OpenSSL error strings should be loaded by calling \&\fIERR_load_crypto_strings\fR\|(3) or, for \s-1SSL\s0 applications, \fISSL_load_error_strings\fR\|(3) first. If there is no text string registered for the given error code, the error string will contain the numeric code. .PP \&\fIERR_print_errors\fR\|(3) can be used to print all error codes currently in the queue. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIERR_error_string()\fR returns a pointer to a static buffer containing the string if \fIbuf\fR \fB== \s-1NULL\s0\fR, \fIbuf\fR otherwise. .PP \&\fIERR_lib_error_string()\fR, \fIERR_func_error_string()\fR and \&\fIERR_reason_error_string()\fR return the strings, and \fB\s-1NULL\s0\fR if none is registered for the error code. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIerr\fR\|(3), \fIERR_get_error\fR\|(3), \&\fIERR_load_crypto_strings\fR\|(3), \&\fISSL_load_error_strings\fR\|(3) \&\fIERR_print_errors\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIERR_error_string()\fR is available in all versions of SSLeay and OpenSSL. \&\fIERR_error_string_n()\fR was added in OpenSSL 0.9.6. 07070100048c82000081a40000000000000000000000015135962000002936000000b600010002ffffffffffffffff0000003e00000000root/usr/local/ssl/man/man3/SSL_CTX_set_generate_session_id.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_set_generate_session_id 3" .TH SSL_CTX_set_generate_session_id 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_set_generate_session_id, SSL_set_generate_session_id, SSL_has_matching_session_id \- manipulate generation of SSL session IDs (server only) .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& typedef int (*GEN_SESSION_CB)(const SSL *ssl, unsigned char *id, \& unsigned int *id_len); \& \& int SSL_CTX_set_generate_session_id(SSL_CTX *ctx, GEN_SESSION_CB cb); \& int SSL_set_generate_session_id(SSL *ssl, GEN_SESSION_CB, cb); \& int SSL_has_matching_session_id(const SSL *ssl, const unsigned char *id, \& unsigned int id_len); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_set_generate_session_id()\fR sets the callback function for generating new session ids for \s-1SSL/TLS\s0 sessions for \fBctx\fR to be \fBcb\fR. .PP \&\fISSL_set_generate_session_id()\fR sets the callback function for generating new session ids for \s-1SSL/TLS\s0 sessions for \fBssl\fR to be \fBcb\fR. .PP \&\fISSL_has_matching_session_id()\fR checks, whether a session with id \fBid\fR (of length \fBid_len\fR) is already contained in the internal session cache of the parent context of \fBssl\fR. .SH "NOTES" .IX Header "NOTES" When a new session is established between client and server, the server generates a session id. The session id is an arbitrary sequence of bytes. The length of the session id is 16 bytes for SSLv2 sessions and between 1 and 32 bytes for SSLv3/TLSv1. The session id is not security critical but must be unique for the server. Additionally, the session id is transmitted in the clear when reusing the session so it must not contain sensitive information. .PP Without a callback being set, an OpenSSL server will generate a unique session id from pseudo random numbers of the maximum possible length. Using the callback function, the session id can be changed to contain additional information like e.g. a host id in order to improve load balancing or external caching techniques. .PP The callback function receives a pointer to the memory location to put \&\fBid\fR into and a pointer to the maximum allowed length \fBid_len\fR. The buffer at location \fBid\fR is only guaranteed to have the size \fBid_len\fR. The callback is only allowed to generate a shorter id and reduce \fBid_len\fR; the callback \fBmust never\fR increase \fBid_len\fR or write to the location \&\fBid\fR exceeding the given limit. .PP If a SSLv2 session id is generated and \fBid_len\fR is reduced, it will be restored after the callback has finished and the session id will be padded with 0x00. It is not recommended to change the \fBid_len\fR for SSLv2 sessions. The callback can use the \fISSL_get_version\fR\|(3) function to check, whether the session is of type SSLv2. .PP The location \fBid\fR is filled with 0x00 before the callback is called, so the callback may only fill part of the possible length and leave \fBid_len\fR untouched while maintaining reproducibility. .PP Since the sessions must be distinguished, session ids must be unique. Without the callback a random number is used, so that the probability of generating the same session id is extremely small (2^128 possible ids for an SSLv2 session, 2^256 for SSLv3/TLSv1). In order to assure the uniqueness of the generated session id, the callback must call \&\fISSL_has_matching_session_id()\fR and generate another id if a conflict occurs. If an id conflict is not resolved, the handshake will fail. If the application codes e.g. a unique host id, a unique process number, and a unique sequence number into the session id, uniqueness could easily be achieved without randomness added (it should however be taken care that no confidential information is leaked this way). If the application can not guarantee uniqueness, it is recommended to use the maximum \fBid_len\fR and fill in the bytes not used to code special information with random data to avoid collisions. .PP \&\fISSL_has_matching_session_id()\fR will only query the internal session cache, not the external one. Since the session id is generated before the handshake is completed, it is not immediately added to the cache. If another thread is using the same internal session cache, a race condition can occur in that another thread generates the same session id. Collisions can also occur when using an external session cache, since the external cache is not tested with \fISSL_has_matching_session_id()\fR and the same race condition applies. .PP When calling \fISSL_has_matching_session_id()\fR for an SSLv2 session with reduced \fBid_len\fR, the match operation will be performed using the fixed length required and with a 0x00 padded id. .PP The callback must return 0 if it cannot generate a session id for whatever reason and return 1 on success. .SH "EXAMPLES" .IX Header "EXAMPLES" The callback function listed will generate a session id with the server id given, and will fill the rest with pseudo random bytes: .PP .Vb 1 \& const char session_id_prefix = "www\-18"; \& \& #define MAX_SESSION_ID_ATTEMPTS 10 \& static int generate_session_id(const SSL *ssl, unsigned char *id, \& unsigned int *id_len) \& { \& unsigned int count = 0; \& const char *version; \& \& version = SSL_get_version(ssl); \& if (!strcmp(version, "SSLv2")) \& /* we must not change id_len */; \& \& do { \& RAND_pseudo_bytes(id, *id_len); \& /* Prefix the session_id with the required prefix. NB: If our \& * prefix is too long, clip it \- but there will be worse effects \& * anyway, eg. the server could only possibly create 1 session \& * ID (ie. the prefix!) so all future session negotiations will \& * fail due to conflicts. */ \& memcpy(id, session_id_prefix, \& (strlen(session_id_prefix) < *id_len) ? \& strlen(session_id_prefix) : *id_len); \& } \& while(SSL_has_matching_session_id(ssl, id, *id_len) && \& (++count < MAX_SESSION_ID_ATTEMPTS)); \& if(count >= MAX_SESSION_ID_ATTEMPTS) \& return 0; \& return 1; \& } .Ve .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_CTX_set_generate_session_id()\fR and \fISSL_set_generate_session_id()\fR always return 1. .PP \&\fISSL_has_matching_session_id()\fR returns 1 if another session with the same id is already in the cache. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_get_version\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fISSL_CTX_set_generate_session_id()\fR, \fISSL_set_generate_session_id()\fR and \fISSL_has_matching_session_id()\fR have been introduced in OpenSSL 0.9.7. 07070100048ca7000081a4000000000000000000000001513596230000130d000000b600010002ffffffffffffffff0000003300000000root/usr/local/ssl/man/man3/SSL_get_psk_identity.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_get_psk_identity 3" .TH SSL_get_psk_identity 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_get_psk_identity, SSL_get_psk_identity_hint \- get PSK client identity and hint .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& const char *SSL_get_psk_identity_hint(const SSL *ssl); \& const char *SSL_get_psk_identity(const SSL *ssl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_get_psk_identity_hint()\fR is used to retrieve the \s-1PSK\s0 identity hint used during the connection setup related to \s-1SSL\s0 object \&\fBssl\fR. Similarly, \fISSL_get_psk_identity()\fR is used to retrieve the \s-1PSK\s0 identity used during the connection setup. .SH "RETURN VALUES" .IX Header "RETURN VALUES" If non\-\fB\s-1NULL\s0\fR, \fISSL_get_psk_identity_hint()\fR returns the \s-1PSK\s0 identity hint and \fISSL_get_psk_identity()\fR returns the \s-1PSK\s0 identity. Both are \&\fB\s-1NULL\s0\fR\-terminated. \fISSL_get_psk_identity_hint()\fR may return \fB\s-1NULL\s0\fR if no \s-1PSK\s0 identity hint was used during the connection setup. .PP Note that the return value is valid only during the lifetime of the \&\s-1SSL\s0 object \fBssl\fR. 07070100048cb9000081a40000000000000000000000015135962400002e0e000000b600010002ffffffffffffffff0000002b00000000root/usr/local/ssl/man/man3/SSL_shutdown.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_shutdown 3" .TH SSL_shutdown 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_shutdown \- shut down a TLS/SSL connection .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_shutdown(SSL *ssl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_shutdown()\fR shuts down an active \s-1TLS/SSL\s0 connection. It sends the \&\*(L"close notify\*(R" shutdown alert to the peer. .SH "NOTES" .IX Header "NOTES" \&\fISSL_shutdown()\fR tries to send the \*(L"close notify\*(R" shutdown alert to the peer. Whether the operation succeeds or not, the \s-1SSL_SENT_SHUTDOWN\s0 flag is set and a currently open session is considered closed and good and will be kept in the session cache for further reuse. .PP The shutdown procedure consists of 2 steps: the sending of the \*(L"close notify\*(R" shutdown alert and the reception of the peer's \*(L"close notify\*(R" shutdown alert. According to the \s-1TLS\s0 standard, it is acceptable for an application to only send its shutdown alert and then close the underlying connection without waiting for the peer's response (this way resources can be saved, as the process can already terminate or serve another connection). When the underlying connection shall be used for more communications, the complete shutdown procedure (bidirectional \*(L"close notify\*(R" alerts) must be performed, so that the peers stay synchronized. .PP \&\fISSL_shutdown()\fR supports both uni\- and bidirectional shutdown by its 2 step behaviour. .ie n .IP "When the application is the first party to send the ""close notify"" alert, \fISSL_shutdown()\fR will only send the alert and then set the \s-1SSL_SENT_SHUTDOWN\s0 flag (so that the session is considered good and will be kept in cache). \fISSL_shutdown()\fR will then return with 0. If a unidirectional shutdown is enough (the underlying connection shall be closed anyway), this first call to \fISSL_shutdown()\fR is sufficient. In order to complete the bidirectional shutdown handshake, \fISSL_shutdown()\fR must be called again. The second call will make \fISSL_shutdown()\fR wait for the peer's ""close notify"" shutdown alert. On success, the second call to \fISSL_shutdown()\fR will return with 1." 4 .el .IP "When the application is the first party to send the ``close notify'' alert, \fISSL_shutdown()\fR will only send the alert and then set the \s-1SSL_SENT_SHUTDOWN\s0 flag (so that the session is considered good and will be kept in cache). \fISSL_shutdown()\fR will then return with 0. If a unidirectional shutdown is enough (the underlying connection shall be closed anyway), this first call to \fISSL_shutdown()\fR is sufficient. In order to complete the bidirectional shutdown handshake, \fISSL_shutdown()\fR must be called again. The second call will make \fISSL_shutdown()\fR wait for the peer's ``close notify'' shutdown alert. On success, the second call to \fISSL_shutdown()\fR will return with 1." 4 .IX Item "When the application is the first party to send the close notify alert, SSL_shutdown() will only send the alert and then set the SSL_SENT_SHUTDOWN flag (so that the session is considered good and will be kept in cache). SSL_shutdown() will then return with 0. If a unidirectional shutdown is enough (the underlying connection shall be closed anyway), this first call to SSL_shutdown() is sufficient. In order to complete the bidirectional shutdown handshake, SSL_shutdown() must be called again. The second call will make SSL_shutdown() wait for the peer's close notify shutdown alert. On success, the second call to SSL_shutdown() will return with 1." .PD 0 .ie n .IP "If the peer already sent the ""close notify"" alert \fBand\fR it was already processed implicitly inside another function (\fISSL_read\fR\|(3)), the \s-1SSL_RECEIVED_SHUTDOWN\s0 flag is set. \fISSL_shutdown()\fR will send the ""close notify"" alert, set the \s-1SSL_SENT_SHUTDOWN\s0 flag and will immediately return with 1. Whether \s-1SSL_RECEIVED_SHUTDOWN\s0 is already set can be checked using the \fISSL_get_shutdown()\fR (see also \fISSL_set_shutdown\fR\|(3) call." 4 .el .IP "If the peer already sent the ``close notify'' alert \fBand\fR it was already processed implicitly inside another function (\fISSL_read\fR\|(3)), the \s-1SSL_RECEIVED_SHUTDOWN\s0 flag is set. \fISSL_shutdown()\fR will send the ``close notify'' alert, set the \s-1SSL_SENT_SHUTDOWN\s0 flag and will immediately return with 1. Whether \s-1SSL_RECEIVED_SHUTDOWN\s0 is already set can be checked using the \fISSL_get_shutdown()\fR (see also \fISSL_set_shutdown\fR\|(3) call." 4 .IX Item "If the peer already sent the close notify alert and it was already processed implicitly inside another function (SSL_read), the SSL_RECEIVED_SHUTDOWN flag is set. SSL_shutdown() will send the close notify alert, set the SSL_SENT_SHUTDOWN flag and will immediately return with 1. Whether SSL_RECEIVED_SHUTDOWN is already set can be checked using the SSL_get_shutdown() (see also SSL_set_shutdown call." .PD .PP It is therefore recommended, to check the return value of \fISSL_shutdown()\fR and call \fISSL_shutdown()\fR again, if the bidirectional shutdown is not yet complete (return value of the first call is 0). As the shutdown is not specially handled in the SSLv2 protocol, \fISSL_shutdown()\fR will succeed on the first call. .PP The behaviour of \fISSL_shutdown()\fR additionally depends on the underlying \s-1BIO\s0. .PP If the underlying \s-1BIO\s0 is \fBblocking\fR, \fISSL_shutdown()\fR will only return once the handshake step has been finished or an error occurred. .PP If the underlying \s-1BIO\s0 is \fBnon-blocking\fR, \fISSL_shutdown()\fR will also return when the underlying \s-1BIO\s0 could not satisfy the needs of \fISSL_shutdown()\fR to continue the handshake. In this case a call to \fISSL_get_error()\fR with the return value of \fISSL_shutdown()\fR will yield \fB\s-1SSL_ERROR_WANT_READ\s0\fR or \&\fB\s-1SSL_ERROR_WANT_WRITE\s0\fR. The calling process then must repeat the call after taking appropriate action to satisfy the needs of \fISSL_shutdown()\fR. The action depends on the underlying \s-1BIO\s0. When using a non-blocking socket, nothing is to be done, but \fIselect()\fR can be used to check for the required condition. When using a buffering \s-1BIO\s0, like a \s-1BIO\s0 pair, data must be written into or retrieved out of the \s-1BIO\s0 before being able to continue. .PP \&\fISSL_shutdown()\fR can be modified to only set the connection to \*(L"shutdown\*(R" state but not actually send the \*(L"close notify\*(R" alert messages, see \fISSL_CTX_set_quiet_shutdown\fR\|(3). When \*(L"quiet shutdown\*(R" is enabled, \fISSL_shutdown()\fR will always succeed and return 1. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following return values can occur: .IP "1." 4 The shutdown was successfully completed. The \*(L"close notify\*(R" alert was sent and the peer's \*(L"close notify\*(R" alert was received. .IP "2." 4 The shutdown is not yet finished. Call \fISSL_shutdown()\fR for a second time, if a bidirectional shutdown shall be performed. The output of \fISSL_get_error\fR\|(3) may be misleading, as an erroneous \s-1SSL_ERROR_SYSCALL\s0 may be flagged even though no error occurred. .IP "3." 4 \&\-1 .Sp The shutdown was not successful because a fatal error occurred either at the protocol level or a connection failure occurred. It can also occur if action is need to continue the operation for non-blocking BIOs. Call \fISSL_get_error\fR\|(3) with the return value \fBret\fR to find out the reason. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fISSL_get_error\fR\|(3), \fISSL_connect\fR\|(3), \&\fISSL_accept\fR\|(3), \fISSL_set_shutdown\fR\|(3), \&\fISSL_CTX_set_quiet_shutdown\fR\|(3), \&\fISSL_clear\fR\|(3), \fISSL_free\fR\|(3), \&\fIssl\fR\|(3), \fIbio\fR\|(3) .SH "POD ERRORS" .IX Header "POD ERRORS" Hey! \fBThe above document had some coding errors, which are explained below:\fR .IP "Around line 100:" 4 .IX Item "Around line 100:" You have '=item 0' instead of the expected '=item 2' .IP "Around line 107:" 4 .IX Item "Around line 107:" Expected '=item 3' 07070100048c74000081a40000000000000000000000015135961f0000160a000000b600010002ffffffffffffffff0000003700000000root/usr/local/ssl/man/man3/SSL_CTX_get_ex_new_index.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_get_ex_new_index 3" .TH SSL_CTX_get_ex_new_index 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_get_ex_new_index, SSL_CTX_set_ex_data, SSL_CTX_get_ex_data \- internal application specific data functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_CTX_get_ex_new_index(long argl, void *argp, \& CRYPTO_EX_new *new_func, \& CRYPTO_EX_dup *dup_func, \& CRYPTO_EX_free *free_func); \& \& int SSL_CTX_set_ex_data(SSL_CTX *ctx, int idx, void *arg); \& \& void *SSL_CTX_get_ex_data(const SSL_CTX *ctx, int idx); \& \& typedef int new_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, \& int idx, long argl, void *argp); \& typedef void free_func(void *parent, void *ptr, CRYPTO_EX_DATA *ad, \& int idx, long argl, void *argp); \& typedef int dup_func(CRYPTO_EX_DATA *to, CRYPTO_EX_DATA *from, void *from_d, \& int idx, long argl, void *argp); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Several OpenSSL structures can have application specific data attached to them. These functions are used internally by OpenSSL to manipulate application specific data attached to a specific structure. .PP \&\fISSL_CTX_get_ex_new_index()\fR is used to register a new index for application specific data. .PP \&\fISSL_CTX_set_ex_data()\fR is used to store application data at \fBarg\fR for \fBidx\fR into the \fBctx\fR object. .PP \&\fISSL_CTX_get_ex_data()\fR is used to retrieve the information for \fBidx\fR from \&\fBctx\fR. .PP A detailed description for the \fB*\f(BI_get_ex_new_index()\fB\fR functionality can be found in \fIRSA_get_ex_new_index\fR\|(3). The \fB*\f(BI_get_ex_data()\fB\fR and \fB*\f(BI_set_ex_data()\fB\fR functionality is described in \&\fICRYPTO_set_ex_data\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \&\fIRSA_get_ex_new_index\fR\|(3), \&\fICRYPTO_set_ex_data\fR\|(3) 07070100048c41000081a40000000000000000000000015135961500001abd000000b600010002ffffffffffffffff0000002e00000000root/usr/local/ssl/man/man3/EVP_PKEY_verify.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "EVP_PKEY_verify 3" .TH EVP_PKEY_verify 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" EVP_PKEY_verify_init, EVP_PKEY_verify \- signature verification using a public key algorithm .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int EVP_PKEY_verify_init(EVP_PKEY_CTX *ctx); \& int EVP_PKEY_verify(EVP_PKEY_CTX *ctx, \& const unsigned char *sig, size_t siglen, \& const unsigned char *tbs, size_t tbslen); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The \fIEVP_PKEY_verify_init()\fR function initializes a public key algorithm context using key \fBpkey\fR for a signature verification operation. .PP The \fIEVP_PKEY_verify()\fR function performs a public key verification operation using \fBctx\fR. The signature is specified using the \fBsig\fR and \&\fBsiglen\fR parameters. The verified data (i.e. the data believed originally signed) is specified using the \fBtbs\fR and \fBtbslen\fR parameters. .SH "NOTES" .IX Header "NOTES" After the call to \fIEVP_PKEY_verify_init()\fR algorithm specific control operations can be performed to set any appropriate parameters for the operation. .PP The function \fIEVP_PKEY_verify()\fR can be called more than once on the same context if several operations are performed using the same parameters. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIEVP_PKEY_verify_init()\fR and \fIEVP_PKEY_verify()\fR return 1 if the verification was successful and 0 if it failed. Unlike other functions the return value 0 from \&\fIEVP_PKEY_verify()\fR only indicates that the signature did not not verify successfully (that is tbs did not match the original data or the signature was of invalid form) it is not an indication of a more serious error. .PP A negative value indicates an error other that signature verification failure. In particular a return value of \-2 indicates the operation is not supported by the public key algorithm. .SH "EXAMPLE" .IX Header "EXAMPLE" Verify signature using PKCS#1 and \s-1SHA256\s0 digest: .PP .Vb 2 \& #include \& #include \& \& EVP_PKEY_CTX *ctx; \& unsigned char *md, *sig; \& size_t mdlen, siglen; \& EVP_PKEY *verify_key; \& /* NB: assumes verify_key, sig, siglen md and mdlen are already set up \& * and that verify_key is an RSA public key \& */ \& ctx = EVP_PKEY_CTX_new(verify_key); \& if (!ctx) \& /* Error occurred */ \& if (EVP_PKEY_verify_init(ctx) <= 0) \& /* Error */ \& if (EVP_PKEY_CTX_set_rsa_padding(ctx, RSA_PKCS1_PADDING) <= 0) \& /* Error */ \& if (EVP_PKEY_CTX_set_signature_md(ctx, EVP_sha256()) <= 0) \& /* Error */ \& \& /* Perform operation */ \& ret = EVP_PKEY_verify(ctx, sig, siglen, md, mdlen); \& \& /* ret == 1 indicates success, 0 verify failure and < 0 for some \& * other error. \& */ .Ve .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIEVP_PKEY_CTX_new\fR\|(3), \&\fIEVP_PKEY_encrypt\fR\|(3), \&\fIEVP_PKEY_decrypt\fR\|(3), \&\fIEVP_PKEY_sign\fR\|(3), \&\fIEVP_PKEY_verify_recover\fR\|(3), \&\fIEVP_PKEY_derive\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" These functions were first added to OpenSSL 1.0.0. 07070100048ca9000081a40000000000000000000000015135962300001864000000b600010002ffffffffffffffff0000002e00000000root/usr/local/ssl/man/man3/SSL_get_session.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_get_session 3" .TH SSL_get_session 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_get_session \- retrieve TLS/SSL session data .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& SSL_SESSION *SSL_get_session(const SSL *ssl); \& SSL_SESSION *SSL_get0_session(const SSL *ssl); \& SSL_SESSION *SSL_get1_session(SSL *ssl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_get_session()\fR returns a pointer to the \fB\s-1SSL_SESSION\s0\fR actually used in \&\fBssl\fR. The reference count of the \fB\s-1SSL_SESSION\s0\fR is not incremented, so that the pointer can become invalid by other operations. .PP \&\fISSL_get0_session()\fR is the same as \fISSL_get_session()\fR. .PP \&\fISSL_get1_session()\fR is the same as \fISSL_get_session()\fR, but the reference count of the \fB\s-1SSL_SESSION\s0\fR is incremented by one. .SH "NOTES" .IX Header "NOTES" The ssl session contains all information required to re-establish the connection without a new handshake. .PP \&\fISSL_get0_session()\fR returns a pointer to the actual session. As the reference counter is not incremented, the pointer is only valid while the connection is in use. If \fISSL_clear\fR\|(3) or \&\fISSL_free\fR\|(3) is called, the session may be removed completely (if considered bad), and the pointer obtained will become invalid. Even if the session is valid, it can be removed at any time due to timeout during \fISSL_CTX_flush_sessions\fR\|(3). .PP If the data is to be kept, \fISSL_get1_session()\fR will increment the reference count, so that the session will not be implicitly removed by other operations but stays in memory. In order to remove the session \&\fISSL_SESSION_free\fR\|(3) must be explicitly called once to decrement the reference count again. .PP \&\s-1SSL_SESSION\s0 objects keep internal link information about the session cache list, when being inserted into one \s-1SSL_CTX\s0 object's session cache. One \s-1SSL_SESSION\s0 object, regardless of its reference count, must therefore only be used with one \s-1SSL_CTX\s0 object (and the \s-1SSL\s0 objects created from this \s-1SSL_CTX\s0 object). .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following return values can occur: .IP "\s-1NULL\s0" 4 .IX Item "NULL" There is no session available in \fBssl\fR. .IP "Pointer to an \s-1SSL\s0" 4 .IX Item "Pointer to an SSL" The return value points to the data of an \s-1SSL\s0 session. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_free\fR\|(3), \&\fISSL_clear\fR\|(3), \&\fISSL_SESSION_free\fR\|(3) 07070100048c43000081a40000000000000000000000015135961500001c0f000000b600010002ffffffffffffffff0000002b00000000root/usr/local/ssl/man/man3/EVP_SealInit.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "EVP_SealInit 3" .TH EVP_SealInit 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" EVP_SealInit, EVP_SealUpdate, EVP_SealFinal \- EVP envelope encryption .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int EVP_SealInit(EVP_CIPHER_CTX *ctx, const EVP_CIPHER *type, \& unsigned char **ek, int *ekl, unsigned char *iv, \& EVP_PKEY **pubk, int npubk); \& int EVP_SealUpdate(EVP_CIPHER_CTX *ctx, unsigned char *out, \& int *outl, unsigned char *in, int inl); \& int EVP_SealFinal(EVP_CIPHER_CTX *ctx, unsigned char *out, \& int *outl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The \s-1EVP\s0 envelope routines are a high level interface to envelope encryption. They generate a random key and \s-1IV\s0 (if required) then \&\*(L"envelope\*(R" it by using public key encryption. Data can then be encrypted using this key. .PP \&\fIEVP_SealInit()\fR initializes a cipher context \fBctx\fR for encryption with cipher \fBtype\fR using a random secret key and \s-1IV\s0. \fBtype\fR is normally supplied by a function such as \fIEVP_des_cbc()\fR. The secret key is encrypted using one or more public keys, this allows the same encrypted data to be decrypted using any of the corresponding private keys. \fBek\fR is an array of buffers where the public key encrypted secret key will be written, each buffer must contain enough room for the corresponding encrypted key: that is \&\fBek[i]\fR must have room for \fBEVP_PKEY_size(pubk[i])\fR bytes. The actual size of each encrypted secret key is written to the array \fBekl\fR. \fBpubk\fR is an array of \fBnpubk\fR public keys. .PP The \fBiv\fR parameter is a buffer where the generated \s-1IV\s0 is written to. It must contain enough room for the corresponding cipher's \s-1IV\s0, as determined by (for example) EVP_CIPHER_iv_length(type). .PP If the cipher does not require an \s-1IV\s0 then the \fBiv\fR parameter is ignored and can be \fB\s-1NULL\s0\fR. .PP \&\fIEVP_SealUpdate()\fR and \fIEVP_SealFinal()\fR have exactly the same properties as the \fIEVP_EncryptUpdate()\fR and \fIEVP_EncryptFinal()\fR routines, as documented on the \fIEVP_EncryptInit\fR\|(3) manual page. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIEVP_SealInit()\fR returns 0 on error or \fBnpubk\fR if successful. .PP \&\fIEVP_SealUpdate()\fR and \fIEVP_SealFinal()\fR return 1 for success and 0 for failure. .SH "NOTES" .IX Header "NOTES" Because a random secret key is generated the random number generator must be seeded before calling \fIEVP_SealInit()\fR. .PP The public key must be \s-1RSA\s0 because it is the only OpenSSL public key algorithm that supports key transport. .PP Envelope encryption is the usual method of using public key encryption on large amounts of data, this is because public key encryption is slow but symmetric encryption is fast. So symmetric encryption is used for bulk encryption and the small random symmetric key used is transferred using public key encryption. .PP It is possible to call \fIEVP_SealInit()\fR twice in the same way as \&\fIEVP_EncryptInit()\fR. The first call should have \fBnpubk\fR set to 0 and (after setting any cipher parameters) it should be called again with \fBtype\fR set to \s-1NULL\s0. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIevp\fR\|(3), \fIrand\fR\|(3), \&\fIEVP_EncryptInit\fR\|(3), \&\fIEVP_OpenInit\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIEVP_SealFinal()\fR did not return a value before OpenSSL 0.9.7. 07070100048c14000081a40000000000000000000000015135961000001635000000b600010002ffffffffffffffff0000003100000000root/usr/local/ssl/man/man3/CRYPTO_set_ex_data.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CRYPTO_set_ex_data 3" .TH CRYPTO_set_ex_data 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" CRYPTO_set_ex_data, CRYPTO_get_ex_data \- internal application specific data functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int CRYPTO_set_ex_data(CRYPTO_EX_DATA *r, int idx, void *arg); \& \& void *CRYPTO_get_ex_data(CRYPTO_EX_DATA *r, int idx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Several OpenSSL structures can have application specific data attached to them. These functions are used internally by OpenSSL to manipulate application specific data attached to a specific structure. .PP These functions should only be used by applications to manipulate \&\fB\s-1CRYPTO_EX_DATA\s0\fR structures passed to the \fB\f(BInew_func()\fB\fR, \fB\f(BIfree_func()\fB\fR and \&\fB\f(BIdup_func()\fB\fR callbacks: as passed to \fB\f(BIRSA_get_ex_new_index()\fB\fR for example. .PP \&\fB\f(BICRYPTO_set_ex_data()\fB\fR is used to set application specific data, the data is supplied in the \fBarg\fR parameter and its precise meaning is up to the application. .PP \&\fB\f(BICRYPTO_get_ex_data()\fB\fR is used to retrieve application specific data. The data is returned to the application, this will be the same value as supplied to a previous \fB\f(BICRYPTO_set_ex_data()\fB\fR call. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fB\f(BICRYPTO_set_ex_data()\fB\fR returns 1 on success or 0 on failure. .PP \&\fB\f(BICRYPTO_get_ex_data()\fB\fR returns the application data or 0 on failure. 0 may also be valid application data but currently it can only fail if given an invalid \fBidx\fR parameter. .PP On failure an error code can be obtained from \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIRSA_get_ex_new_index\fR\|(3), \&\fIDSA_get_ex_new_index\fR\|(3), \&\fIDH_get_ex_new_index\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fICRYPTO_set_ex_data()\fR and \fICRYPTO_get_ex_data()\fR have been available since SSLeay 0.9.0. 07070100048bee000081a40000000000000000000000015135960d00001ecd000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/BIO_set_callback.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BIO_set_callback 3" .TH BIO_set_callback 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BIO_set_callback, BIO_get_callback, BIO_set_callback_arg, BIO_get_callback_arg, BIO_debug_callback \- BIO callback functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& #define BIO_set_callback(b,cb) ((b)\->callback=(cb)) \& #define BIO_get_callback(b) ((b)\->callback) \& #define BIO_set_callback_arg(b,arg) ((b)\->cb_arg=(char *)(arg)) \& #define BIO_get_callback_arg(b) ((b)\->cb_arg) \& \& long BIO_debug_callback(BIO *bio,int cmd,const char *argp,int argi, \& long argl,long ret); \& \& typedef long (*callback)(BIO *b, int oper, const char *argp, \& int argi, long argl, long retvalue); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIBIO_set_callback()\fR and \fIBIO_get_callback()\fR set and retrieve the \s-1BIO\s0 callback, they are both macros. The callback is called during most high level \s-1BIO\s0 operations. It can be used for debugging purposes to trace operations on a \s-1BIO\s0 or to modify its operation. .PP \&\fIBIO_set_callback_arg()\fR and \fIBIO_get_callback_arg()\fR are macros which can be used to set and retrieve an argument for use in the callback. .PP \&\fIBIO_debug_callback()\fR is a standard debugging callback which prints out information relating to each \s-1BIO\s0 operation. If the callback argument is set if is interpreted as a \s-1BIO\s0 to send the information to, otherwise stderr is used. .PP \&\fIcallback()\fR is the callback function itself. The meaning of each argument is described below. .PP The \s-1BIO\s0 the callback is attached to is passed in \fBb\fR. .PP \&\fBoper\fR is set to the operation being performed. For some operations the callback is called twice, once before and once after the actual operation, the latter case has \fBoper\fR or'ed with \s-1BIO_CB_RETURN\s0. .PP The meaning of the arguments \fBargp\fR, \fBargi\fR and \fBargl\fR depends on the value of \fBoper\fR, that is the operation being performed. .PP \&\fBretvalue\fR is the return value that would be returned to the application if no callback were present. The actual value returned is the return value of the callback itself. In the case of callbacks called before the actual \s-1BIO\s0 operation 1 is placed in retvalue, if the return value is not positive it will be immediately returned to the application and the \s-1BIO\s0 operation will not be performed. .PP The callback should normally simply return \fBretvalue\fR when it has finished processing, unless if specifically wishes to modify the value returned to the application. .SH "CALLBACK OPERATIONS" .IX Header "CALLBACK OPERATIONS" .IP "\fBBIO_free(b)\fR" 4 .IX Item "BIO_free(b)" callback(b, \s-1BIO_CB_FREE\s0, \s-1NULL\s0, 0L, 0L, 1L) is called before the free operation. .IP "\fBBIO_read(b, out, outl)\fR" 4 .IX Item "BIO_read(b, out, outl)" callback(b, \s-1BIO_CB_READ\s0, out, outl, 0L, 1L) is called before the read and callback(b, BIO_CB_READ|BIO_CB_RETURN, out, outl, 0L, retvalue) after. .IP "\fBBIO_write(b, in, inl)\fR" 4 .IX Item "BIO_write(b, in, inl)" callback(b, \s-1BIO_CB_WRITE\s0, in, inl, 0L, 1L) is called before the write and callback(b, BIO_CB_WRITE|BIO_CB_RETURN, in, inl, 0L, retvalue) after. .IP "\fBBIO_gets(b, out, outl)\fR" 4 .IX Item "BIO_gets(b, out, outl)" callback(b, \s-1BIO_CB_GETS\s0, out, outl, 0L, 1L) is called before the operation and callback(b, BIO_CB_GETS|BIO_CB_RETURN, out, outl, 0L, retvalue) after. .IP "\fBBIO_puts(b, in)\fR" 4 .IX Item "BIO_puts(b, in)" callback(b, \s-1BIO_CB_WRITE\s0, in, 0, 0L, 1L) is called before the operation and callback(b, BIO_CB_WRITE|BIO_CB_RETURN, in, 0, 0L, retvalue) after. .IP "\fBBIO_ctrl(\s-1BIO\s0 *b, int cmd, long larg, void *parg)\fR" 4 .IX Item "BIO_ctrl(BIO *b, int cmd, long larg, void *parg)" callback(b,BIO_CB_CTRL,parg,cmd,larg,1L) is called before the call and callback(b,BIO_CB_CTRL|BIO_CB_RETURN,parg,cmd, larg,ret) after. .SH "EXAMPLE" .IX Header "EXAMPLE" The \fIBIO_debug_callback()\fR function is a good example, its source is in crypto/bio/bio_cb.c .SH "SEE ALSO" .IX Header "SEE ALSO" \&\s-1TBA\s0 07070100048cd6000081a40000000000000000000000015135961b0000117d000000b600010002ffffffffffffffff0000002d00000000root/usr/local/ssl/man/man3/d2i_X509_ALGOR.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "d2i_X509_ALGOR 3" .TH d2i_X509_ALGOR 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" d2i_X509_ALGOR, i2d_X509_ALGOR \- AlgorithmIdentifier functions. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& X509_ALGOR *d2i_X509_ALGOR(X509_ALGOR **a, unsigned char **pp, long length); \& int i2d_X509_ALGOR(X509_ALGOR *a, unsigned char **pp); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions decode and encode an \fBX509_ALGOR\fR structure which is equivalent to the \fBAlgorithmIdentifier\fR structure. .PP Othewise these behave in a similar way to \fId2i_X509()\fR and \fIi2d_X509()\fR described in the \fId2i_X509\fR\|(3) manual page. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fId2i_X509\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1TBA\s0 07070100048c92000081a40000000000000000000000015135962100001b15000000b600010002ffffffffffffffff0000003c00000000root/usr/local/ssl/man/man3/SSL_CTX_use_psk_identity_hint.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_use_psk_identity_hint 3" .TH SSL_CTX_use_psk_identity_hint 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_use_psk_identity_hint, SSL_use_psk_identity_hint, SSL_CTX_set_psk_server_callback, SSL_set_psk_server_callback \- set PSK identity hint to use .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_CTX_use_psk_identity_hint(SSL_CTX *ctx, const char *hint); \& int SSL_use_psk_identity_hint(SSL *ssl, const char *hint); \& \& void SSL_CTX_set_psk_server_callback(SSL_CTX *ctx, \& unsigned int (*callback)(SSL *ssl, const char *identity, \& unsigned char *psk, int max_psk_len)); \& void SSL_set_psk_server_callback(SSL *ssl, \& unsigned int (*callback)(SSL *ssl, const char *identity, \& unsigned char *psk, int max_psk_len)); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_use_psk_identity_hint()\fR sets the given \fB\s-1NULL\s0\fR\-terminated \s-1PSK\s0 identity hint \fBhint\fR to \s-1SSL\s0 context object \&\fBctx\fR. \fISSL_use_psk_identity_hint()\fR sets the given \fB\s-1NULL\s0\fR\-terminated \&\s-1PSK\s0 identity hint \fBhint\fR to \s-1SSL\s0 connection object \fBssl\fR. If \fBhint\fR is \fB\s-1NULL\s0\fR the current hint from \fBctx\fR or \fBssl\fR is deleted. .PP In the case where \s-1PSK\s0 identity hint is \fB\s-1NULL\s0\fR, the server does not send the ServerKeyExchange message to the client. .PP A server application must provide a callback function which is called when the server receives the ClientKeyExchange message from the client. The purpose of the callback function is to validate the received \s-1PSK\s0 identity and to fetch the pre-shared key used during the connection setup phase. The callback is set using functions \&\fISSL_CTX_set_psk_server_callback()\fR or \&\fISSL_set_psk_server_callback()\fR. The callback function is given the connection in parameter \fBssl\fR, \fB\s-1NULL\s0\fR\-terminated \s-1PSK\s0 identity sent by the client in parameter \fBidentity\fR, and a buffer \fBpsk\fR of length \&\fBmax_psk_len\fR bytes where the pre-shared key is to be stored. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_CTX_use_psk_identity_hint()\fR and \fISSL_use_psk_identity_hint()\fR return 1 on success, 0 otherwise. .PP Return values from the server callback are interpreted as follows: .IP "> 0" 4 .IX Item "> 0" \&\s-1PSK\s0 identity was found and the server callback has provided the \s-1PSK\s0 successfully in parameter \fBpsk\fR. Return value is the length of \&\fBpsk\fR in bytes. It is an error to return a value greater than \&\fBmax_psk_len\fR. .Sp If the \s-1PSK\s0 identity was not found but the callback instructs the protocol to continue anyway, the callback must provide some random data to \fBpsk\fR and return the length of the random data, so the connection will fail with decryption_error before it will be finished completely. .IP "0" 4 \&\s-1PSK\s0 identity was not found. An \*(L"unknown_psk_identity\*(R" alert message will be sent and the connection setup fails. .SH "POD ERRORS" .IX Header "POD ERRORS" Hey! \fBThe above document had some coding errors, which are explained below:\fR .IP "Around line 84:" 4 .IX Item "Around line 84:" \&'=item' outside of any '=over' 07070100048c36000081a400000000000000000000000151359614000015ee000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/EVP_PKEY_CTX_new.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "EVP_PKEY_CTX_new 3" .TH EVP_PKEY_CTX_new 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" EVP_PKEY_CTX_new, EVP_PKEY_CTX_new_id, EVP_PKEY_CTX_dup, EVP_PKEY_CTX_free \- public key algorithm context functions. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& EVP_PKEY_CTX *EVP_PKEY_CTX_new(EVP_PKEY *pkey, ENGINE *e); \& EVP_PKEY_CTX *EVP_PKEY_CTX_new_id(int id, ENGINE *e); \& EVP_PKEY_CTX *EVP_PKEY_CTX_dup(EVP_PKEY_CTX *ctx); \& void EVP_PKEY_CTX_free(EVP_PKEY_CTX *ctx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The \fIEVP_PKEY_CTX_new()\fR function allocates public key algorithm context using the algorithm specified in \fBpkey\fR and \s-1ENGINE\s0 \fBe\fR. .PP The \fIEVP_PKEY_CTX_new_id()\fR function allocates public key algorithm context using the algorithm specified by \fBid\fR and \s-1ENGINE\s0 \fBe\fR. It is normally used when no \fB\s-1EVP_PKEY\s0\fR structure is associated with the operations, for example during parameter generation of key genration for some algorithms. .PP \&\fIEVP_PKEY_CTX_dup()\fR duplicates the context \fBctx\fR. .PP \&\fIEVP_PKEY_CTX_free()\fR frees up the context \fBctx\fR. .SH "NOTES" .IX Header "NOTES" The \fB\s-1EVP_PKEY_CTX\s0\fR structure is an opaque public key algorithm context used by the OpenSSL high level public key \s-1API\s0. Contexts \fB\s-1MUST\s0 \s-1NOT\s0\fR be shared between threads: that is it is not permissible to use the same context simultaneously in two threads. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIEVP_PKEY_CTX_new()\fR, \fIEVP_PKEY_CTX_new_id()\fR, \fIEVP_PKEY_CTX_dup()\fR returns either the newly allocated \fB\s-1EVP_PKEY_CTX\s0\fR structure of \fB\s-1NULL\s0\fR if an error occurred. .PP \&\fIEVP_PKEY_CTX_free()\fR does not return a value. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIEVP_PKEY_new\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" These functions were first added to OpenSSL 1.0.0. 07070100048cc9000081a40000000000000000000000015135961900001677000000b600010002ffffffffffffffff0000002200000000root/usr/local/ssl/man/man3/bio.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "bio 3" .TH bio 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" bio \- I/O abstraction .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include .Ve .PP \&\s-1TBA\s0 .SH "DESCRIPTION" .IX Header "DESCRIPTION" A \s-1BIO\s0 is an I/O abstraction, it hides many of the underlying I/O details from an application. If an application uses a \s-1BIO\s0 for its I/O it can transparently handle \s-1SSL\s0 connections, unencrypted network connections and file I/O. .PP There are two type of \s-1BIO\s0, a source/sink \s-1BIO\s0 and a filter \s-1BIO\s0. .PP As its name implies a source/sink \s-1BIO\s0 is a source and/or sink of data, examples include a socket \s-1BIO\s0 and a file \s-1BIO\s0. .PP A filter \s-1BIO\s0 takes data from one \s-1BIO\s0 and passes it through to another, or the application. The data may be left unmodified (for example a message digest \s-1BIO\s0) or translated (for example an encryption \s-1BIO\s0). The effect of a filter \s-1BIO\s0 may change according to the I/O operation it is performing: for example an encryption \&\s-1BIO\s0 will encrypt data if it is being written to and decrypt data if it is being read from. .PP BIOs can be joined together to form a chain (a single \s-1BIO\s0 is a chain with one component). A chain normally consist of one source/sink \&\s-1BIO\s0 and one or more filter BIOs. Data read from or written to the first \s-1BIO\s0 then traverses the chain to the end (normally a source/sink \&\s-1BIO\s0). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIBIO_ctrl\fR\|(3), \&\fIBIO_f_base64\fR\|(3), \fIBIO_f_buffer\fR\|(3), \&\fIBIO_f_cipher\fR\|(3), \fIBIO_f_md\fR\|(3), \&\fIBIO_f_null\fR\|(3), \fIBIO_f_ssl\fR\|(3), \&\fIBIO_find_type\fR\|(3), \fIBIO_new\fR\|(3), \&\fIBIO_new_bio_pair\fR\|(3), \&\fIBIO_push\fR\|(3), \fIBIO_read\fR\|(3), \&\fIBIO_s_accept\fR\|(3), \fIBIO_s_bio\fR\|(3), \&\fIBIO_s_connect\fR\|(3), \fIBIO_s_fd\fR\|(3), \&\fIBIO_s_file\fR\|(3), \fIBIO_s_mem\fR\|(3), \&\fIBIO_s_null\fR\|(3), \fIBIO_s_socket\fR\|(3), \&\fIBIO_set_callback\fR\|(3), \&\fIBIO_should_retry\fR\|(3) 07070100048c0b000081a40000000000000000000000015135961000001ade000000b600010002ffffffffffffffff0000003600000000root/usr/local/ssl/man/man3/CMS_get1_ReceiptRequest.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CMS_get1_ReceiptRequest 3" .TH CMS_get1_ReceiptRequest 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& CMS_ReceiptRequest_create0, CMS_add1_ReceiptRequest, CMS_get1_ReceiptRequest, CMS_ReceiptRequest_get0_values \- CMS signed receipt request functions. .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& CMS_ReceiptRequest *CMS_ReceiptRequest_create0(unsigned char *id, int idlen, int allorfirst, STACK_OF(GENERAL_NAMES) *receiptList, STACK_OF(GENERAL_NAMES) *receiptsTo); \& int CMS_add1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest *rr); \& int CMS_get1_ReceiptRequest(CMS_SignerInfo *si, CMS_ReceiptRequest **prr); \& void CMS_ReceiptRequest_get0_values(CMS_ReceiptRequest *rr, ASN1_STRING **pcid, int *pallorfirst, STACK_OF(GENERAL_NAMES) **plist, STACK_OF(GENERAL_NAMES) **prto); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fICMS_ReceiptRequest_create0()\fR creates a signed receipt request structure. The \&\fBsignedContentIdentifier\fR field is set using \fBid\fR and \fBidlen\fR, or it is set to 32 bytes of pseudo random data if \fBid\fR is \s-1NULL\s0. If \fBreceiptList\fR is \s-1NULL\s0 the allOrFirstTier option in \fBreceiptsFrom\fR is used and set to the value of the \fBallorfirst\fR parameter. If \fBreceiptList\fR is not \s-1NULL\s0 the \fBreceiptList\fR option in \fBreceiptsFrom\fR is used. The \fBreceiptsTo\fR parameter specifies the \&\fBreceiptsTo\fR field value. .PP The \fICMS_add1_ReceiptRequest()\fR function adds a signed receipt request \fBrr\fR to SignerInfo structure \fBsi\fR. .PP int \fICMS_get1_ReceiptRequest()\fR looks for a signed receipt request in \fBsi\fR, if any is found it is decoded and written to \fBprr\fR. .PP \&\fICMS_ReceiptRequest_get0_values()\fR retrieves the values of a receipt request. The signedContentIdentifier is copied to \fBpcid\fR. If the \fBallOrFirstTier\fR option of \fBreceiptsFrom\fR is used its value is copied to \fBpallorfirst\fR otherwise the \fBreceiptList\fR field is copied to \fBplist\fR. The \fBreceiptsTo\fR parameter is copied to \fBprto\fR. .SH "NOTES" .IX Header "NOTES" For more details of the meaning of the fields see \s-1RFC2634\s0. .PP The contents of a signed receipt should only be considered meaningful if the corresponding CMS_ContentInfo structure can be successfully verified using \&\fICMS_verify()\fR. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fICMS_ReceiptRequest_create0()\fR returns a signed receipt request structure or \&\s-1NULL\s0 if an error occurred. .PP \&\fICMS_add1_ReceiptRequest()\fR returns 1 for success or 0 is an error occurred. .PP \&\fICMS_get1_ReceiptRequest()\fR returns 1 is a signed receipt request is found and decoded. It returns 0 if a signed receipt request is not present and \-1 if it is present but malformed. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fICMS_sign\fR\|(3), \&\fICMS_sign_receipt\fR\|(3), \fICMS_verify\fR\|(3) \&\fICMS_verify_receipt\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fICMS_ReceiptRequest_create0()\fR, \fICMS_add1_ReceiptRequest()\fR, \&\fICMS_get1_ReceiptRequest()\fR and \fICMS_ReceiptRequest_get0_values()\fR were added to OpenSSL 0.9.8 07070100048c46000081a400000000000000000000000151359615000024be000000b600010002ffffffffffffffff0000002a00000000root/usr/local/ssl/man/man3/OBJ_nid2obj.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "OBJ_nid2obj 3" .TH OBJ_nid2obj 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" OBJ_nid2obj, OBJ_nid2ln, OBJ_nid2sn, OBJ_obj2nid, OBJ_txt2nid, OBJ_ln2nid, OBJ_sn2nid, OBJ_cmp, OBJ_dup, OBJ_txt2obj, OBJ_obj2txt, OBJ_create, OBJ_cleanup \- ASN1 object utility functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& ASN1_OBJECT * OBJ_nid2obj(int n); \& const char * OBJ_nid2ln(int n); \& const char * OBJ_nid2sn(int n); \& \& int OBJ_obj2nid(const ASN1_OBJECT *o); \& int OBJ_ln2nid(const char *ln); \& int OBJ_sn2nid(const char *sn); \& \& int OBJ_txt2nid(const char *s); \& \& ASN1_OBJECT * OBJ_txt2obj(const char *s, int no_name); \& int OBJ_obj2txt(char *buf, int buf_len, const ASN1_OBJECT *a, int no_name); \& \& int OBJ_cmp(const ASN1_OBJECT *a,const ASN1_OBJECT *b); \& ASN1_OBJECT * OBJ_dup(const ASN1_OBJECT *o); \& \& int OBJ_create(const char *oid,const char *sn,const char *ln); \& void OBJ_cleanup(void); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The \s-1ASN1\s0 object utility functions process \s-1ASN1_OBJECT\s0 structures which are a representation of the \s-1ASN1\s0 \s-1OBJECT\s0 \s-1IDENTIFIER\s0 (\s-1OID\s0) type. .PP \&\fIOBJ_nid2obj()\fR, \fIOBJ_nid2ln()\fR and \fIOBJ_nid2sn()\fR convert the \s-1NID\s0 \fBn\fR to an \s-1ASN1_OBJECT\s0 structure, its long name and its short name respectively, or \fB\s-1NULL\s0\fR is an error occurred. .PP \&\fIOBJ_obj2nid()\fR, \fIOBJ_ln2nid()\fR, \fIOBJ_sn2nid()\fR return the corresponding \s-1NID\s0 for the object \fBo\fR, the long name or the short name respectively or NID_undef if an error occurred. .PP \&\fIOBJ_txt2nid()\fR returns \s-1NID\s0 corresponding to text string . \fBs\fR can be a long name, a short name or the numerical respresentation of an object. .PP \&\fIOBJ_txt2obj()\fR converts the text string \fBs\fR into an \s-1ASN1_OBJECT\s0 structure. If \fBno_name\fR is 0 then long names and short names will be interpreted as well as numerical forms. If \fBno_name\fR is 1 only the numerical form is acceptable. .PP \&\fIOBJ_obj2txt()\fR converts the \fB\s-1ASN1_OBJECT\s0\fR \fBa\fR into a textual representation. The representation is written as a null terminated string to \fBbuf\fR at most \fBbuf_len\fR bytes are written, truncating the result if necessary. The total amount of space required is returned. If \fBno_name\fR is 0 then if the object has a long or short name then that will be used, otherwise the numerical form will be used. If \fBno_name\fR is 1 then the numerical form will always be used. .PP \&\fIOBJ_cmp()\fR compares \fBa\fR to \fBb\fR. If the two are identical 0 is returned. .PP \&\fIOBJ_dup()\fR returns a copy of \fBo\fR. .PP \&\fIOBJ_create()\fR adds a new object to the internal table. \fBoid\fR is the numerical form of the object, \fBsn\fR the short name and \fBln\fR the long name. A new \s-1NID\s0 is returned for the created object. .PP \&\fIOBJ_cleanup()\fR cleans up OpenSSLs internal object table: this should be called before an application exits if any new objects were added using \fIOBJ_create()\fR. .SH "NOTES" .IX Header "NOTES" Objects in OpenSSL can have a short name, a long name and a numerical identifier (\s-1NID\s0) associated with them. A standard set of objects is represented in an internal table. The appropriate values are defined in the header file \fBobjects.h\fR. .PP For example the \s-1OID\s0 for commonName has the following definitions: .PP .Vb 3 \& #define SN_commonName "CN" \& #define LN_commonName "commonName" \& #define NID_commonName 13 .Ve .PP New objects can be added by calling \fIOBJ_create()\fR. .PP Table objects have certain advantages over other objects: for example their NIDs can be used in a C language switch statement. They are also static constant structures which are shared: that is there is only a single constant structure for each table object. .PP Objects which are not in the table have the \s-1NID\s0 value NID_undef. .PP Objects do not need to be in the internal tables to be processed, the functions \fIOBJ_txt2obj()\fR and \fIOBJ_obj2txt()\fR can process the numerical form of an \s-1OID\s0. .SH "EXAMPLES" .IX Header "EXAMPLES" Create an object for \fBcommonName\fR: .PP .Vb 2 \& ASN1_OBJECT *o; \& o = OBJ_nid2obj(NID_commonName); .Ve .PP Check if an object is \fBcommonName\fR .PP .Vb 2 \& if (OBJ_obj2nid(obj) == NID_commonName) \& /* Do something */ .Ve .PP Create a new \s-1NID\s0 and initialize an object from it: .PP .Vb 3 \& int new_nid; \& ASN1_OBJECT *obj; \& new_nid = OBJ_create("1.2.3.4", "NewOID", "New Object Identifier"); \& \& obj = OBJ_nid2obj(new_nid); .Ve .PP Create a new object directly: .PP .Vb 1 \& obj = OBJ_txt2obj("1.2.3.4", 1); .Ve .SH "BUGS" .IX Header "BUGS" \&\fIOBJ_obj2txt()\fR is awkward and messy to use: it doesn't follow the convention of other OpenSSL functions where the buffer can be set to \fB\s-1NULL\s0\fR to determine the amount of data that should be written. Instead \fBbuf\fR must point to a valid buffer and \fBbuf_len\fR should be set to a positive value. A buffer length of 80 should be more than enough to handle any \s-1OID\s0 encountered in practice. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIOBJ_nid2obj()\fR returns an \fB\s-1ASN1_OBJECT\s0\fR structure or \fB\s-1NULL\s0\fR is an error occurred. .PP \&\fIOBJ_nid2ln()\fR and \fIOBJ_nid2sn()\fR returns a valid string or \fB\s-1NULL\s0\fR on error. .PP \&\fIOBJ_obj2nid()\fR, \fIOBJ_ln2nid()\fR, \fIOBJ_sn2nid()\fR and \fIOBJ_txt2nid()\fR return a \s-1NID\s0 or \fBNID_undef\fR on error. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1TBA\s0 07070100048bf4000081a40000000000000000000000015135960e00001671000000b600010002ffffffffffffffff0000002a00000000root/usr/local/ssl/man/man3/BN_add_word.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BN_add_word 3" .TH BN_add_word 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BN_add_word, BN_sub_word, BN_mul_word, BN_div_word, BN_mod_word \- arithmetic functions on BIGNUMs with integers .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int BN_add_word(BIGNUM *a, BN_ULONG w); \& \& int BN_sub_word(BIGNUM *a, BN_ULONG w); \& \& int BN_mul_word(BIGNUM *a, BN_ULONG w); \& \& BN_ULONG BN_div_word(BIGNUM *a, BN_ULONG w); \& \& BN_ULONG BN_mod_word(const BIGNUM *a, BN_ULONG w); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions perform arithmetic operations on BIGNUMs with unsigned integers. They are much more efficient than the normal \s-1BIGNUM\s0 arithmetic operations. .PP \&\fIBN_add_word()\fR adds \fBw\fR to \fBa\fR (\f(CW\*(C`a+=w\*(C'\fR). .PP \&\fIBN_sub_word()\fR subtracts \fBw\fR from \fBa\fR (\f(CW\*(C`a\-=w\*(C'\fR). .PP \&\fIBN_mul_word()\fR multiplies \fBa\fR and \fBw\fR (\f(CW\*(C`a*=w\*(C'\fR). .PP \&\fIBN_div_word()\fR divides \fBa\fR by \fBw\fR (\f(CW\*(C`a/=w\*(C'\fR) and returns the remainder. .PP \&\fIBN_mod_word()\fR returns the remainder of \fBa\fR divided by \fBw\fR (\f(CW\*(C`a%w\*(C'\fR). .PP For \fIBN_div_word()\fR and \fIBN_mod_word()\fR, \fBw\fR must not be 0. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIBN_add_word()\fR, \fIBN_sub_word()\fR and \fIBN_mul_word()\fR return 1 for success, 0 on error. The error codes can be obtained by \fIERR_get_error\fR\|(3). .PP \&\fIBN_mod_word()\fR and \fIBN_div_word()\fR return \fBa\fR%\fBw\fR on success and \&\fB(\s-1BN_ULONG\s0)\-1\fR if an error occurred. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIbn\fR\|(3), \fIERR_get_error\fR\|(3), \fIBN_add\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIBN_add_word()\fR and \fIBN_mod_word()\fR are available in all versions of SSLeay and OpenSSL. \fIBN_div_word()\fR was added in SSLeay 0.8, and \&\fIBN_sub_word()\fR and \fIBN_mul_word()\fR in SSLeay 0.9.0. .PP Before 0.9.8a the return value for \fIBN_div_word()\fR and \fIBN_mod_word()\fR in case of an error was 0. 07070100048c8d000081a400000000000000000000000151359621000016a6000000b600010002ffffffffffffffff0000003200000000root/usr/local/ssl/man/man3/SSL_CTX_set_timeout.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_set_timeout 3" .TH SSL_CTX_set_timeout 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_set_timeout, SSL_CTX_get_timeout \- manipulate timeout values for session caching .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& long SSL_CTX_set_timeout(SSL_CTX *ctx, long t); \& long SSL_CTX_get_timeout(SSL_CTX *ctx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_set_timeout()\fR sets the timeout for newly created sessions for \&\fBctx\fR to \fBt\fR. The timeout value \fBt\fR must be given in seconds. .PP \&\fISSL_CTX_get_timeout()\fR returns the currently set timeout value for \fBctx\fR. .SH "NOTES" .IX Header "NOTES" Whenever a new session is created, it is assigned a maximum lifetime. This lifetime is specified by storing the creation time of the session and the timeout value valid at this time. If the actual time is later than creation time plus timeout, the session is not reused. .PP Due to this realization, all sessions behave according to the timeout value valid at the time of the session negotiation. Changes of the timeout value do not affect already established sessions. .PP The expiration time of a single session can be modified using the \&\fISSL_SESSION_get_time\fR\|(3) family of functions. .PP Expired sessions are removed from the internal session cache, whenever \&\fISSL_CTX_flush_sessions\fR\|(3) is called, either directly by the application or automatically (see \&\fISSL_CTX_set_session_cache_mode\fR\|(3)) .PP The default value for session timeout is decided on a per protocol basis, see \fISSL_get_default_timeout\fR\|(3). All currently supported protocols have the same default timeout value of 300 seconds. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_CTX_set_timeout()\fR returns the previously set timeout value. .PP \&\fISSL_CTX_get_timeout()\fR returns the currently set timeout value. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \&\fISSL_CTX_set_session_cache_mode\fR\|(3), \&\fISSL_SESSION_get_time\fR\|(3), \&\fISSL_CTX_flush_sessions\fR\|(3), \&\fISSL_get_default_timeout\fR\|(3) 07070100048c68000081a40000000000000000000000015135961800001126000000b600010002ffffffffffffffff0000002700000000root/usr/local/ssl/man/man3/RSA_size.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "RSA_size 3" .TH RSA_size 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" RSA_size \- get RSA modulus size .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int RSA_size(const RSA *rsa); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This function returns the \s-1RSA\s0 modulus size in bytes. It can be used to determine how much memory must be allocated for an \s-1RSA\s0 encrypted value. .PP \&\fBrsa\->n\fR must not be \fB\s-1NULL\s0\fR. .SH "RETURN VALUE" .IX Header "RETURN VALUE" The size in bytes. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIrsa\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIRSA_size()\fR is available in all versions of SSLeay and OpenSSL. 07070100048c08000081a40000000000000000000000015135960f0000246e000000b600010002ffffffffffffffff0000003600000000root/usr/local/ssl/man/man3/CMS_get0_RecipientInfos.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CMS_get0_RecipientInfos 3" .TH CMS_get0_RecipientInfos 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& CMS_get0_RecipientInfos, CMS_RecipientInfo_type, CMS_RecipientInfo_ktri_get0_signer_id,CMS_RecipientInfo_ktri_cert_cmp, CMS_RecipientInfo_set0_pkey, CMS_RecipientInfo_kekri_get0_id, CMS_RecipientInfo_kekri_id_cmp, CMS_RecipientInfo_set0_key, CMS_RecipientInfo_decrypt \- CMS envelopedData RecipientInfo routines .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& STACK_OF(CMS_RecipientInfo) *CMS_get0_RecipientInfos(CMS_ContentInfo *cms); \& int CMS_RecipientInfo_type(CMS_RecipientInfo *ri); \& \& int CMS_RecipientInfo_ktri_get0_signer_id(CMS_RecipientInfo *ri, ASN1_OCTET_STRING **keyid, X509_NAME **issuer, ASN1_INTEGER **sno); \& int CMS_RecipientInfo_ktri_cert_cmp(CMS_RecipientInfo *ri, X509 *cert); \& int CMS_RecipientInfo_set0_pkey(CMS_RecipientInfo *ri, EVP_PKEY *pkey); \& \& int CMS_RecipientInfo_kekri_get0_id(CMS_RecipientInfo *ri, X509_ALGOR **palg, ASN1_OCTET_STRING **pid, ASN1_GENERALIZEDTIME **pdate, ASN1_OBJECT **potherid, ASN1_TYPE **pothertype); \& int CMS_RecipientInfo_kekri_id_cmp(CMS_RecipientInfo *ri, const unsigned char *id, size_t idlen); \& int CMS_RecipientInfo_set0_key(CMS_RecipientInfo *ri, unsigned char *key, size_t keylen); \& \& int CMS_RecipientInfo_decrypt(CMS_ContentInfo *cms, CMS_RecipientInfo *ri); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The function \fICMS_get0_RecipientInfos()\fR returns all the CMS_RecipientInfo structures associated with a \s-1CMS\s0 EnvelopedData structure. .PP \&\fICMS_RecipientInfo_type()\fR returns the type of CMS_RecipientInfo structure \fBri\fR. It will currently return \s-1CMS_RECIPINFO_TRANS\s0, \s-1CMS_RECIPINFO_AGREE\s0, \&\s-1CMS_RECIPINFO_KEK\s0, \s-1CMS_RECIPINFO_PASS\s0, or \s-1CMS_RECIPINFO_OTHER\s0. .PP \&\fICMS_RecipientInfo_ktri_get0_signer_id()\fR retrieves the certificate recipient identifier associated with a specific CMS_RecipientInfo structure \fBri\fR, which must be of type \s-1CMS_RECIPINFO_TRANS\s0. Either the keyidentifier will be set in \&\fBkeyid\fR or \fBboth\fR issuer name and serial number in \fBissuer\fR and \fBsno\fR. .PP \&\fICMS_RecipientInfo_ktri_cert_cmp()\fR compares the certificate \fBcert\fR against the CMS_RecipientInfo structure \fBri\fR, which must be of type \s-1CMS_RECIPINFO_TRANS\s0. It returns zero if the comparison is successful and non zero if not. .PP \&\fICMS_RecipientInfo_set0_pkey()\fR associates the private key \fBpkey\fR with the CMS_RecipientInfo structure \fBri\fR, which must be of type \&\s-1CMS_RECIPINFO_TRANS\s0. .PP \&\fICMS_RecipientInfo_kekri_get0_id()\fR retrieves the key information from the CMS_RecipientInfo structure \fBri\fR which must be of type \s-1CMS_RECIPINFO_KEK\s0. Any of the remaining parameters can be \s-1NULL\s0 if the application is not interested in the value of a field. Where a field is optional and absent \s-1NULL\s0 will be written to the corresponding parameter. The keyEncryptionAlgorithm field is written to \&\fBpalg\fR, the \fBkeyIdentifier\fR field is written to \fBpid\fR, the \fBdate\fR field if present is written to \fBpdate\fR, if the \fBother\fR field is present the components \&\fBkeyAttrId\fR and \fBkeyAttr\fR are written to parameters \fBpotherid\fR and \&\fBpothertype\fR. .PP \&\fICMS_RecipientInfo_kekri_id_cmp()\fR compares the \s-1ID\s0 in the \fBid\fR and \fBidlen\fR parameters against the \fBkeyIdentifier\fR CMS_RecipientInfo structure \fBri\fR, which must be of type \s-1CMS_RECIPINFO_KEK\s0. It returns zero if the comparison is successful and non zero if not. .PP \&\fICMS_RecipientInfo_set0_key()\fR associates the symmetric key \fBkey\fR of length \&\fBkeylen\fR with the CMS_RecipientInfo structure \fBri\fR, which must be of type \&\s-1CMS_RECIPINFO_KEK\s0. .PP \&\fICMS_RecipientInfo_decrypt()\fR attempts to decrypt CMS_RecipientInfo structure \&\fBri\fR in structure \fBcms\fR. A key must have been associated with the structure first. .SH "NOTES" .IX Header "NOTES" The main purpose of these functions is to enable an application to lookup recipient keys using any appropriate technique when the simpler method of \fICMS_decrypt()\fR is not appropriate. .PP In typical usage and application will retrieve all CMS_RecipientInfo structures using \fICMS_get0_RecipientInfos()\fR and check the type of each using \&\fICMS_RecpientInfo_type()\fR. Depending on the type the CMS_RecipientInfo structure can be ignored or its key identifier data retrieved using an appropriate function. Then if the corresponding secret or private key can be obtained by any appropriate means it can then associated with the structure and \&\fICMS_RecpientInfo_decrypt()\fR called. If successful \fICMS_decrypt()\fR can be called with a \s-1NULL\s0 key to decrypt the enveloped content. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fICMS_get0_RecipientInfos()\fR returns all CMS_RecipientInfo structures, or \s-1NULL\s0 if an error occurs. .PP \&\fICMS_RecipientInfo_ktri_get0_signer_id()\fR, \fICMS_RecipientInfo_set0_pkey()\fR, \&\fICMS_RecipientInfo_kekri_get0_id()\fR, \fICMS_RecipientInfo_set0_key()\fR and \&\fICMS_RecipientInfo_decrypt()\fR return 1 for success or 0 if an error occurs. .PP \&\fICMS_RecipientInfo_ktri_cert_cmp()\fR and \fICMS_RecipientInfo_kekri_cmp()\fR return 0 for a successful comparison and non zero otherwise. .PP Any error can be obtained from \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fICMS_decrypt\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" These functions were first was added to OpenSSL 0.9.8 07070100048c1c000081a40000000000000000000000015135961100001434000000b600010002ffffffffffffffff0000002a00000000root/usr/local/ssl/man/man3/DSA_do_sign.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DSA_do_sign 3" .TH DSA_do_sign 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DSA_do_sign, DSA_do_verify \- raw DSA signature operations .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& DSA_SIG *DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa); \& \& int DSA_do_verify(const unsigned char *dgst, int dgst_len, \& DSA_SIG *sig, DSA *dsa); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIDSA_do_sign()\fR computes a digital signature on the \fBlen\fR byte message digest \fBdgst\fR using the private key \fBdsa\fR and returns it in a newly allocated \fB\s-1DSA_SIG\s0\fR structure. .PP \&\fIDSA_sign_setup\fR\|(3) may be used to precompute part of the signing operation in case signature generation is time-critical. .PP \&\fIDSA_do_verify()\fR verifies that the signature \fBsig\fR matches a given message digest \fBdgst\fR of size \fBlen\fR. \fBdsa\fR is the signer's public key. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIDSA_do_sign()\fR returns the signature, \s-1NULL\s0 on error. \fIDSA_do_verify()\fR returns 1 for a valid signature, 0 for an incorrect signature and \-1 on error. The error codes can be obtained by \&\fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdsa\fR\|(3), \fIERR_get_error\fR\|(3), \fIrand\fR\|(3), \&\fIDSA_SIG_new\fR\|(3), \&\fIDSA_sign\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDSA_do_sign()\fR and \fIDSA_do_verify()\fR were added in OpenSSL 0.9.3. 07070100048c93000081a400000000000000000000000151359621000017a1000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/SSL_SESSION_free.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_SESSION_free 3" .TH SSL_SESSION_free 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_SESSION_free \- free an allocated SSL_SESSION structure .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& void SSL_SESSION_free(SSL_SESSION *session); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_SESSION_free()\fR decrements the reference count of \fBsession\fR and removes the \fB\s-1SSL_SESSION\s0\fR structure pointed to by \fBsession\fR and frees up the allocated memory, if the reference count has reached 0. .SH "NOTES" .IX Header "NOTES" \&\s-1SSL_SESSION\s0 objects are allocated, when a \s-1TLS/SSL\s0 handshake operation is successfully completed. Depending on the settings, see \&\fISSL_CTX_set_session_cache_mode\fR\|(3), the \s-1SSL_SESSION\s0 objects are internally referenced by the \s-1SSL_CTX\s0 and linked into its session cache. \s-1SSL\s0 objects may be using the \s-1SSL_SESSION\s0 object; as a session may be reused, several \s-1SSL\s0 objects may be using one \s-1SSL_SESSION\s0 object at the same time. It is therefore crucial to keep the reference count (usage information) correct and not delete a \s-1SSL_SESSION\s0 object that is still used, as this may lead to program failures due to dangling pointers. These failures may also appear delayed, e.g. when an \s-1SSL_SESSION\s0 object was completely freed as the reference count incorrectly became 0, but it is still referenced in the internal session cache and the cache list is processed during a \&\fISSL_CTX_flush_sessions\fR\|(3) operation. .PP \&\fISSL_SESSION_free()\fR must only be called for \s-1SSL_SESSION\s0 objects, for which the reference count was explicitly incremented (e.g. by calling \fISSL_get1_session()\fR, see \fISSL_get_session\fR\|(3)) or when the \s-1SSL_SESSION\s0 object was generated outside a \s-1TLS\s0 handshake operation, e.g. by using \fId2i_SSL_SESSION\fR\|(3). It must not be called on other \s-1SSL_SESSION\s0 objects, as this would cause incorrect reference counts and therefore program failures. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_SESSION_free()\fR does not provide diagnostic information. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_get_session\fR\|(3), \&\fISSL_CTX_set_session_cache_mode\fR\|(3), \&\fISSL_CTX_flush_sessions\fR\|(3), \fId2i_SSL_SESSION\fR\|(3) 07070100048cee000081a40000000000000000000000015135961d000017e1000000b600010002ffffffffffffffff0000002200000000root/usr/local/ssl/man/man3/sha.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "sha 3" .TH sha 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SHA1, SHA1_Init, SHA1_Update, SHA1_Final \- Secure Hash Algorithm .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& unsigned char *SHA1(const unsigned char *d, unsigned long n, \& unsigned char *md); \& \& int SHA1_Init(SHA_CTX *c); \& int SHA1_Update(SHA_CTX *c, const void *data, \& unsigned long len); \& int SHA1_Final(unsigned char *md, SHA_CTX *c); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\s-1SHA\-1\s0 (Secure Hash Algorithm) is a cryptographic hash function with a 160 bit output. .PP \&\s-1\fISHA1\s0()\fR computes the \s-1SHA\-1\s0 message digest of the \fBn\fR bytes at \fBd\fR and places it in \fBmd\fR (which must have space for \&\s-1SHA_DIGEST_LENGTH\s0 == 20 bytes of output). If \fBmd\fR is \s-1NULL\s0, the digest is placed in a static array. .PP The following functions may be used if the message is not completely stored in memory: .PP \&\fISHA1_Init()\fR initializes a \fB\s-1SHA_CTX\s0\fR structure. .PP \&\fISHA1_Update()\fR can be called repeatedly with chunks of the message to be hashed (\fBlen\fR bytes at \fBdata\fR). .PP \&\fISHA1_Final()\fR places the message digest in \fBmd\fR, which must have space for \s-1SHA_DIGEST_LENGTH\s0 == 20 bytes of output, and erases the \fB\s-1SHA_CTX\s0\fR. .PP Applications should use the higher level functions \&\fIEVP_DigestInit\fR\|(3) etc. instead of calling the hash functions directly. .PP The predecessor of \s-1SHA\-1\s0, \s-1SHA\s0, is also implemented, but it should be used only when backward compatibility is required. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\s-1\fISHA1\s0()\fR returns a pointer to the hash value. .PP \&\fISHA1_Init()\fR, \fISHA1_Update()\fR and \fISHA1_Final()\fR return 1 for success, 0 otherwise. .SH "CONFORMING TO" .IX Header "CONFORMING TO" \&\s-1SHA:\s0 \s-1US\s0 Federal Information Processing Standard \s-1FIPS\s0 \s-1PUB\s0 180 (Secure Hash Standard), \&\s-1SHA\-1:\s0 \s-1US\s0 Federal Information Processing Standard \s-1FIPS\s0 \s-1PUB\s0 180\-1 (Secure Hash Standard), \&\s-1ANSI\s0 X9.30 .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIripemd\fR\|(3), \fIhmac\fR\|(3), \fIEVP_DigestInit\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1\fISHA1\s0()\fR, \fISHA1_Init()\fR, \fISHA1_Update()\fR and \fISHA1_Final()\fR are available in all versions of SSLeay and OpenSSL. 07070100048c07000081a40000000000000000000000015135960f0000138e000000b600010002ffffffffffffffff0000002800000000root/usr/local/ssl/man/man3/CMS_final.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CMS_final 3" .TH CMS_final 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& CMS_final \- finalise a CMS_ContentInfo structure .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int CMS_final(CMS_ContentInfo *cms, BIO *data, BIO *dcont, unsigned int flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fICMS_final()\fR finalises the structure \fBcms\fR. It's purpose is to perform any operations necessary on \fBcms\fR (digest computation for example) and set the appropriate fields. The parameter \fBdata\fR contains the content to be processed. The \fBdcont\fR parameter contains a \s-1BIO\s0 to write content to after processing: this is only used with detached data and will usually be set to \&\s-1NULL\s0. .SH "NOTES" .IX Header "NOTES" This function will normally be called when the \fB\s-1CMS_PARTIAL\s0\fR flag is used. It should only be used when streaming is not performed because the streaming I/O functions perform finalisation operations internally. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fICMS_final()\fR returns 1 for success or 0 for failure. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fICMS_sign\fR\|(3), \&\fICMS_encrypt\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fICMS_final()\fR was added to OpenSSL 0.9.8 07070100048c83000081a400000000000000000000000151359620000025d6000000b600010002ffffffffffffffff0000003800000000root/usr/local/ssl/man/man3/SSL_CTX_set_info_callback.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_set_info_callback 3" .TH SSL_CTX_set_info_callback 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_set_info_callback, SSL_CTX_get_info_callback, SSL_set_info_callback, SSL_get_info_callback \- handle information callback for SSL connections .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& void SSL_CTX_set_info_callback(SSL_CTX *ctx, void (*callback)()); \& void (*SSL_CTX_get_info_callback(const SSL_CTX *ctx))(); \& \& void SSL_set_info_callback(SSL *ssl, void (*callback)()); \& void (*SSL_get_info_callback(const SSL *ssl))(); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_set_info_callback()\fR sets the \fBcallback\fR function, that can be used to obtain state information for \s-1SSL\s0 objects created from \fBctx\fR during connection setup and use. The setting for \fBctx\fR is overridden from the setting for a specific \s-1SSL\s0 object, if specified. When \fBcallback\fR is \s-1NULL\s0, not callback function is used. .PP \&\fISSL_set_info_callback()\fR sets the \fBcallback\fR function, that can be used to obtain state information for \fBssl\fR during connection setup and use. When \fBcallback\fR is \s-1NULL\s0, the callback setting currently valid for \&\fBctx\fR is used. .PP \&\fISSL_CTX_get_info_callback()\fR returns a pointer to the currently set information callback function for \fBctx\fR. .PP \&\fISSL_get_info_callback()\fR returns a pointer to the currently set information callback function for \fBssl\fR. .SH "NOTES" .IX Header "NOTES" When setting up a connection and during use, it is possible to obtain state information from the \s-1SSL/TLS\s0 engine. When set, an information callback function is called whenever the state changes, an alert appears, or an error occurs. .PP The callback function is called as \fBcallback(\s-1SSL\s0 *ssl, int where, int ret)\fR. The \fBwhere\fR argument specifies information about where (in which context) the callback function was called. If \fBret\fR is 0, an error condition occurred. If an alert is handled, \s-1SSL_CB_ALERT\s0 is set and \fBret\fR specifies the alert information. .PP \&\fBwhere\fR is a bitmask made up of the following bits: .IP "\s-1SSL_CB_LOOP\s0" 4 .IX Item "SSL_CB_LOOP" Callback has been called to indicate state change inside a loop. .IP "\s-1SSL_CB_EXIT\s0" 4 .IX Item "SSL_CB_EXIT" Callback has been called to indicate error exit of a handshake function. (May be soft error with retry option for non-blocking setups.) .IP "\s-1SSL_CB_READ\s0" 4 .IX Item "SSL_CB_READ" Callback has been called during read operation. .IP "\s-1SSL_CB_WRITE\s0" 4 .IX Item "SSL_CB_WRITE" Callback has been called during write operation. .IP "\s-1SSL_CB_ALERT\s0" 4 .IX Item "SSL_CB_ALERT" Callback has been called due to an alert being sent or received. .IP "\s-1SSL_CB_READ_ALERT\s0 (SSL_CB_ALERT|SSL_CB_READ)" 4 .IX Item "SSL_CB_READ_ALERT (SSL_CB_ALERT|SSL_CB_READ)" .PD 0 .IP "\s-1SSL_CB_WRITE_ALERT\s0 (SSL_CB_ALERT|SSL_CB_WRITE)" 4 .IX Item "SSL_CB_WRITE_ALERT (SSL_CB_ALERT|SSL_CB_WRITE)" .IP "\s-1SSL_CB_ACCEPT_LOOP\s0 (SSL_ST_ACCEPT|SSL_CB_LOOP)" 4 .IX Item "SSL_CB_ACCEPT_LOOP (SSL_ST_ACCEPT|SSL_CB_LOOP)" .IP "\s-1SSL_CB_ACCEPT_EXIT\s0 (SSL_ST_ACCEPT|SSL_CB_EXIT)" 4 .IX Item "SSL_CB_ACCEPT_EXIT (SSL_ST_ACCEPT|SSL_CB_EXIT)" .IP "\s-1SSL_CB_CONNECT_LOOP\s0 (SSL_ST_CONNECT|SSL_CB_LOOP)" 4 .IX Item "SSL_CB_CONNECT_LOOP (SSL_ST_CONNECT|SSL_CB_LOOP)" .IP "\s-1SSL_CB_CONNECT_EXIT\s0 (SSL_ST_CONNECT|SSL_CB_EXIT)" 4 .IX Item "SSL_CB_CONNECT_EXIT (SSL_ST_CONNECT|SSL_CB_EXIT)" .IP "\s-1SSL_CB_HANDSHAKE_START\s0" 4 .IX Item "SSL_CB_HANDSHAKE_START" .PD Callback has been called because a new handshake is started. .IP "\s-1SSL_CB_HANDSHAKE_DONE\s0 0x20" 4 .IX Item "SSL_CB_HANDSHAKE_DONE 0x20" Callback has been called because a handshake is finished. .PP The current state information can be obtained using the \&\fISSL_state_string\fR\|(3) family of functions. .PP The \fBret\fR information can be evaluated using the \&\fISSL_alert_type_string\fR\|(3) family of functions. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_set_info_callback()\fR does not provide diagnostic information. .PP \&\fISSL_get_info_callback()\fR returns the current setting. .SH "EXAMPLES" .IX Header "EXAMPLES" The following example callback function prints state strings, information about alerts being handled and error messages to the \fBbio_err\fR \s-1BIO\s0. .PP .Vb 4 \& void apps_ssl_info_callback(SSL *s, int where, int ret) \& { \& const char *str; \& int w; \& \& w=where& ~SSL_ST_MASK; \& \& if (w & SSL_ST_CONNECT) str="SSL_connect"; \& else if (w & SSL_ST_ACCEPT) str="SSL_accept"; \& else str="undefined"; \& \& if (where & SSL_CB_LOOP) \& { \& BIO_printf(bio_err,"%s:%s\en",str,SSL_state_string_long(s)); \& } \& else if (where & SSL_CB_ALERT) \& { \& str=(where & SSL_CB_READ)?"read":"write"; \& BIO_printf(bio_err,"SSL3 alert %s:%s:%s\en", \& str, \& SSL_alert_type_string_long(ret), \& SSL_alert_desc_string_long(ret)); \& } \& else if (where & SSL_CB_EXIT) \& { \& if (ret == 0) \& BIO_printf(bio_err,"%s:failed in %s\en", \& str,SSL_state_string_long(s)); \& else if (ret < 0) \& { \& BIO_printf(bio_err,"%s:error in %s\en", \& str,SSL_state_string_long(s)); \& } \& } \& } .Ve .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_state_string\fR\|(3), \&\fISSL_alert_type_string\fR\|(3) 07070100048ca1000081a400000000000000000000000151359622000022de000000b600010002ffffffffffffffff0000002c00000000root/usr/local/ssl/man/man3/SSL_get_error.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_get_error 3" .TH SSL_get_error 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_get_error \- obtain result code for TLS/SSL I/O operation .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_get_error(const SSL *ssl, int ret); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_get_error()\fR returns a result code (suitable for the C \*(L"switch\*(R" statement) for a preceding call to \fISSL_connect()\fR, \fISSL_accept()\fR, \fISSL_do_handshake()\fR, \&\fISSL_read()\fR, \fISSL_peek()\fR, or \fISSL_write()\fR on \fBssl\fR. The value returned by that \s-1TLS/SSL\s0 I/O function must be passed to \fISSL_get_error()\fR in parameter \&\fBret\fR. .PP In addition to \fBssl\fR and \fBret\fR, \fISSL_get_error()\fR inspects the current thread's OpenSSL error queue. Thus, \fISSL_get_error()\fR must be used in the same thread that performed the \s-1TLS/SSL\s0 I/O operation, and no other OpenSSL function calls should appear in between. The current thread's error queue must be empty before the \s-1TLS/SSL\s0 I/O operation is attempted, or \fISSL_get_error()\fR will not work reliably. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following return values can currently occur: .IP "\s-1SSL_ERROR_NONE\s0" 4 .IX Item "SSL_ERROR_NONE" The \s-1TLS/SSL\s0 I/O operation completed. This result code is returned if and only if \fBret > 0\fR. .IP "\s-1SSL_ERROR_ZERO_RETURN\s0" 4 .IX Item "SSL_ERROR_ZERO_RETURN" The \s-1TLS/SSL\s0 connection has been closed. If the protocol version is \s-1SSL\s0 3.0 or \s-1TLS\s0 1.0, this result code is returned only if a closure alert has occurred in the protocol, i.e. if the connection has been closed cleanly. Note that in this case \fB\s-1SSL_ERROR_ZERO_RETURN\s0\fR does not necessarily indicate that the underlying transport has been closed. .IP "\s-1SSL_ERROR_WANT_READ\s0, \s-1SSL_ERROR_WANT_WRITE\s0" 4 .IX Item "SSL_ERROR_WANT_READ, SSL_ERROR_WANT_WRITE" The operation did not complete; the same \s-1TLS/SSL\s0 I/O function should be called again later. If, by then, the underlying \fB\s-1BIO\s0\fR has data available for reading (if the result code is \fB\s-1SSL_ERROR_WANT_READ\s0\fR) or allows writing data (\fB\s-1SSL_ERROR_WANT_WRITE\s0\fR), then some \s-1TLS/SSL\s0 protocol progress will take place, i.e. at least part of an \s-1TLS/SSL\s0 record will be read or written. Note that the retry may again lead to a \fB\s-1SSL_ERROR_WANT_READ\s0\fR or \fB\s-1SSL_ERROR_WANT_WRITE\s0\fR condition. There is no fixed upper limit for the number of iterations that may be necessary until progress becomes visible at application protocol level. .Sp For socket \fB\s-1BIO\s0\fRs (e.g. when \fISSL_set_fd()\fR was used), \fIselect()\fR or \&\fIpoll()\fR on the underlying socket can be used to find out when the \&\s-1TLS/SSL\s0 I/O function should be retried. .Sp Caveat: Any \s-1TLS/SSL\s0 I/O function can lead to either of \&\fB\s-1SSL_ERROR_WANT_READ\s0\fR and \fB\s-1SSL_ERROR_WANT_WRITE\s0\fR. In particular, \&\fISSL_read()\fR or \fISSL_peek()\fR may want to write data and \fISSL_write()\fR may want to read data. This is mainly because \s-1TLS/SSL\s0 handshakes may occur at any time during the protocol (initiated by either the client or the server); \&\fISSL_read()\fR, \fISSL_peek()\fR, and \fISSL_write()\fR will handle any pending handshakes. .IP "\s-1SSL_ERROR_WANT_CONNECT\s0, \s-1SSL_ERROR_WANT_ACCEPT\s0" 4 .IX Item "SSL_ERROR_WANT_CONNECT, SSL_ERROR_WANT_ACCEPT" The operation did not complete; the same \s-1TLS/SSL\s0 I/O function should be called again later. The underlying \s-1BIO\s0 was not connected yet to the peer and the call would block in \fIconnect()\fR/\fIaccept()\fR. The \s-1SSL\s0 function should be called again when the connection is established. These messages can only appear with a \fIBIO_s_connect()\fR or \fIBIO_s_accept()\fR \s-1BIO\s0, respectively. In order to find out, when the connection has been successfully established, on many platforms \fIselect()\fR or \fIpoll()\fR for writing on the socket file descriptor can be used. .IP "\s-1SSL_ERROR_WANT_X509_LOOKUP\s0" 4 .IX Item "SSL_ERROR_WANT_X509_LOOKUP" The operation did not complete because an application callback set by \&\fISSL_CTX_set_client_cert_cb()\fR has asked to be called again. The \s-1TLS/SSL\s0 I/O function should be called again later. Details depend on the application. .IP "\s-1SSL_ERROR_SYSCALL\s0" 4 .IX Item "SSL_ERROR_SYSCALL" Some I/O error occurred. The OpenSSL error queue may contain more information on the error. If the error queue is empty (i.e. \fIERR_get_error()\fR returns 0), \fBret\fR can be used to find out more about the error: If \fBret == 0\fR, an \s-1EOF\s0 was observed that violates the protocol. If \fBret == \-1\fR, the underlying \fB\s-1BIO\s0\fR reported an I/O error (for socket I/O on Unix systems, consult \fBerrno\fR for details). .IP "\s-1SSL_ERROR_SSL\s0" 4 .IX Item "SSL_ERROR_SSL" A failure in the \s-1SSL\s0 library occurred, usually a protocol error. The OpenSSL error queue contains more information on the error. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fIerr\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fISSL_get_error()\fR was added in SSLeay 0.8. 07070100048c19000081a400000000000000000000000151359611000024b0000000b600010002ffffffffffffffff0000002c00000000root/usr/local/ssl/man/man3/DH_set_method.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DH_set_method 3" .TH DH_set_method 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DH_set_default_method, DH_get_default_method, DH_set_method, DH_new_method, DH_OpenSSL \- select DH method .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& #include \& #include \& \& void DH_set_default_method(const DH_METHOD *meth); \& \& const DH_METHOD *DH_get_default_method(void); \& \& int DH_set_method(DH *dh, const DH_METHOD *meth); \& \& DH *DH_new_method(ENGINE *engine); \& \& const DH_METHOD *DH_OpenSSL(void); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" A \fB\s-1DH_METHOD\s0\fR specifies the functions that OpenSSL uses for Diffie-Hellman operations. By modifying the method, alternative implementations such as hardware accelerators may be used. \s-1IMPORTANT:\s0 See the \s-1NOTES\s0 section for important information about how these \s-1DH\s0 \s-1API\s0 functions are affected by the use of \fB\s-1ENGINE\s0\fR \s-1API\s0 calls. .PP Initially, the default \s-1DH_METHOD\s0 is the OpenSSL internal implementation, as returned by \fIDH_OpenSSL()\fR. .PP \&\fIDH_set_default_method()\fR makes \fBmeth\fR the default method for all \s-1DH\s0 structures created later. \fB\s-1NB\s0\fR: This is true only whilst no \s-1ENGINE\s0 has been set as a default for \s-1DH\s0, so this function is no longer recommended. .PP \&\fIDH_get_default_method()\fR returns a pointer to the current default \s-1DH_METHOD\s0. However, the meaningfulness of this result is dependent on whether the \s-1ENGINE\s0 \&\s-1API\s0 is being used, so this function is no longer recommended. .PP \&\fIDH_set_method()\fR selects \fBmeth\fR to perform all operations using the key \fBdh\fR. This will replace the \s-1DH_METHOD\s0 used by the \s-1DH\s0 key and if the previous method was supplied by an \s-1ENGINE\s0, the handle to that \s-1ENGINE\s0 will be released during the change. It is possible to have \s-1DH\s0 keys that only work with certain \s-1DH_METHOD\s0 implementations (eg. from an \s-1ENGINE\s0 module that supports embedded hardware-protected keys), and in such cases attempting to change the \s-1DH_METHOD\s0 for the key can have unexpected results. .PP \&\fIDH_new_method()\fR allocates and initializes a \s-1DH\s0 structure so that \fBengine\fR will be used for the \s-1DH\s0 operations. If \fBengine\fR is \s-1NULL\s0, the default \s-1ENGINE\s0 for \s-1DH\s0 operations is used, and if no default \s-1ENGINE\s0 is set, the \s-1DH_METHOD\s0 controlled by \&\fIDH_set_default_method()\fR is used. .SH "THE DH_METHOD STRUCTURE" .IX Header "THE DH_METHOD STRUCTURE" .Vb 4 \& typedef struct dh_meth_st \& { \& /* name of the implementation */ \& const char *name; \& \& /* generate private and public DH values for key agreement */ \& int (*generate_key)(DH *dh); \& \& /* compute shared secret */ \& int (*compute_key)(unsigned char *key, BIGNUM *pub_key, DH *dh); \& \& /* compute r = a ^ p mod m (May be NULL for some implementations) */ \& int (*bn_mod_exp)(DH *dh, BIGNUM *r, BIGNUM *a, const BIGNUM *p, \& const BIGNUM *m, BN_CTX *ctx, \& BN_MONT_CTX *m_ctx); \& \& /* called at DH_new */ \& int (*init)(DH *dh); \& \& /* called at DH_free */ \& int (*finish)(DH *dh); \& \& int flags; \& \& char *app_data; /* ?? */ \& \& } DH_METHOD; .Ve .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIDH_OpenSSL()\fR and \fIDH_get_default_method()\fR return pointers to the respective \&\fB\s-1DH_METHOD\s0\fRs. .PP \&\fIDH_set_default_method()\fR returns no value. .PP \&\fIDH_set_method()\fR returns non-zero if the provided \fBmeth\fR was successfully set as the method for \fBdh\fR (including unloading the \s-1ENGINE\s0 handle if the previous method was supplied by an \s-1ENGINE\s0). .PP \&\fIDH_new_method()\fR returns \s-1NULL\s0 and sets an error code that can be obtained by \&\fIERR_get_error\fR\|(3) if the allocation fails. Otherwise it returns a pointer to the newly allocated structure. .SH "NOTES" .IX Header "NOTES" As of version 0.9.7, \s-1DH_METHOD\s0 implementations are grouped together with other algorithmic APIs (eg. \s-1RSA_METHOD\s0, \s-1EVP_CIPHER\s0, etc) in \fB\s-1ENGINE\s0\fR modules. If a default \s-1ENGINE\s0 is specified for \s-1DH\s0 functionality using an \s-1ENGINE\s0 \s-1API\s0 function, that will override any \s-1DH\s0 defaults set using the \s-1DH\s0 \s-1API\s0 (ie. \&\fIDH_set_default_method()\fR). For this reason, the \s-1ENGINE\s0 \s-1API\s0 is the recommended way to control default implementations for use in \s-1DH\s0 and other cryptographic algorithms. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdh\fR\|(3), \fIDH_new\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDH_set_default_method()\fR, \fIDH_get_default_method()\fR, \fIDH_set_method()\fR, \&\fIDH_new_method()\fR and \fIDH_OpenSSL()\fR were added in OpenSSL 0.9.4. .PP \&\fIDH_set_default_openssl_method()\fR and \fIDH_get_default_openssl_method()\fR replaced \&\fIDH_set_default_method()\fR and \fIDH_get_default_method()\fR respectively, and \&\fIDH_set_method()\fR and \fIDH_new_method()\fR were altered to use \fB\s-1ENGINE\s0\fRs rather than \&\fB\s-1DH_METHOD\s0\fRs during development of the engine version of OpenSSL 0.9.6. For 0.9.7, the handling of defaults in the \s-1ENGINE\s0 \s-1API\s0 was restructured so that this change was reversed, and behaviour of the other functions resembled more closely the previous behaviour. The behaviour of defaults in the \s-1ENGINE\s0 \s-1API\s0 now transparently overrides the behaviour of defaults in the \s-1DH\s0 \s-1API\s0 without requiring changing these function prototypes. 07070100048c85000081a40000000000000000000000015135962000001c16000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/SSL_CTX_set_mode.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_set_mode 3" .TH SSL_CTX_set_mode 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_set_mode, SSL_set_mode, SSL_CTX_get_mode, SSL_get_mode \- manipulate SSL engine mode .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& long SSL_CTX_set_mode(SSL_CTX *ctx, long mode); \& long SSL_set_mode(SSL *ssl, long mode); \& \& long SSL_CTX_get_mode(SSL_CTX *ctx); \& long SSL_get_mode(SSL *ssl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_set_mode()\fR adds the mode set via bitmask in \fBmode\fR to \fBctx\fR. Options already set before are not cleared. .PP \&\fISSL_set_mode()\fR adds the mode set via bitmask in \fBmode\fR to \fBssl\fR. Options already set before are not cleared. .PP \&\fISSL_CTX_get_mode()\fR returns the mode set for \fBctx\fR. .PP \&\fISSL_get_mode()\fR returns the mode set for \fBssl\fR. .SH "NOTES" .IX Header "NOTES" The following mode changes are available: .IP "\s-1SSL_MODE_ENABLE_PARTIAL_WRITE\s0" 4 .IX Item "SSL_MODE_ENABLE_PARTIAL_WRITE" Allow SSL_write(..., n) to return r with 0 < r < n (i.e. report success when just a single record has been written). When not set (the default), \&\fISSL_write()\fR will only report success once the complete chunk was written. Once \fISSL_write()\fR returns with r, r bytes have been successfully written and the next call to \fISSL_write()\fR must only send the n\-r bytes left, imitating the behaviour of \fIwrite()\fR. .IP "\s-1SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER\s0" 4 .IX Item "SSL_MODE_ACCEPT_MOVING_WRITE_BUFFER" Make it possible to retry \fISSL_write()\fR with changed buffer location (the buffer contents must stay the same). This is not the default to avoid the misconception that non-blocking \fISSL_write()\fR behaves like non-blocking \fIwrite()\fR. .IP "\s-1SSL_MODE_AUTO_RETRY\s0" 4 .IX Item "SSL_MODE_AUTO_RETRY" Never bother the application with retries if the transport is blocking. If a renegotiation take place during normal operation, a \&\fISSL_read\fR\|(3) or \fISSL_write\fR\|(3) would return with \-1 and indicate the need to retry with \s-1SSL_ERROR_WANT_READ\s0. In a non-blocking environment applications must be prepared to handle incomplete read/write operations. In a blocking environment, applications are not always prepared to deal with read/write operations returning without success report. The flag \s-1SSL_MODE_AUTO_RETRY\s0 will cause read/write operations to only return after the handshake and successful completion. .IP "\s-1SSL_MODE_RELEASE_BUFFERS\s0" 4 .IX Item "SSL_MODE_RELEASE_BUFFERS" When we no longer need a read buffer or a write buffer for a given \s-1SSL\s0, then release the memory we were using to hold it. Released memory is either appended to a list of unused \s-1RAM\s0 chunks on the \s-1SSL_CTX\s0, or simply freed if the list of unused chunks would become longer than \&\s-1SSL_CTX\-\s0>freelist_max_len, which defaults to 32. Using this flag can save around 34k per idle \s-1SSL\s0 connection. This flag has no effect on \s-1SSL\s0 v2 connections, or on \s-1DTLS\s0 connections. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_CTX_set_mode()\fR and \fISSL_set_mode()\fR return the new mode bitmask after adding \fBmode\fR. .PP \&\fISSL_CTX_get_mode()\fR and \fISSL_get_mode()\fR return the current bitmask. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_read\fR\|(3), \fISSL_write\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1SSL_MODE_AUTO_RETRY\s0 as been added in OpenSSL 0.9.6. 07070100048c2f000081a40000000000000000000000015135961300001861000000b600010002ffffffffffffffff0000002d00000000root/usr/local/ssl/man/man3/EVP_BytesToKey.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "EVP_BytesToKey 3" .TH EVP_BytesToKey 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" EVP_BytesToKey \- password based encryption routine .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int EVP_BytesToKey(const EVP_CIPHER *type,const EVP_MD *md, \& const unsigned char *salt, \& const unsigned char *data, int datal, int count, \& unsigned char *key,unsigned char *iv); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIEVP_BytesToKey()\fR derives a key and \s-1IV\s0 from various parameters. \fBtype\fR is the cipher to derive the key and \s-1IV\s0 for. \fBmd\fR is the message digest to use. The \fBsalt\fR paramter is used as a salt in the derivation: it should point to an 8 byte buffer or \s-1NULL\s0 if no salt is used. \fBdata\fR is a buffer containing \&\fBdatal\fR bytes which is used to derive the keying data. \fBcount\fR is the iteration count to use. The derived key and \s-1IV\s0 will be written to \fBkey\fR and \fBiv\fR respectively. .SH "NOTES" .IX Header "NOTES" A typical application of this function is to derive keying material for an encryption algorithm from a password in the \fBdata\fR parameter. .PP Increasing the \fBcount\fR parameter slows down the algorithm which makes it harder for an attacker to peform a brute force attack using a large number of candidate passwords. .PP If the total key and \s-1IV\s0 length is less than the digest length and \&\fB\s-1MD5\s0\fR is used then the derivation algorithm is compatible with PKCS#5 v1.5 otherwise a non standard extension is used to derive the extra data. .PP Newer applications should use more standard algorithms such as PKCS#5 v2.0 for key derivation. .SH "KEY DERIVATION ALGORITHM" .IX Header "KEY DERIVATION ALGORITHM" The key and \s-1IV\s0 is derived by concatenating D_1, D_2, etc until enough data is available for the key and \s-1IV\s0. D_i is defined as: .PP .Vb 1 \& D_i = HASH^count(D_(i\-1) || data || salt) .Ve .PP where || denotes concatentaion, D_0 is empty, \s-1HASH\s0 is the digest algorithm in use, HASH^1(data) is simply \s-1HASH\s0(data), HASH^2(data) is \s-1HASH\s0(\s-1HASH\s0(data)) and so on. .PP The initial bytes are used for the key and the subsequent bytes for the \s-1IV\s0. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIEVP_BytesToKey()\fR returns the size of the derived key in bytes. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIevp\fR\|(3), \fIrand\fR\|(3), \&\fIEVP_EncryptInit\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" 07070100048c97000081a40000000000000000000000015135962200003687000000b600010002ffffffffffffffff0000003400000000root/usr/local/ssl/man/man3/SSL_alert_type_string.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_alert_type_string 3" .TH SSL_alert_type_string 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_alert_type_string, SSL_alert_type_string_long, SSL_alert_desc_string, SSL_alert_desc_string_long \- get textual description of alert information .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& const char *SSL_alert_type_string(int value); \& const char *SSL_alert_type_string_long(int value); \& \& const char *SSL_alert_desc_string(int value); \& const char *SSL_alert_desc_string_long(int value); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_alert_type_string()\fR returns a one letter string indicating the type of the alert specified by \fBvalue\fR. .PP \&\fISSL_alert_type_string_long()\fR returns a string indicating the type of the alert specified by \fBvalue\fR. .PP \&\fISSL_alert_desc_string()\fR returns a two letter string as a short form describing the reason of the alert specified by \fBvalue\fR. .PP \&\fISSL_alert_desc_string_long()\fR returns a string describing the reason of the alert specified by \fBvalue\fR. .SH "NOTES" .IX Header "NOTES" When one side of an \s-1SSL/TLS\s0 communication wants to inform the peer about a special situation, it sends an alert. The alert is sent as a special message and does not influence the normal data stream (unless its contents results in the communication being canceled). .PP A warning alert is sent, when a non-fatal error condition occurs. The \&\*(L"close notify\*(R" alert is sent as a warning alert. Other examples for non-fatal errors are certificate errors (\*(L"certificate expired\*(R", \&\*(L"unsupported certificate\*(R"), for which a warning alert may be sent. (The sending party may however decide to send a fatal error.) The receiving side may cancel the connection on reception of a warning alert on it discretion. .PP Several alert messages must be sent as fatal alert messages as specified by the \s-1TLS\s0 \s-1RFC\s0. A fatal alert always leads to a connection abort. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following strings can occur for \fISSL_alert_type_string()\fR or \&\fISSL_alert_type_string_long()\fR: .ie n .IP """W""/""warning""" 4 .el .IP "``W''/``warning''" 4 .IX Item "W/warning" .PD 0 .ie n .IP """F""/""fatal""" 4 .el .IP "``F''/``fatal''" 4 .IX Item "F/fatal" .ie n .IP """U""/""unknown""" 4 .el .IP "``U''/``unknown''" 4 .IX Item "U/unknown" .PD This indicates that no support is available for this alert type. Probably \fBvalue\fR does not contain a correct alert message. .PP The following strings can occur for \fISSL_alert_desc_string()\fR or \&\fISSL_alert_desc_string_long()\fR: .ie n .IP """\s-1CN\s0""/""close notify""" 4 .el .IP "``\s-1CN\s0''/``close notify''" 4 .IX Item "CN/close notify" The connection shall be closed. This is a warning alert. .ie n .IP """\s-1UM\s0""/""unexpected message""" 4 .el .IP "``\s-1UM\s0''/``unexpected message''" 4 .IX Item "UM/unexpected message" An inappropriate message was received. This alert is always fatal and should never be observed in communication between proper implementations. .ie n .IP """\s-1BM\s0""/""bad record mac""" 4 .el .IP "``\s-1BM\s0''/``bad record mac''" 4 .IX Item "BM/bad record mac" This alert is returned if a record is received with an incorrect \&\s-1MAC\s0. This message is always fatal. .ie n .IP """\s-1DF\s0""/""decompression failure""" 4 .el .IP "``\s-1DF\s0''/``decompression failure''" 4 .IX Item "DF/decompression failure" The decompression function received improper input (e.g. data that would expand to excessive length). This message is always fatal. .ie n .IP """\s-1HF\s0""/""handshake failure""" 4 .el .IP "``\s-1HF\s0''/``handshake failure''" 4 .IX Item "HF/handshake failure" Reception of a handshake_failure alert message indicates that the sender was unable to negotiate an acceptable set of security parameters given the options available. This is a fatal error. .ie n .IP """\s-1NC\s0""/""no certificate""" 4 .el .IP "``\s-1NC\s0''/``no certificate''" 4 .IX Item "NC/no certificate" A client, that was asked to send a certificate, does not send a certificate (SSLv3 only). .ie n .IP """\s-1BC\s0""/""bad certificate""" 4 .el .IP "``\s-1BC\s0''/``bad certificate''" 4 .IX Item "BC/bad certificate" A certificate was corrupt, contained signatures that did not verify correctly, etc .ie n .IP """\s-1UC\s0""/""unsupported certificate""" 4 .el .IP "``\s-1UC\s0''/``unsupported certificate''" 4 .IX Item "UC/unsupported certificate" A certificate was of an unsupported type. .ie n .IP """\s-1CR\s0""/""certificate revoked""" 4 .el .IP "``\s-1CR\s0''/``certificate revoked''" 4 .IX Item "CR/certificate revoked" A certificate was revoked by its signer. .ie n .IP """\s-1CE\s0""/""certificate expired""" 4 .el .IP "``\s-1CE\s0''/``certificate expired''" 4 .IX Item "CE/certificate expired" A certificate has expired or is not currently valid. .ie n .IP """\s-1CU\s0""/""certificate unknown""" 4 .el .IP "``\s-1CU\s0''/``certificate unknown''" 4 .IX Item "CU/certificate unknown" Some other (unspecified) issue arose in processing the certificate, rendering it unacceptable. .ie n .IP """\s-1IP\s0""/""illegal parameter""" 4 .el .IP "``\s-1IP\s0''/``illegal parameter''" 4 .IX Item "IP/illegal parameter" A field in the handshake was out of range or inconsistent with other fields. This is always fatal. .ie n .IP """\s-1DC\s0""/""decryption failed""" 4 .el .IP "``\s-1DC\s0''/``decryption failed''" 4 .IX Item "DC/decryption failed" A TLSCiphertext decrypted in an invalid way: either it wasn't an even multiple of the block length or its padding values, when checked, weren't correct. This message is always fatal. .ie n .IP """\s-1RO\s0""/""record overflow""" 4 .el .IP "``\s-1RO\s0''/``record overflow''" 4 .IX Item "RO/record overflow" A TLSCiphertext record was received which had a length more than 2^14+2048 bytes, or a record decrypted to a TLSCompressed record with more than 2^14+1024 bytes. This message is always fatal. .ie n .IP """\s-1CA\s0""/""unknown \s-1CA\s0""" 4 .el .IP "``\s-1CA\s0''/``unknown \s-1CA\s0''" 4 .IX Item "CA/unknown CA" A valid certificate chain or partial chain was received, but the certificate was not accepted because the \s-1CA\s0 certificate could not be located or couldn't be matched with a known, trusted \s-1CA\s0. This message is always fatal. .ie n .IP """\s-1AD\s0""/""access denied""" 4 .el .IP "``\s-1AD\s0''/``access denied''" 4 .IX Item "AD/access denied" A valid certificate was received, but when access control was applied, the sender decided not to proceed with negotiation. This message is always fatal. .ie n .IP """\s-1DE\s0""/""decode error""" 4 .el .IP "``\s-1DE\s0''/``decode error''" 4 .IX Item "DE/decode error" A message could not be decoded because some field was out of the specified range or the length of the message was incorrect. This message is always fatal. .ie n .IP """\s-1CY\s0""/""decrypt error""" 4 .el .IP "``\s-1CY\s0''/``decrypt error''" 4 .IX Item "CY/decrypt error" A handshake cryptographic operation failed, including being unable to correctly verify a signature, decrypt a key exchange, or validate a finished message. .ie n .IP """\s-1ER\s0""/""export restriction""" 4 .el .IP "``\s-1ER\s0''/``export restriction''" 4 .IX Item "ER/export restriction" A negotiation not in compliance with export restrictions was detected; for example, attempting to transfer a 1024 bit ephemeral \s-1RSA\s0 key for the \s-1RSA_EXPORT\s0 handshake method. This message is always fatal. .ie n .IP """\s-1PV\s0""/""protocol version""" 4 .el .IP "``\s-1PV\s0''/``protocol version''" 4 .IX Item "PV/protocol version" The protocol version the client has attempted to negotiate is recognized, but not supported. (For example, old protocol versions might be avoided for security reasons). This message is always fatal. .ie n .IP """\s-1IS\s0""/""insufficient security""" 4 .el .IP "``\s-1IS\s0''/``insufficient security''" 4 .IX Item "IS/insufficient security" Returned instead of handshake_failure when a negotiation has failed specifically because the server requires ciphers more secure than those supported by the client. This message is always fatal. .ie n .IP """\s-1IE\s0""/""internal error""" 4 .el .IP "``\s-1IE\s0''/``internal error''" 4 .IX Item "IE/internal error" An internal error unrelated to the peer or the correctness of the protocol makes it impossible to continue (such as a memory allocation failure). This message is always fatal. .ie n .IP """\s-1US\s0""/""user canceled""" 4 .el .IP "``\s-1US\s0''/``user canceled''" 4 .IX Item "US/user canceled" This handshake is being canceled for some reason unrelated to a protocol failure. If the user cancels an operation after the handshake is complete, just closing the connection by sending a close_notify is more appropriate. This alert should be followed by a close_notify. This message is generally a warning. .ie n .IP """\s-1NR\s0""/""no renegotiation""" 4 .el .IP "``\s-1NR\s0''/``no renegotiation''" 4 .IX Item "NR/no renegotiation" Sent by the client in response to a hello request or by the server in response to a client hello after initial handshaking. Either of these would normally lead to renegotiation; when that is not appropriate, the recipient should respond with this alert; at that point, the original requester can decide whether to proceed with the connection. One case where this would be appropriate would be where a server has spawned a process to satisfy a request; the process might receive security parameters (key length, authentication, etc.) at startup and it might be difficult to communicate changes to these parameters after that point. This message is always a warning. .ie n .IP """\s-1UP\s0""/""unknown \s-1PSK\s0 identity""" 4 .el .IP "``\s-1UP\s0''/``unknown \s-1PSK\s0 identity''" 4 .IX Item "UP/unknown PSK identity" Sent by the server to indicate that it does not recognize a \s-1PSK\s0 identity or an \s-1SRP\s0 identity. .ie n .IP """\s-1UK\s0""/""unknown""" 4 .el .IP "``\s-1UK\s0''/``unknown''" 4 .IX Item "UK/unknown" This indicates that no description is available for this alert type. Probably \fBvalue\fR does not contain a correct alert message. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_CTX_set_info_callback\fR\|(3) 07070100048be5000081a40000000000000000000000015135960c00001984000000b600010002ffffffffffffffff0000002700000000root/usr/local/ssl/man/man3/BIO_read.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BIO_read 3" .TH BIO_read 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BIO_read, BIO_write, BIO_gets, BIO_puts \- BIO I/O functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int BIO_read(BIO *b, void *buf, int len); \& int BIO_gets(BIO *b,char *buf, int size); \& int BIO_write(BIO *b, const void *buf, int len); \& int BIO_puts(BIO *b,const char *buf); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIBIO_read()\fR attempts to read \fBlen\fR bytes from \s-1BIO\s0 \fBb\fR and places the data in \fBbuf\fR. .PP \&\fIBIO_gets()\fR performs the BIOs \*(L"gets\*(R" operation and places the data in \fBbuf\fR. Usually this operation will attempt to read a line of data from the \s-1BIO\s0 of maximum length \fBlen\fR. There are exceptions to this however, for example \fIBIO_gets()\fR on a digest \s-1BIO\s0 will calculate and return the digest and other BIOs may not support \fIBIO_gets()\fR at all. .PP \&\fIBIO_write()\fR attempts to write \fBlen\fR bytes from \fBbuf\fR to \s-1BIO\s0 \fBb\fR. .PP \&\fIBIO_puts()\fR attempts to write a null terminated string \fBbuf\fR to \s-1BIO\s0 \fBb\fR .SH "RETURN VALUES" .IX Header "RETURN VALUES" All these functions return either the amount of data successfully read or written (if the return value is positive) or that no data was successfully read or written if the result is 0 or \-1. If the return value is \-2 then the operation is not implemented in the specific \s-1BIO\s0 type. .SH "NOTES" .IX Header "NOTES" A 0 or \-1 return is not necessarily an indication of an error. In particular when the source/sink is non-blocking or of a certain type it may merely be an indication that no data is currently available and that the application should retry the operation later. .PP One technique sometimes used with blocking sockets is to use a system call (such as \fIselect()\fR, \fIpoll()\fR or equivalent) to determine when data is available and then call \fIread()\fR to read the data. The equivalent with BIOs (that is call \&\fIselect()\fR on the underlying I/O structure and then call \fIBIO_read()\fR to read the data) should \fBnot\fR be used because a single call to \fIBIO_read()\fR can cause several reads (and writes in the case of \s-1SSL\s0 BIOs) on the underlying I/O structure and may block as a result. Instead \fIselect()\fR (or equivalent) should be combined with non blocking I/O so successive reads will request a retry instead of blocking. .PP See \fIBIO_should_retry\fR\|(3) for details of how to determine the cause of a retry and other I/O issues. .PP If the \fIBIO_gets()\fR function is not supported by a \s-1BIO\s0 then it possible to work around this by adding a buffering \s-1BIO\s0 \fIBIO_f_buffer\fR\|(3) to the chain. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIBIO_should_retry\fR\|(3) .PP \&\s-1TBA\s0 07070100048c9a000081a40000000000000000000000015135962200001afe000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/SSL_do_handshake.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_do_handshake 3" .TH SSL_do_handshake 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_do_handshake \- perform a TLS/SSL handshake .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_do_handshake(SSL *ssl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_do_handshake()\fR will wait for a \s-1SSL/TLS\s0 handshake to take place. If the connection is in client mode, the handshake will be started. The handshake routines may have to be explicitly set in advance using either \&\fISSL_set_connect_state\fR\|(3) or \&\fISSL_set_accept_state\fR\|(3). .SH "NOTES" .IX Header "NOTES" The behaviour of \fISSL_do_handshake()\fR depends on the underlying \s-1BIO\s0. .PP If the underlying \s-1BIO\s0 is \fBblocking\fR, \fISSL_do_handshake()\fR will only return once the handshake has been finished or an error occurred, except for \s-1SGC\s0 (Server Gated Cryptography). For \s-1SGC\s0, \fISSL_do_handshake()\fR may return with \-1, but \fISSL_get_error()\fR will yield \fB\s-1SSL_ERROR_WANT_READ/WRITE\s0\fR and \&\fISSL_do_handshake()\fR should be called again. .PP If the underlying \s-1BIO\s0 is \fBnon-blocking\fR, \fISSL_do_handshake()\fR will also return when the underlying \s-1BIO\s0 could not satisfy the needs of \fISSL_do_handshake()\fR to continue the handshake. In this case a call to \fISSL_get_error()\fR with the return value of \fISSL_do_handshake()\fR will yield \fB\s-1SSL_ERROR_WANT_READ\s0\fR or \&\fB\s-1SSL_ERROR_WANT_WRITE\s0\fR. The calling process then must repeat the call after taking appropriate action to satisfy the needs of \fISSL_do_handshake()\fR. The action depends on the underlying \s-1BIO\s0. When using a non-blocking socket, nothing is to be done, but \fIselect()\fR can be used to check for the required condition. When using a buffering \s-1BIO\s0, like a \s-1BIO\s0 pair, data must be written into or retrieved out of the \s-1BIO\s0 before being able to continue. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following return values can occur: .IP "1." 4 The \s-1TLS/SSL\s0 handshake was successfully completed, a \s-1TLS/SSL\s0 connection has been established. .IP "2." 4 The \s-1TLS/SSL\s0 handshake was not successful but was shut down controlled and by the specifications of the \s-1TLS/SSL\s0 protocol. Call \fISSL_get_error()\fR with the return value \fBret\fR to find out the reason. .IP "3." 4 <0 .Sp The \s-1TLS/SSL\s0 handshake was not successful because a fatal error occurred either at the protocol level or a connection failure occurred. The shutdown was not clean. It can also occur of action is need to continue the operation for non-blocking BIOs. Call \fISSL_get_error()\fR with the return value \fBret\fR to find out the reason. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fISSL_get_error\fR\|(3), \fISSL_connect\fR\|(3), \&\fISSL_accept\fR\|(3), \fIssl\fR\|(3), \fIbio\fR\|(3), \&\fISSL_set_connect_state\fR\|(3) .SH "POD ERRORS" .IX Header "POD ERRORS" Hey! \fBThe above document had some coding errors, which are explained below:\fR .IP "Around line 53:" 4 .IX Item "Around line 53:" You have '=item 0' instead of the expected '=item 2' .IP "Around line 59:" 4 .IX Item "Around line 59:" Expected '=item 3' 07070100048c05000081a40000000000000000000000015135960f00001879000000b600010002ffffffffffffffff0000002a00000000root/usr/local/ssl/man/man3/CMS_decrypt.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CMS_decrypt 3" .TH CMS_decrypt 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& CMS_decrypt \- decrypt content from a CMS envelopedData structure .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int CMS_decrypt(CMS_ContentInfo *cms, EVP_PKEY *pkey, X509 *cert, BIO *dcont, BIO *out, unsigned int flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fICMS_decrypt()\fR extracts and decrypts the content from a \s-1CMS\s0 EnvelopedData structure. \fBpkey\fR is the private key of the recipient, \fBcert\fR is the recipient's certificate, \fBout\fR is a \s-1BIO\s0 to write the content to and \&\fBflags\fR is an optional set of flags. .PP The \fBdcont\fR parameter is used in the rare case where the encrypted content is detached. It will normally be set to \s-1NULL\s0. .SH "NOTES" .IX Header "NOTES" \&\fIOpenSSL_add_all_algorithms()\fR (or equivalent) should be called before using this function or errors about unknown algorithms will occur. .PP Although the recipients certificate is not needed to decrypt the data it is needed to locate the appropriate (of possible several) recipients in the \s-1CMS\s0 structure. If \fBcert\fR is set to \s-1NULL\s0 all possible recipients are tried. .PP It is possible to determine the correct recipient key by other means (for example looking them up in a database) and setting them in the \s-1CMS\s0 structure in advance using the \s-1CMS\s0 utility functions such as \fICMS_set1_pkey()\fR. In this case both \fBcert\fR and \fBpkey\fR should be set to \s-1NULL\s0. .PP To process KEKRecipientInfo types \fICMS_set1_key()\fR or \fICMS_RecipientInfo_set0_key()\fR and \fICMS_ReceipientInfo_decrypt()\fR should be called before \fICMS_decrypt()\fR and \&\fBcert\fR and \fBpkey\fR set to \s-1NULL\s0. .PP The following flags can be passed in the \fBflags\fR parameter. .PP If the \fB\s-1CMS_TEXT\s0\fR flag is set \s-1MIME\s0 headers for type \fBtext/plain\fR are deleted from the content. If the content is not of type \fBtext/plain\fR then an error is returned. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fICMS_decrypt()\fR returns either 1 for success or 0 for failure. The error can be obtained from \fIERR_get_error\fR\|(3) .SH "BUGS" .IX Header "BUGS" The lack of single pass processing and the need to hold all data in memory as mentioned in \fICMS_verify()\fR also applies to \fICMS_decrypt()\fR. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fICMS_encrypt\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fICMS_decrypt()\fR was added to OpenSSL 0.9.8 07070100048cb0000081a400000000000000000000000151359624000023ec000000b600010002ffffffffffffffff0000002700000000root/usr/local/ssl/man/man3/SSL_read.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_read 3" .TH SSL_read 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_read \- read bytes from a TLS/SSL connection. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_read(SSL *ssl, void *buf, int num); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_read()\fR tries to read \fBnum\fR bytes from the specified \fBssl\fR into the buffer \fBbuf\fR. .SH "NOTES" .IX Header "NOTES" If necessary, \fISSL_read()\fR will negotiate a \s-1TLS/SSL\s0 session, if not already explicitly performed by \fISSL_connect\fR\|(3) or \&\fISSL_accept\fR\|(3). If the peer requests a re-negotiation, it will be performed transparently during the \fISSL_read()\fR operation. The behaviour of \fISSL_read()\fR depends on the underlying \s-1BIO\s0. .PP For the transparent negotiation to succeed, the \fBssl\fR must have been initialized to client or server mode. This is being done by calling \&\fISSL_set_connect_state\fR\|(3) or \fISSL_set_accept_state()\fR before the first call to an \fISSL_read()\fR or \fISSL_write\fR\|(3) function. .PP \&\fISSL_read()\fR works based on the \s-1SSL/TLS\s0 records. The data are received in records (with a maximum record size of 16kB for SSLv3/TLSv1). Only when a record has been completely received, it can be processed (decryption and check of integrity). Therefore data that was not retrieved at the last call of \fISSL_read()\fR can still be buffered inside the \s-1SSL\s0 layer and will be retrieved on the next call to \fISSL_read()\fR. If \fBnum\fR is higher than the number of bytes buffered, \fISSL_read()\fR will return with the bytes buffered. If no more bytes are in the buffer, \fISSL_read()\fR will trigger the processing of the next record. Only when the record has been received and processed completely, \fISSL_read()\fR will return reporting success. At most the contents of the record will be returned. As the size of an \s-1SSL/TLS\s0 record may exceed the maximum packet size of the underlying transport (e.g. \s-1TCP\s0), it may be necessary to read several packets from the transport layer before the record is complete and \fISSL_read()\fR can succeed. .PP If the underlying \s-1BIO\s0 is \fBblocking\fR, \fISSL_read()\fR will only return, once the read operation has been finished or an error occurred, except when a renegotiation take place, in which case a \s-1SSL_ERROR_WANT_READ\s0 may occur. This behaviour can be controlled with the \s-1SSL_MODE_AUTO_RETRY\s0 flag of the \&\fISSL_CTX_set_mode\fR\|(3) call. .PP If the underlying \s-1BIO\s0 is \fBnon-blocking\fR, \fISSL_read()\fR will also return when the underlying \s-1BIO\s0 could not satisfy the needs of \fISSL_read()\fR to continue the operation. In this case a call to \&\fISSL_get_error\fR\|(3) with the return value of \fISSL_read()\fR will yield \fB\s-1SSL_ERROR_WANT_READ\s0\fR or \&\fB\s-1SSL_ERROR_WANT_WRITE\s0\fR. As at any time a re-negotiation is possible, a call to \fISSL_read()\fR can also cause write operations! The calling process then must repeat the call after taking appropriate action to satisfy the needs of \fISSL_read()\fR. The action depends on the underlying \s-1BIO\s0. When using a non-blocking socket, nothing is to be done, but \fIselect()\fR can be used to check for the required condition. When using a buffering \s-1BIO\s0, like a \s-1BIO\s0 pair, data must be written into or retrieved out of the \s-1BIO\s0 before being able to continue. .PP \&\fISSL_pending\fR\|(3) can be used to find out whether there are buffered bytes available for immediate retrieval. In this case \&\fISSL_read()\fR can be called without blocking or actually receiving new data from the underlying socket. .SH "WARNING" .IX Header "WARNING" When an \fISSL_read()\fR operation has to be repeated because of \&\fB\s-1SSL_ERROR_WANT_READ\s0\fR or \fB\s-1SSL_ERROR_WANT_WRITE\s0\fR, it must be repeated with the same arguments. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following return values can occur: .IP ">0" 4 .IX Item ">0" The read operation was successful; the return value is the number of bytes actually read from the \s-1TLS/SSL\s0 connection. .IP "0" 4 The read operation was not successful. The reason may either be a clean shutdown due to a \*(L"close notify\*(R" alert sent by the peer (in which case the \s-1SSL_RECEIVED_SHUTDOWN\s0 flag in the ssl shutdown state is set (see \fISSL_shutdown\fR\|(3), \&\fISSL_set_shutdown\fR\|(3)). It is also possible, that the peer simply shut down the underlying transport and the shutdown is incomplete. Call \fISSL_get_error()\fR with the return value \fBret\fR to find out, whether an error occurred or the connection was shut down cleanly (\s-1SSL_ERROR_ZERO_RETURN\s0). .Sp SSLv2 (deprecated) does not support a shutdown alert protocol, so it can only be detected, whether the underlying connection was closed. It cannot be checked, whether the closure was initiated by the peer or by something else. .IP "<0" 4 .IX Item "<0" The read operation was not successful, because either an error occurred or action must be taken by the calling process. Call \fISSL_get_error()\fR with the return value \fBret\fR to find out the reason. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fISSL_get_error\fR\|(3), \fISSL_write\fR\|(3), \&\fISSL_CTX_set_mode\fR\|(3), \fISSL_CTX_new\fR\|(3), \&\fISSL_connect\fR\|(3), \fISSL_accept\fR\|(3) \&\fISSL_set_connect_state\fR\|(3), \&\fISSL_pending\fR\|(3), \&\fISSL_shutdown\fR\|(3), \fISSL_set_shutdown\fR\|(3), \&\fIssl\fR\|(3), \fIbio\fR\|(3) 07070100048cdf000081a40000000000000000000000015135961c00008b5b000000b600010002ffffffffffffffff0000002500000000root/usr/local/ssl/man/man3/engine.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "engine 3" .TH engine 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" engine \- ENGINE cryptographic module support .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& ENGINE *ENGINE_get_first(void); \& ENGINE *ENGINE_get_last(void); \& ENGINE *ENGINE_get_next(ENGINE *e); \& ENGINE *ENGINE_get_prev(ENGINE *e); \& \& int ENGINE_add(ENGINE *e); \& int ENGINE_remove(ENGINE *e); \& \& ENGINE *ENGINE_by_id(const char *id); \& \& int ENGINE_init(ENGINE *e); \& int ENGINE_finish(ENGINE *e); \& \& void ENGINE_load_openssl(void); \& void ENGINE_load_dynamic(void); \& #ifndef OPENSSL_NO_STATIC_ENGINE \& void ENGINE_load_4758cca(void); \& void ENGINE_load_aep(void); \& void ENGINE_load_atalla(void); \& void ENGINE_load_chil(void); \& void ENGINE_load_cswift(void); \& void ENGINE_load_gmp(void); \& void ENGINE_load_nuron(void); \& void ENGINE_load_sureware(void); \& void ENGINE_load_ubsec(void); \& #endif \& void ENGINE_load_cryptodev(void); \& void ENGINE_load_builtin_engines(void); \& \& void ENGINE_cleanup(void); \& \& ENGINE *ENGINE_get_default_RSA(void); \& ENGINE *ENGINE_get_default_DSA(void); \& ENGINE *ENGINE_get_default_ECDH(void); \& ENGINE *ENGINE_get_default_ECDSA(void); \& ENGINE *ENGINE_get_default_DH(void); \& ENGINE *ENGINE_get_default_RAND(void); \& ENGINE *ENGINE_get_cipher_engine(int nid); \& ENGINE *ENGINE_get_digest_engine(int nid); \& \& int ENGINE_set_default_RSA(ENGINE *e); \& int ENGINE_set_default_DSA(ENGINE *e); \& int ENGINE_set_default_ECDH(ENGINE *e); \& int ENGINE_set_default_ECDSA(ENGINE *e); \& int ENGINE_set_default_DH(ENGINE *e); \& int ENGINE_set_default_RAND(ENGINE *e); \& int ENGINE_set_default_ciphers(ENGINE *e); \& int ENGINE_set_default_digests(ENGINE *e); \& int ENGINE_set_default_string(ENGINE *e, const char *list); \& \& int ENGINE_set_default(ENGINE *e, unsigned int flags); \& \& unsigned int ENGINE_get_table_flags(void); \& void ENGINE_set_table_flags(unsigned int flags); \& \& int ENGINE_register_RSA(ENGINE *e); \& void ENGINE_unregister_RSA(ENGINE *e); \& void ENGINE_register_all_RSA(void); \& int ENGINE_register_DSA(ENGINE *e); \& void ENGINE_unregister_DSA(ENGINE *e); \& void ENGINE_register_all_DSA(void); \& int ENGINE_register_ECDH(ENGINE *e); \& void ENGINE_unregister_ECDH(ENGINE *e); \& void ENGINE_register_all_ECDH(void); \& int ENGINE_register_ECDSA(ENGINE *e); \& void ENGINE_unregister_ECDSA(ENGINE *e); \& void ENGINE_register_all_ECDSA(void); \& int ENGINE_register_DH(ENGINE *e); \& void ENGINE_unregister_DH(ENGINE *e); \& void ENGINE_register_all_DH(void); \& int ENGINE_register_RAND(ENGINE *e); \& void ENGINE_unregister_RAND(ENGINE *e); \& void ENGINE_register_all_RAND(void); \& int ENGINE_register_STORE(ENGINE *e); \& void ENGINE_unregister_STORE(ENGINE *e); \& void ENGINE_register_all_STORE(void); \& int ENGINE_register_ciphers(ENGINE *e); \& void ENGINE_unregister_ciphers(ENGINE *e); \& void ENGINE_register_all_ciphers(void); \& int ENGINE_register_digests(ENGINE *e); \& void ENGINE_unregister_digests(ENGINE *e); \& void ENGINE_register_all_digests(void); \& int ENGINE_register_complete(ENGINE *e); \& int ENGINE_register_all_complete(void); \& \& int ENGINE_ctrl(ENGINE *e, int cmd, long i, void *p, void (*f)(void)); \& int ENGINE_cmd_is_executable(ENGINE *e, int cmd); \& int ENGINE_ctrl_cmd(ENGINE *e, const char *cmd_name, \& long i, void *p, void (*f)(void), int cmd_optional); \& int ENGINE_ctrl_cmd_string(ENGINE *e, const char *cmd_name, const char *arg, \& int cmd_optional); \& \& int ENGINE_set_ex_data(ENGINE *e, int idx, void *arg); \& void *ENGINE_get_ex_data(const ENGINE *e, int idx); \& \& int ENGINE_get_ex_new_index(long argl, void *argp, CRYPTO_EX_new *new_func, \& CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func); \& \& ENGINE *ENGINE_new(void); \& int ENGINE_free(ENGINE *e); \& int ENGINE_up_ref(ENGINE *e); \& \& int ENGINE_set_id(ENGINE *e, const char *id); \& int ENGINE_set_name(ENGINE *e, const char *name); \& int ENGINE_set_RSA(ENGINE *e, const RSA_METHOD *rsa_meth); \& int ENGINE_set_DSA(ENGINE *e, const DSA_METHOD *dsa_meth); \& int ENGINE_set_ECDH(ENGINE *e, const ECDH_METHOD *dh_meth); \& int ENGINE_set_ECDSA(ENGINE *e, const ECDSA_METHOD *dh_meth); \& int ENGINE_set_DH(ENGINE *e, const DH_METHOD *dh_meth); \& int ENGINE_set_RAND(ENGINE *e, const RAND_METHOD *rand_meth); \& int ENGINE_set_STORE(ENGINE *e, const STORE_METHOD *rand_meth); \& int ENGINE_set_destroy_function(ENGINE *e, ENGINE_GEN_INT_FUNC_PTR destroy_f); \& int ENGINE_set_init_function(ENGINE *e, ENGINE_GEN_INT_FUNC_PTR init_f); \& int ENGINE_set_finish_function(ENGINE *e, ENGINE_GEN_INT_FUNC_PTR finish_f); \& int ENGINE_set_ctrl_function(ENGINE *e, ENGINE_CTRL_FUNC_PTR ctrl_f); \& int ENGINE_set_load_privkey_function(ENGINE *e, ENGINE_LOAD_KEY_PTR loadpriv_f); \& int ENGINE_set_load_pubkey_function(ENGINE *e, ENGINE_LOAD_KEY_PTR loadpub_f); \& int ENGINE_set_ciphers(ENGINE *e, ENGINE_CIPHERS_PTR f); \& int ENGINE_set_digests(ENGINE *e, ENGINE_DIGESTS_PTR f); \& int ENGINE_set_flags(ENGINE *e, int flags); \& int ENGINE_set_cmd_defns(ENGINE *e, const ENGINE_CMD_DEFN *defns); \& \& const char *ENGINE_get_id(const ENGINE *e); \& const char *ENGINE_get_name(const ENGINE *e); \& const RSA_METHOD *ENGINE_get_RSA(const ENGINE *e); \& const DSA_METHOD *ENGINE_get_DSA(const ENGINE *e); \& const ECDH_METHOD *ENGINE_get_ECDH(const ENGINE *e); \& const ECDSA_METHOD *ENGINE_get_ECDSA(const ENGINE *e); \& const DH_METHOD *ENGINE_get_DH(const ENGINE *e); \& const RAND_METHOD *ENGINE_get_RAND(const ENGINE *e); \& const STORE_METHOD *ENGINE_get_STORE(const ENGINE *e); \& ENGINE_GEN_INT_FUNC_PTR ENGINE_get_destroy_function(const ENGINE *e); \& ENGINE_GEN_INT_FUNC_PTR ENGINE_get_init_function(const ENGINE *e); \& ENGINE_GEN_INT_FUNC_PTR ENGINE_get_finish_function(const ENGINE *e); \& ENGINE_CTRL_FUNC_PTR ENGINE_get_ctrl_function(const ENGINE *e); \& ENGINE_LOAD_KEY_PTR ENGINE_get_load_privkey_function(const ENGINE *e); \& ENGINE_LOAD_KEY_PTR ENGINE_get_load_pubkey_function(const ENGINE *e); \& ENGINE_CIPHERS_PTR ENGINE_get_ciphers(const ENGINE *e); \& ENGINE_DIGESTS_PTR ENGINE_get_digests(const ENGINE *e); \& const EVP_CIPHER *ENGINE_get_cipher(ENGINE *e, int nid); \& const EVP_MD *ENGINE_get_digest(ENGINE *e, int nid); \& int ENGINE_get_flags(const ENGINE *e); \& const ENGINE_CMD_DEFN *ENGINE_get_cmd_defns(const ENGINE *e); \& \& EVP_PKEY *ENGINE_load_private_key(ENGINE *e, const char *key_id, \& UI_METHOD *ui_method, void *callback_data); \& EVP_PKEY *ENGINE_load_public_key(ENGINE *e, const char *key_id, \& UI_METHOD *ui_method, void *callback_data); \& \& void ENGINE_add_conf_module(void); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions create, manipulate, and use cryptographic modules in the form of \fB\s-1ENGINE\s0\fR objects. These objects act as containers for implementations of cryptographic algorithms, and support a reference-counted mechanism to allow them to be dynamically loaded in and out of the running application. .PP The cryptographic functionality that can be provided by an \fB\s-1ENGINE\s0\fR implementation includes the following abstractions; .PP .Vb 6 \& RSA_METHOD \- for providing alternative RSA implementations \& DSA_METHOD, DH_METHOD, RAND_METHOD, ECDH_METHOD, ECDSA_METHOD, \& STORE_METHOD \- similarly for other OpenSSL APIs \& EVP_CIPHER \- potentially multiple cipher algorithms (indexed by \*(Aqnid\*(Aq) \& EVP_DIGEST \- potentially multiple hash algorithms (indexed by \*(Aqnid\*(Aq) \& key\-loading \- loading public and/or private EVP_PKEY keys .Ve .SS "Reference counting and handles" .IX Subsection "Reference counting and handles" Due to the modular nature of the \s-1ENGINE\s0 \s-1API\s0, pointers to ENGINEs need to be treated as handles \- ie. not only as pointers, but also as references to the underlying \s-1ENGINE\s0 object. Ie. one should obtain a new reference when making copies of an \s-1ENGINE\s0 pointer if the copies will be used (and released) independently. .PP \&\s-1ENGINE\s0 objects have two levels of reference-counting to match the way in which the objects are used. At the most basic level, each \s-1ENGINE\s0 pointer is inherently a \fBstructural\fR reference \- a structural reference is required to use the pointer value at all, as this kind of reference is a guarantee that the structure can not be deallocated until the reference is released. .PP However, a structural reference provides no guarantee that the \s-1ENGINE\s0 is initiliased and able to use any of its cryptographic implementations. Indeed it's quite possible that most ENGINEs will not initialise at all in typical environments, as ENGINEs are typically used to support specialised hardware. To use an \s-1ENGINE\s0's functionality, you need a \&\fBfunctional\fR reference. This kind of reference can be considered a specialised form of structural reference, because each functional reference implicitly contains a structural reference as well \- however to avoid difficult-to-find programming bugs, it is recommended to treat the two kinds of reference independently. If you have a functional reference to an \&\s-1ENGINE\s0, you have a guarantee that the \s-1ENGINE\s0 has been initialised ready to perform cryptographic operations and will remain uninitialised until after you have released your reference. .PP \&\fIStructural references\fR .PP This basic type of reference is used for instantiating new ENGINEs, iterating across OpenSSL's internal linked-list of loaded ENGINEs, reading information about an \s-1ENGINE\s0, etc. Essentially a structural reference is sufficient if you only need to query or manipulate the data of an \s-1ENGINE\s0 implementation rather than use its functionality. .PP The \fIENGINE_new()\fR function returns a structural reference to a new (empty) \&\s-1ENGINE\s0 object. There are other \s-1ENGINE\s0 \s-1API\s0 functions that return structural references such as; \fIENGINE_by_id()\fR, \fIENGINE_get_first()\fR, \fIENGINE_get_last()\fR, \&\fIENGINE_get_next()\fR, \fIENGINE_get_prev()\fR. All structural references should be released by a corresponding to call to the \fIENGINE_free()\fR function \- the \&\s-1ENGINE\s0 object itself will only actually be cleaned up and deallocated when the last structural reference is released. .PP It should also be noted that many \s-1ENGINE\s0 \s-1API\s0 function calls that accept a structural reference will internally obtain another reference \- typically this happens whenever the supplied \s-1ENGINE\s0 will be needed by OpenSSL after the function has returned. Eg. the function to add a new \s-1ENGINE\s0 to OpenSSL's internal list is \fIENGINE_add()\fR \- if this function returns success, then OpenSSL will have stored a new structural reference internally so the caller is still responsible for freeing their own reference with \&\fIENGINE_free()\fR when they are finished with it. In a similar way, some functions will automatically release the structural reference passed to it if part of the function's job is to do so. Eg. the \fIENGINE_get_next()\fR and \&\fIENGINE_get_prev()\fR functions are used for iterating across the internal \&\s-1ENGINE\s0 list \- they will return a new structural reference to the next (or previous) \s-1ENGINE\s0 in the list or \s-1NULL\s0 if at the end (or beginning) of the list, but in either case the structural reference passed to the function is released on behalf of the caller. .PP To clarify a particular function's handling of references, one should always consult that function's documentation \*(L"man\*(R" page, or failing that the openssl/engine.h header file includes some hints. .PP \&\fIFunctional references\fR .PP As mentioned, functional references exist when the cryptographic functionality of an \s-1ENGINE\s0 is required to be available. A functional reference can be obtained in one of two ways; from an existing structural reference to the required \s-1ENGINE\s0, or by asking OpenSSL for the default operational \s-1ENGINE\s0 for a given cryptographic purpose. .PP To obtain a functional reference from an existing structural reference, call the \fIENGINE_init()\fR function. This returns zero if the \s-1ENGINE\s0 was not already operational and couldn't be successfully initialised (eg. lack of system drivers, no special hardware attached, etc), otherwise it will return non-zero to indicate that the \s-1ENGINE\s0 is now operational and will have allocated a new \fBfunctional\fR reference to the \s-1ENGINE\s0. All functional references are released by calling \fIENGINE_finish()\fR (which removes the implicit structural reference as well). .PP The second way to get a functional reference is by asking OpenSSL for a default implementation for a given task, eg. by \fIENGINE_get_default_RSA()\fR, \&\fIENGINE_get_default_cipher_engine()\fR, etc. These are discussed in the next section, though they are not usually required by application programmers as they are used automatically when creating and using the relevant algorithm-specific types in OpenSSL, such as \s-1RSA\s0, \s-1DSA\s0, \s-1EVP_CIPHER_CTX\s0, etc. .SS "Default implementations" .IX Subsection "Default implementations" For each supported abstraction, the \s-1ENGINE\s0 code maintains an internal table of state to control which implementations are available for a given abstraction and which should be used by default. These implementations are registered in the tables and indexed by an 'nid' value, because abstractions like \s-1EVP_CIPHER\s0 and \s-1EVP_DIGEST\s0 support many distinct algorithms and modes, and ENGINEs can support arbitrarily many of them. In the case of other abstractions like \s-1RSA\s0, \s-1DSA\s0, etc, there is only one \&\*(L"algorithm\*(R" so all implementations implicitly register using the same 'nid' index. .PP When a default \s-1ENGINE\s0 is requested for a given abstraction/algorithm/mode, (eg. when calling RSA_new_method(\s-1NULL\s0)), a \*(L"get_default\*(R" call will be made to the \&\s-1ENGINE\s0 subsystem to process the corresponding state table and return a functional reference to an initialised \s-1ENGINE\s0 whose implementation should be used. If no \s-1ENGINE\s0 should (or can) be used, it will return \s-1NULL\s0 and the caller will operate with a \s-1NULL\s0 \s-1ENGINE\s0 handle \- this usually equates to using the conventional software implementation. In the latter case, OpenSSL will from then on behave the way it used to before the \s-1ENGINE\s0 \s-1API\s0 existed. .PP Each state table has a flag to note whether it has processed this \&\*(L"get_default\*(R" query since the table was last modified, because to process this question it must iterate across all the registered ENGINEs in the table trying to initialise each of them in turn, in case one of them is operational. If it returns a functional reference to an \s-1ENGINE\s0, it will also cache another reference to speed up processing future queries (without needing to iterate across the table). Likewise, it will cache a \s-1NULL\s0 response if no \s-1ENGINE\s0 was available so that future queries won't repeat the same iteration unless the state table changes. This behaviour can also be changed; if the \s-1ENGINE_TABLE_FLAG_NOINIT\s0 flag is set (using \&\fIENGINE_set_table_flags()\fR), no attempted initialisations will take place, instead the only way for the state table to return a non-NULL \s-1ENGINE\s0 to the \&\*(L"get_default\*(R" query will be if one is expressly set in the table. Eg. \&\fIENGINE_set_default_RSA()\fR does the same job as \fIENGINE_register_RSA()\fR except that it also sets the state table's cached response for the \*(L"get_default\*(R" query. In the case of abstractions like \s-1EVP_CIPHER\s0, where implementations are indexed by 'nid', these flags and cached-responses are distinct for each 'nid' value. .SS "Application requirements" .IX Subsection "Application requirements" This section will explain the basic things an application programmer should support to make the most useful elements of the \s-1ENGINE\s0 functionality available to the user. The first thing to consider is whether the programmer wishes to make alternative \s-1ENGINE\s0 modules available to the application and user. OpenSSL maintains an internal linked list of \&\*(L"visible\*(R" ENGINEs from which it has to operate \- at start-up, this list is empty and in fact if an application does not call any \s-1ENGINE\s0 \s-1API\s0 calls and it uses static linking against openssl, then the resulting application binary will not contain any alternative \s-1ENGINE\s0 code at all. So the first consideration is whether any/all available \s-1ENGINE\s0 implementations should be made visible to OpenSSL \- this is controlled by calling the various \*(L"load\*(R" functions, eg. .PP .Vb 9 \& /* Make the "dynamic" ENGINE available */ \& void ENGINE_load_dynamic(void); \& /* Make the CryptoSwift hardware acceleration support available */ \& void ENGINE_load_cswift(void); \& /* Make support for nCipher\*(Aqs "CHIL" hardware available */ \& void ENGINE_load_chil(void); \& ... \& /* Make ALL ENGINE implementations bundled with OpenSSL available */ \& void ENGINE_load_builtin_engines(void); .Ve .PP Having called any of these functions, \s-1ENGINE\s0 objects would have been dynamically allocated and populated with these implementations and linked into OpenSSL's internal linked list. At this point it is important to mention an important \s-1API\s0 function; .PP .Vb 1 \& void ENGINE_cleanup(void); .Ve .PP If no \s-1ENGINE\s0 \s-1API\s0 functions are called at all in an application, then there are no inherent memory leaks to worry about from the \s-1ENGINE\s0 functionality, however if any ENGINEs are loaded, even if they are never registered or used, it is necessary to use the \fIENGINE_cleanup()\fR function to correspondingly cleanup before program exit, if the caller wishes to avoid memory leaks. This mechanism uses an internal callback registration table so that any \s-1ENGINE\s0 \s-1API\s0 functionality that knows it requires cleanup can register its cleanup details to be called during \fIENGINE_cleanup()\fR. This approach allows \fIENGINE_cleanup()\fR to clean up after any \s-1ENGINE\s0 functionality at all that your program uses, yet doesn't automatically create linker dependencies to all possible \s-1ENGINE\s0 functionality \- only the cleanup callbacks required by the functionality you do use will be required by the linker. .PP The fact that ENGINEs are made visible to OpenSSL (and thus are linked into the program and loaded into memory at run-time) does not mean they are \&\*(L"registered\*(R" or called into use by OpenSSL automatically \- that behaviour is something for the application to control. Some applications will want to allow the user to specify exactly which \s-1ENGINE\s0 they want used if any is to be used at all. Others may prefer to load all support and have OpenSSL automatically use at run-time any \s-1ENGINE\s0 that is able to successfully initialise \- ie. to assume that this corresponds to acceleration hardware attached to the machine or some such thing. There are probably numerous other ways in which applications may prefer to handle things, so we will simply illustrate the consequences as they apply to a couple of simple cases and leave developers to consider these and the source code to openssl's builtin utilities as guides. .PP \&\fIUsing a specific \s-1ENGINE\s0 implementation\fR .PP Here we'll assume an application has been configured by its user or admin to want to use the \*(L"\s-1ACME\s0\*(R" \s-1ENGINE\s0 if it is available in the version of OpenSSL the application was compiled with. If it is available, it should be used by default for all \s-1RSA\s0, \s-1DSA\s0, and symmetric cipher operation, otherwise OpenSSL should use its builtin software as per usual. The following code illustrates how to approach this; .PP .Vb 10 \& ENGINE *e; \& const char *engine_id = "ACME"; \& ENGINE_load_builtin_engines(); \& e = ENGINE_by_id(engine_id); \& if(!e) \& /* the engine isn\*(Aqt available */ \& return; \& if(!ENGINE_init(e)) { \& /* the engine couldn\*(Aqt initialise, release \*(Aqe\*(Aq */ \& ENGINE_free(e); \& return; \& } \& if(!ENGINE_set_default_RSA(e)) \& /* This should only happen when \*(Aqe\*(Aq can\*(Aqt initialise, but the previous \& * statement suggests it did. */ \& abort(); \& ENGINE_set_default_DSA(e); \& ENGINE_set_default_ciphers(e); \& /* Release the functional reference from ENGINE_init() */ \& ENGINE_finish(e); \& /* Release the structural reference from ENGINE_by_id() */ \& ENGINE_free(e); .Ve .PP \&\fIAutomatically using builtin \s-1ENGINE\s0 implementations\fR .PP Here we'll assume we want to load and register all \s-1ENGINE\s0 implementations bundled with OpenSSL, such that for any cryptographic algorithm required by OpenSSL \- if there is an \s-1ENGINE\s0 that implements it and can be initialise, it should be used. The following code illustrates how this can work; .PP .Vb 4 \& /* Load all bundled ENGINEs into memory and make them visible */ \& ENGINE_load_builtin_engines(); \& /* Register all of them for every algorithm they collectively implement */ \& ENGINE_register_all_complete(); .Ve .PP That's all that's required. Eg. the next time OpenSSL tries to set up an \&\s-1RSA\s0 key, any bundled ENGINEs that implement \s-1RSA_METHOD\s0 will be passed to \&\fIENGINE_init()\fR and if any of those succeed, that \s-1ENGINE\s0 will be set as the default for \s-1RSA\s0 use from then on. .SS "Advanced configuration support" .IX Subsection "Advanced configuration support" There is a mechanism supported by the \s-1ENGINE\s0 framework that allows each \&\s-1ENGINE\s0 implementation to define an arbitrary set of configuration \&\*(L"commands\*(R" and expose them to OpenSSL and any applications based on OpenSSL. This mechanism is entirely based on the use of name-value pairs and assumes \s-1ASCII\s0 input (no unicode or \s-1UTF\s0 for now!), so it is ideal if applications want to provide a transparent way for users to provide arbitrary configuration \*(L"directives\*(R" directly to such ENGINEs. It is also possible for the application to dynamically interrogate the loaded \s-1ENGINE\s0 implementations for the names, descriptions, and input flags of their available \*(L"control commands\*(R", providing a more flexible configuration scheme. However, if the user is expected to know which \s-1ENGINE\s0 device he/she is using (in the case of specialised hardware, this goes without saying) then applications may not need to concern themselves with discovering the supported control commands and simply prefer to pass settings into ENGINEs exactly as they are provided by the user. .PP Before illustrating how control commands work, it is worth mentioning what they are typically used for. Broadly speaking there are two uses for control commands; the first is to provide the necessary details to the implementation (which may know nothing at all specific to the host system) so that it can be initialised for use. This could include the path to any driver or config files it needs to load, required network addresses, smart-card identifiers, passwords to initialise protected devices, logging information, etc etc. This class of commands typically needs to be passed to an \s-1ENGINE\s0 \fBbefore\fR attempting to initialise it, ie. before calling \fIENGINE_init()\fR. The other class of commands consist of settings or operations that tweak certain behaviour or cause certain operations to take place, and these commands may work either before or after \fIENGINE_init()\fR, or in some cases both. \s-1ENGINE\s0 implementations should provide indications of this in the descriptions attached to builtin control commands and/or in external product documentation. .PP \&\fIIssuing control commands to an \s-1ENGINE\s0\fR .PP Let's illustrate by example; a function for which the caller supplies the name of the \s-1ENGINE\s0 it wishes to use, a table of string-pairs for use before initialisation, and another table for use after initialisation. Note that the string-pairs used for control commands consist of a command \*(L"name\*(R" followed by the command \*(L"parameter\*(R" \- the parameter could be \s-1NULL\s0 in some cases but the name can not. This function should initialise the \s-1ENGINE\s0 (issuing the \*(L"pre\*(R" commands beforehand and the \*(L"post\*(R" commands afterwards) and set it as the default for everything except \s-1RAND\s0 and then return a boolean success or failure. .PP .Vb 10 \& int generic_load_engine_fn(const char *engine_id, \& const char **pre_cmds, int pre_num, \& const char **post_cmds, int post_num) \& { \& ENGINE *e = ENGINE_by_id(engine_id); \& if(!e) return 0; \& while(pre_num\-\-) { \& if(!ENGINE_ctrl_cmd_string(e, pre_cmds[0], pre_cmds[1], 0)) { \& fprintf(stderr, "Failed command (%s \- %s:%s)\en", engine_id, \& pre_cmds[0], pre_cmds[1] ? pre_cmds[1] : "(NULL)"); \& ENGINE_free(e); \& return 0; \& } \& pre_cmds += 2; \& } \& if(!ENGINE_init(e)) { \& fprintf(stderr, "Failed initialisation\en"); \& ENGINE_free(e); \& return 0; \& } \& /* ENGINE_init() returned a functional reference, so free the structural \& * reference from ENGINE_by_id(). */ \& ENGINE_free(e); \& while(post_num\-\-) { \& if(!ENGINE_ctrl_cmd_string(e, post_cmds[0], post_cmds[1], 0)) { \& fprintf(stderr, "Failed command (%s \- %s:%s)\en", engine_id, \& post_cmds[0], post_cmds[1] ? post_cmds[1] : "(NULL)"); \& ENGINE_finish(e); \& return 0; \& } \& post_cmds += 2; \& } \& ENGINE_set_default(e, ENGINE_METHOD_ALL & ~ENGINE_METHOD_RAND); \& /* Success */ \& return 1; \& } .Ve .PP Note that \fIENGINE_ctrl_cmd_string()\fR accepts a boolean argument that can relax the semantics of the function \- if set non-zero it will only return failure if the \s-1ENGINE\s0 supported the given command name but failed while executing it, if the \s-1ENGINE\s0 doesn't support the command name it will simply return success without doing anything. In this case we assume the user is only supplying commands specific to the given \s-1ENGINE\s0 so we set this to \&\s-1FALSE\s0. .PP \&\fIDiscovering supported control commands\fR .PP It is possible to discover at run-time the names, numerical-ids, descriptions and input parameters of the control commands supported by an \s-1ENGINE\s0 using a structural reference. Note that some control commands are defined by OpenSSL itself and it will intercept and handle these control commands on behalf of the \&\s-1ENGINE\s0, ie. the \s-1ENGINE\s0's \fIctrl()\fR handler is not used for the control command. openssl/engine.h defines an index, \s-1ENGINE_CMD_BASE\s0, that all control commands implemented by ENGINEs should be numbered from. Any command value lower than this symbol is considered a \*(L"generic\*(R" command is handled directly by the OpenSSL core routines. .PP It is using these \*(L"core\*(R" control commands that one can discover the the control commands implemented by a given \s-1ENGINE\s0, specifically the commands; .PP .Vb 9 \& #define ENGINE_HAS_CTRL_FUNCTION 10 \& #define ENGINE_CTRL_GET_FIRST_CMD_TYPE 11 \& #define ENGINE_CTRL_GET_NEXT_CMD_TYPE 12 \& #define ENGINE_CTRL_GET_CMD_FROM_NAME 13 \& #define ENGINE_CTRL_GET_NAME_LEN_FROM_CMD 14 \& #define ENGINE_CTRL_GET_NAME_FROM_CMD 15 \& #define ENGINE_CTRL_GET_DESC_LEN_FROM_CMD 16 \& #define ENGINE_CTRL_GET_DESC_FROM_CMD 17 \& #define ENGINE_CTRL_GET_CMD_FLAGS 18 .Ve .PP Whilst these commands are automatically processed by the OpenSSL framework code, they use various properties exposed by each \s-1ENGINE\s0 to process these queries. An \s-1ENGINE\s0 has 3 properties it exposes that can affect how this behaves; it can supply a \fIctrl()\fR handler, it can specify \s-1ENGINE_FLAGS_MANUAL_CMD_CTRL\s0 in the \s-1ENGINE\s0's flags, and it can expose an array of control command descriptions. If an \s-1ENGINE\s0 specifies the \s-1ENGINE_FLAGS_MANUAL_CMD_CTRL\s0 flag, then it will simply pass all these \*(L"core\*(R" control commands directly to the \s-1ENGINE\s0's \fIctrl()\fR handler (and thus, it must have supplied one), so it is up to the \s-1ENGINE\s0 to reply to these \*(L"discovery\*(R" commands itself. If that flag is not set, then the OpenSSL framework code will work with the following rules; .PP .Vb 9 \& if no ctrl() handler supplied; \& ENGINE_HAS_CTRL_FUNCTION returns FALSE (zero), \& all other commands fail. \& if a ctrl() handler was supplied but no array of control commands; \& ENGINE_HAS_CTRL_FUNCTION returns TRUE, \& all other commands fail. \& if a ctrl() handler and array of control commands was supplied; \& ENGINE_HAS_CTRL_FUNCTION returns TRUE, \& all other commands proceed processing ... .Ve .PP If the \s-1ENGINE\s0's array of control commands is empty then all other commands will fail, otherwise; \s-1ENGINE_CTRL_GET_FIRST_CMD_TYPE\s0 returns the identifier of the first command supported by the \s-1ENGINE\s0, \s-1ENGINE_GET_NEXT_CMD_TYPE\s0 takes the identifier of a command supported by the \s-1ENGINE\s0 and returns the next command identifier or fails if there are no more, \s-1ENGINE_CMD_FROM_NAME\s0 takes a string name for a command and returns the corresponding identifier or fails if no such command name exists, and the remaining commands take a command identifier and return properties of the corresponding commands. All except \&\s-1ENGINE_CTRL_GET_FLAGS\s0 return the string length of a command name or description, or populate a supplied character buffer with a copy of the command name or description. \s-1ENGINE_CTRL_GET_FLAGS\s0 returns a bitwise-OR'd mask of the following possible values; .PP .Vb 4 \& #define ENGINE_CMD_FLAG_NUMERIC (unsigned int)0x0001 \& #define ENGINE_CMD_FLAG_STRING (unsigned int)0x0002 \& #define ENGINE_CMD_FLAG_NO_INPUT (unsigned int)0x0004 \& #define ENGINE_CMD_FLAG_INTERNAL (unsigned int)0x0008 .Ve .PP If the \s-1ENGINE_CMD_FLAG_INTERNAL\s0 flag is set, then any other flags are purely informational to the caller \- this flag will prevent the command being usable for any higher-level \s-1ENGINE\s0 functions such as \fIENGINE_ctrl_cmd_string()\fR. \&\*(L"\s-1INTERNAL\s0\*(R" commands are not intended to be exposed to text-based configuration by applications, administrations, users, etc. These can support arbitrary operations via \fIENGINE_ctrl()\fR, including passing to and/or from the control commands data of any arbitrary type. These commands are supported in the discovery mechanisms simply to allow applications determinie if an \s-1ENGINE\s0 supports certain specific commands it might want to use (eg. application \*(L"foo\*(R" might query various ENGINEs to see if they implement \*(L"\s-1FOO_GET_VENDOR_LOGO_GIF\s0\*(R" \- and \s-1ENGINE\s0 could therefore decide whether or not to support this \*(L"foo\*(R"\-specific extension). .SS "Future developments" .IX Subsection "Future developments" The \s-1ENGINE\s0 \s-1API\s0 and internal architecture is currently being reviewed. Slated for possible release in 0.9.8 is support for transparent loading of \*(L"dynamic\*(R" ENGINEs (built as self-contained shared-libraries). This would allow \s-1ENGINE\s0 implementations to be provided independently of OpenSSL libraries and/or OpenSSL-based applications, and would also remove any requirement for applications to explicitly use the \*(L"dynamic\*(R" \s-1ENGINE\s0 to bind to shared-library implementations. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIrsa\fR\|(3), \fIdsa\fR\|(3), \fIdh\fR\|(3), \fIrand\fR\|(3) 07070100048c1f000081a40000000000000000000000015135961100001bf0000000b600010002ffffffffffffffff0000003600000000root/usr/local/ssl/man/man3/DSA_generate_parameters.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DSA_generate_parameters 3" .TH DSA_generate_parameters 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DSA_generate_parameters \- generate DSA parameters .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& DSA *DSA_generate_parameters(int bits, unsigned char *seed, \& int seed_len, int *counter_ret, unsigned long *h_ret, \& void (*callback)(int, int, void *), void *cb_arg); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIDSA_generate_parameters()\fR generates primes p and q and a generator g for use in the \s-1DSA\s0. .PP \&\fBbits\fR is the length of the prime to be generated; the \s-1DSS\s0 allows a maximum of 1024 bits. .PP If \fBseed\fR is \fB\s-1NULL\s0\fR or \fBseed_len\fR < 20, the primes will be generated at random. Otherwise, the seed is used to generate them. If the given seed does not yield a prime q, a new random seed is chosen and placed at \fBseed\fR. .PP \&\fIDSA_generate_parameters()\fR places the iteration count in *\fBcounter_ret\fR and a counter used for finding a generator in *\fBh_ret\fR, unless these are \fB\s-1NULL\s0\fR. .PP A callback function may be used to provide feedback about the progress of the key generation. If \fBcallback\fR is not \fB\s-1NULL\s0\fR, it will be called as follows: .IP "\(bu" 4 When a candidate for q is generated, \fBcallback(0, m++, cb_arg)\fR is called (m is 0 for the first candidate). .IP "\(bu" 4 When a candidate for q has passed a test by trial division, \&\fBcallback(1, \-1, cb_arg)\fR is called. While a candidate for q is tested by Miller-Rabin primality tests, \&\fBcallback(1, i, cb_arg)\fR is called in the outer loop (once for each witness that confirms that the candidate may be prime); i is the loop counter (starting at 0). .IP "\(bu" 4 When a prime q has been found, \fBcallback(2, 0, cb_arg)\fR and \&\fBcallback(3, 0, cb_arg)\fR are called. .IP "\(bu" 4 Before a candidate for p (other than the first) is generated and tested, \&\fBcallback(0, counter, cb_arg)\fR is called. .IP "\(bu" 4 When a candidate for p has passed the test by trial division, \&\fBcallback(1, \-1, cb_arg)\fR is called. While it is tested by the Miller-Rabin primality test, \&\fBcallback(1, i, cb_arg)\fR is called in the outer loop (once for each witness that confirms that the candidate may be prime). i is the loop counter (starting at 0). .IP "\(bu" 4 When p has been found, \fBcallback(2, 1, cb_arg)\fR is called. .IP "\(bu" 4 When the generator has been found, \fBcallback(3, 1, cb_arg)\fR is called. .SH "RETURN VALUE" .IX Header "RETURN VALUE" \&\fIDSA_generate_parameters()\fR returns a pointer to the \s-1DSA\s0 structure, or \&\fB\s-1NULL\s0\fR if the parameter generation fails. The error codes can be obtained by \fIERR_get_error\fR\|(3). .SH "BUGS" .IX Header "BUGS" Seed lengths > 20 are not supported. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdsa\fR\|(3), \fIERR_get_error\fR\|(3), \fIrand\fR\|(3), \&\fIDSA_free\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDSA_generate_parameters()\fR appeared in SSLeay 0.8. The \fBcb_arg\fR argument was added in SSLeay 0.9.0. In versions up to OpenSSL 0.9.4, \fBcallback(1, ...)\fR was called in the inner loop of the Miller-Rabin test whenever it reached the squaring step (the parameters to \fBcallback\fR did not reveal how many witnesses had been tested); since OpenSSL 0.9.5, \fBcallback(1, ...)\fR is called as in \fIBN_is_prime\fR\|(3), i.e. once for each witness. 07070100048c06000081a40000000000000000000000015135960f00001ef8000000b600010002ffffffffffffffff0000002a00000000root/usr/local/ssl/man/man3/CMS_encrypt.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CMS_encrypt 3" .TH CMS_encrypt 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& CMS_encrypt \- create a CMS envelopedData structure .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& CMS_ContentInfo *CMS_encrypt(STACK_OF(X509) *certs, BIO *in, const EVP_CIPHER *cipher, unsigned int flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fICMS_encrypt()\fR creates and returns a \s-1CMS\s0 EnvelopedData structure. \fBcerts\fR is a list of recipient certificates. \fBin\fR is the content to be encrypted. \&\fBcipher\fR is the symmetric cipher to use. \fBflags\fR is an optional set of flags. .SH "NOTES" .IX Header "NOTES" Only certificates carrying \s-1RSA\s0 keys are supported so the recipient certificates supplied to this function must all contain \s-1RSA\s0 public keys, though they do not have to be signed using the \s-1RSA\s0 algorithm. .PP \&\fIEVP_des_ede3_cbc()\fR (triple \s-1DES\s0) is the algorithm of choice for S/MIME use because most clients will support it. .PP The algorithm passed in the \fBcipher\fR parameter must support \s-1ASN1\s0 encoding of its parameters. .PP Many browsers implement a \*(L"sign and encrypt\*(R" option which is simply an S/MIME envelopedData containing an S/MIME signed message. This can be readily produced by storing the S/MIME signed message in a memory \s-1BIO\s0 and passing it to \&\fICMS_encrypt()\fR. .PP The following flags can be passed in the \fBflags\fR parameter. .PP If the \fB\s-1CMS_TEXT\s0\fR flag is set \s-1MIME\s0 headers for type \fBtext/plain\fR are prepended to the data. .PP Normally the supplied content is translated into \s-1MIME\s0 canonical format (as required by the S/MIME specifications) if \fB\s-1CMS_BINARY\s0\fR is set no translation occurs. This option should be used if the supplied data is in binary format otherwise the translation will corrupt it. If \fB\s-1CMS_BINARY\s0\fR is set then \&\fB\s-1CMS_TEXT\s0\fR is ignored. .PP OpenSSL will by default identify recipient certificates using issuer name and serial number. If \fB\s-1CMS_USE_KEYID\s0\fR is set it will use the subject key identifier value instead. An error occurs if all recipient certificates do not have a subject key identifier extension. .PP If the \fB\s-1CMS_STREAM\s0\fR flag is set a partial \fBCMS_ContentInfo\fR structure is returned suitable for streaming I/O: no data is read from the \s-1BIO\s0 \fBin\fR. .PP If the \fB\s-1CMS_PARTIAL\s0\fR flag is set a partial \fBCMS_ContentInfo\fR structure is returned to which additional recipients and attributes can be added before finalization. .PP The data being encrypted is included in the CMS_ContentInfo structure, unless \&\fB\s-1CMS_DETACHED\s0\fR is set in which case it is omitted. This is rarely used in practice and is not supported by \fISMIME_write_CMS()\fR. .SH "NOTES" .IX Header "NOTES" If the flag \fB\s-1CMS_STREAM\s0\fR is set the returned \fBCMS_ContentInfo\fR structure is \&\fBnot\fR complete and outputting its contents via a function that does not properly finalize the \fBCMS_ContentInfo\fR structure will give unpredictable results. .PP Several functions including \fISMIME_write_CMS()\fR, \fIi2d_CMS_bio_stream()\fR, \&\fIPEM_write_bio_CMS_stream()\fR finalize the structure. Alternatively finalization can be performed by obtaining the streaming \s-1ASN1\s0 \fB\s-1BIO\s0\fR directly using \&\fIBIO_new_CMS()\fR. .PP The recipients specified in \fBcerts\fR use a \s-1CMS\s0 KeyTransRecipientInfo info structure. KEKRecipientInfo is also supported using the flag \fB\s-1CMS_PARTIAL\s0\fR and \fICMS_add0_recipient_key()\fR. .PP The parameter \fBcerts\fR may be \s-1NULL\s0 if \fB\s-1CMS_PARTIAL\s0\fR is set and recipients added later using \fICMS_add1_recipient_cert()\fR or \fICMS_add0_recipient_key()\fR. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fICMS_encrypt()\fR returns either a CMS_ContentInfo structure or \s-1NULL\s0 if an error occurred. The error can be obtained from \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fICMS_decrypt\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fICMS_decrypt()\fR was added to OpenSSL 0.9.8 The \fB\s-1CMS_STREAM\s0\fR flag was first supported in OpenSSL 1.0.0. 07070100048cb5000081a400000000000000000000000151359624000014b2000000b600010002ffffffffffffffff0000002900000000root/usr/local/ssl/man/man3/SSL_set_fd.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_set_fd 3" .TH SSL_set_fd 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_set_fd \- connect the SSL object with a file descriptor .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_set_fd(SSL *ssl, int fd); \& int SSL_set_rfd(SSL *ssl, int fd); \& int SSL_set_wfd(SSL *ssl, int fd); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_set_fd()\fR sets the file descriptor \fBfd\fR as the input/output facility for the \s-1TLS/SSL\s0 (encrypted) side of \fBssl\fR. \fBfd\fR will typically be the socket file descriptor of a network connection. .PP When performing the operation, a \fBsocket \s-1BIO\s0\fR is automatically created to interface between the \fBssl\fR and \fBfd\fR. The \s-1BIO\s0 and hence the \s-1SSL\s0 engine inherit the behaviour of \fBfd\fR. If \fBfd\fR is non-blocking, the \fBssl\fR will also have non-blocking behaviour. .PP If there was already a \s-1BIO\s0 connected to \fBssl\fR, \fIBIO_free()\fR will be called (for both the reading and writing side, if different). .PP \&\fISSL_set_rfd()\fR and \fISSL_set_wfd()\fR perform the respective action, but only for the read channel or the write channel, which can be set independently. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following return values can occur: .IP "0" 4 The operation failed. Check the error stack to find out why. .IP "1" 4 .IX Item "1" The operation succeeded. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fISSL_get_fd\fR\|(3), \fISSL_set_bio\fR\|(3), \&\fISSL_connect\fR\|(3), \fISSL_accept\fR\|(3), \&\fISSL_shutdown\fR\|(3), \fIssl\fR\|(3) , \fIbio\fR\|(3) 07070100048bd9000081a40000000000000000000000015135960b0000353e000000b600010002ffffffffffffffff0000003200000000root/usr/local/ssl/man/man3/ASN1_generate_nconf.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "ASN1_generate_nconf 3" .TH ASN1_generate_nconf 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" ASN1_generate_nconf, ASN1_generate_v3 \- ASN1 generation functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& ASN1_TYPE *ASN1_generate_nconf(char *str, CONF *nconf); \& ASN1_TYPE *ASN1_generate_v3(char *str, X509V3_CTX *cnf); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions generate the \s-1ASN1\s0 encoding of a string in an \fB\s-1ASN1_TYPE\s0\fR structure. .PP \&\fBstr\fR contains the string to encode \fBnconf\fR or \fBcnf\fR contains the optional configuration information where additional strings will be read from. \fBnconf\fR will typically come from a config file wherease \fBcnf\fR is obtained from an \fBX509V3_CTX\fR structure which will typically be used by X509 v3 certificate extension functions. \fBcnf\fR or \fBnconf\fR can be set to \fB\s-1NULL\s0\fR if no additional configuration will be used. .SH "GENERATION STRING FORMAT" .IX Header "GENERATION STRING FORMAT" The actual data encoded is determined by the string \fBstr\fR and the configuration information. The general format of the string is: .IP "\fB[modifier,]type[:value]\fR" 2 .IX Item "[modifier,]type[:value]" .PP That is zero or more comma separated modifiers followed by a type followed by an optional colon and a value. The formats of \fBtype\fR, \&\fBvalue\fR and \fBmodifier\fR are explained below. .SS "\s-1SUPPORTED\s0 \s-1TYPES\s0" .IX Subsection "SUPPORTED TYPES" The supported types are listed below. Unless otherwise specified only the \fB\s-1ASCII\s0\fR format is permissible. .IP "\fB\s-1BOOLEAN\s0\fR, \fB\s-1BOOL\s0\fR" 2 .IX Item "BOOLEAN, BOOL" This encodes a boolean type. The \fBvalue\fR string is mandatory and should be \fB\s-1TRUE\s0\fR or \fB\s-1FALSE\s0\fR. Additionally \fB\s-1TRUE\s0\fR, \fBtrue\fR, \fBY\fR, \&\fBy\fR, \fB\s-1YES\s0\fR, \fByes\fR, \fB\s-1FALSE\s0\fR, \fBfalse\fR, \fBN\fR, \fBn\fR, \fB\s-1NO\s0\fR and \fBno\fR are acceptable. .IP "\fB\s-1NULL\s0\fR" 2 .IX Item "NULL" Encode the \fB\s-1NULL\s0\fR type, the \fBvalue\fR string must not be present. .IP "\fB\s-1INTEGER\s0\fR, \fB\s-1INT\s0\fR" 2 .IX Item "INTEGER, INT" Encodes an \s-1ASN1\s0 \fB\s-1INTEGER\s0\fR type. The \fBvalue\fR string represents the value of the integer, it can be preceeded by a minus sign and is normally interpreted as a decimal value unless the prefix \fB0x\fR is included. .IP "\fB\s-1ENUMERATED\s0\fR, \fB\s-1ENUM\s0\fR" 2 .IX Item "ENUMERATED, ENUM" Encodes the \s-1ASN1\s0 \fB\s-1ENUMERATED\s0\fR type, it is otherwise identical to \&\fB\s-1INTEGER\s0\fR. .IP "\fB\s-1OBJECT\s0\fR, \fB\s-1OID\s0\fR" 2 .IX Item "OBJECT, OID" Encodes an \s-1ASN1\s0 \fB\s-1OBJECT\s0 \s-1IDENTIFIER\s0\fR, the \fBvalue\fR string can be a short name, a long name or numerical format. .IP "\fB\s-1UTCTIME\s0\fR, \fB\s-1UTC\s0\fR" 2 .IX Item "UTCTIME, UTC" Encodes an \s-1ASN1\s0 \fBUTCTime\fR structure, the value should be in the format \fB\s-1YYMMDDHHMMSSZ\s0\fR. .IP "\fB\s-1GENERALIZEDTIME\s0\fR, \fB\s-1GENTIME\s0\fR" 2 .IX Item "GENERALIZEDTIME, GENTIME" Encodes an \s-1ASN1\s0 \fBGeneralizedTime\fR structure, the value should be in the format \fB\s-1YYYYMMDDHHMMSSZ\s0\fR. .IP "\fB\s-1OCTETSTRING\s0\fR, \fB\s-1OCT\s0\fR" 2 .IX Item "OCTETSTRING, OCT" Encodes an \s-1ASN1\s0 \fB\s-1OCTET\s0 \s-1STRING\s0\fR. \fBvalue\fR represents the contents of this structure, the format strings \fB\s-1ASCII\s0\fR and \fB\s-1HEX\s0\fR can be used to specify the format of \fBvalue\fR. .IP "\fB\s-1BITSTRING\s0\fR, \fB\s-1BITSTR\s0\fR" 2 .IX Item "BITSTRING, BITSTR" Encodes an \s-1ASN1\s0 \fB\s-1BIT\s0 \s-1STRING\s0\fR. \fBvalue\fR represents the contents of this structure, the format strings \fB\s-1ASCII\s0\fR, \fB\s-1HEX\s0\fR and \fB\s-1BITLIST\s0\fR can be used to specify the format of \fBvalue\fR. .Sp If the format is anything other than \fB\s-1BITLIST\s0\fR the number of unused bits is set to zero. .IP "\fB\s-1UNIVERSALSTRING\s0\fR, \fB\s-1UNIV\s0\fR, \fB\s-1IA5\s0\fR, \fB\s-1IA5STRING\s0\fR, \fB\s-1UTF8\s0\fR, \fBUTF8String\fR, \fB\s-1BMP\s0\fR, \fB\s-1BMPSTRING\s0\fR, \fB\s-1VISIBLESTRING\s0\fR, \fB\s-1VISIBLE\s0\fR, \fB\s-1PRINTABLESTRING\s0\fR, \fB\s-1PRINTABLE\s0\fR, \fBT61\fR, \fBT61STRING\fR, \fB\s-1TELETEXSTRING\s0\fR, \fBGeneralString\fR, \fB\s-1NUMERICSTRING\s0\fR, \fB\s-1NUMERIC\s0\fR" 2 .IX Item "UNIVERSALSTRING, UNIV, IA5, IA5STRING, UTF8, UTF8String, BMP, BMPSTRING, VISIBLESTRING, VISIBLE, PRINTABLESTRING, PRINTABLE, T61, T61STRING, TELETEXSTRING, GeneralString, NUMERICSTRING, NUMERIC" These encode the corresponding string types. \fBvalue\fR represents the contents of this structure. The format can be \fB\s-1ASCII\s0\fR or \fB\s-1UTF8\s0\fR. .IP "\fB\s-1SEQUENCE\s0\fR, \fB\s-1SEQ\s0\fR, \fB\s-1SET\s0\fR" 2 .IX Item "SEQUENCE, SEQ, SET" Formats the result as an \s-1ASN1\s0 \fB\s-1SEQUENCE\s0\fR or \fB\s-1SET\s0\fR type. \fBvalue\fR should be a section name which will contain the contents. The field names in the section are ignored and the values are in the generated string format. If \fBvalue\fR is absent then an empty \s-1SEQUENCE\s0 will be encoded. .SS "\s-1MODIFIERS\s0" .IX Subsection "MODIFIERS" Modifiers affect the following structure, they can be used to add \s-1EXPLICIT\s0 or \s-1IMPLICIT\s0 tagging, add wrappers or to change the string format of the final type and value. The supported formats are documented below. .IP "\fB\s-1EXPLICIT\s0\fR, \fB\s-1EXP\s0\fR" 2 .IX Item "EXPLICIT, EXP" Add an explicit tag to the following structure. This string should be followed by a colon and the tag value to use as a decimal value. .Sp By following the number with \fBU\fR, \fBA\fR, \fBP\fR or \fBC\fR \s-1UNIVERSAL\s0, \&\s-1APPLICATION\s0, \s-1PRIVATE\s0 or \s-1CONTEXT\s0 \s-1SPECIFIC\s0 tagging can be used, the default is \s-1CONTEXT\s0 \s-1SPECIFIC\s0. .IP "\fB\s-1IMPLICIT\s0\fR, \fB\s-1IMP\s0\fR" 2 .IX Item "IMPLICIT, IMP" This is the same as \fB\s-1EXPLICIT\s0\fR except \s-1IMPLICIT\s0 tagging is used instead. .IP "\fB\s-1OCTWRAP\s0\fR, \fB\s-1SEQWRAP\s0\fR, \fB\s-1SETWRAP\s0\fR, \fB\s-1BITWRAP\s0\fR" 2 .IX Item "OCTWRAP, SEQWRAP, SETWRAP, BITWRAP" The following structure is surrounded by an \s-1OCTET\s0 \s-1STRING\s0, a \s-1SEQUENCE\s0, a \s-1SET\s0 or a \s-1BIT\s0 \s-1STRING\s0 respectively. For a \s-1BIT\s0 \s-1STRING\s0 the number of unused bits is set to zero. .IP "\fB\s-1FORMAT\s0\fR" 2 .IX Item "FORMAT" This specifies the format of the ultimate value. It should be followed by a colon and one of the strings \fB\s-1ASCII\s0\fR, \fB\s-1UTF8\s0\fR, \fB\s-1HEX\s0\fR or \fB\s-1BITLIST\s0\fR. .Sp If no format specifier is included then \fB\s-1ASCII\s0\fR is used. If \fB\s-1UTF8\s0\fR is specified then the value string must be a valid \fB\s-1UTF8\s0\fR string. For \fB\s-1HEX\s0\fR the output must be a set of hex digits. \fB\s-1BITLIST\s0\fR (which is only valid for a \s-1BIT\s0 \&\s-1STRING\s0) is a comma separated list of the indices of the set bits, all other bits are zero. .SH "EXAMPLES" .IX Header "EXAMPLES" A simple IA5String: .PP .Vb 1 \& IA5STRING:Hello World .Ve .PP An IA5String explicitly tagged: .PP .Vb 1 \& EXPLICIT:0,IA5STRING:Hello World .Ve .PP An IA5String explicitly tagged using \s-1APPLICATION\s0 tagging: .PP .Vb 1 \& EXPLICIT:0A,IA5STRING:Hello World .Ve .PP A \s-1BITSTRING\s0 with bits 1 and 5 set and all others zero: .PP .Vb 1 \& FORMAT:BITLIST,BITSTRING:1,5 .Ve .PP A more complex example using a config file to produce a \&\s-1SEQUENCE\s0 consiting of a \s-1BOOL\s0 an \s-1OID\s0 and a UTF8String: .PP .Vb 1 \& asn1 = SEQUENCE:seq_section \& \& [seq_section] \& \& field1 = BOOLEAN:TRUE \& field2 = OID:commonName \& field3 = UTF8:Third field .Ve .PP This example produces an RSAPrivateKey structure, this is the key contained in the file client.pem in all OpenSSL distributions (note: the field names such as 'coeff' are ignored and are present just for clarity): .PP .Vb 3 \& asn1=SEQUENCE:private_key \& [private_key] \& version=INTEGER:0 \& \& n=INTEGER:0xBB6FE79432CC6EA2D8F970675A5A87BFBE1AFF0BE63E879F2AFFB93644\e \& D4D2C6D000430DEC66ABF47829E74B8C5108623A1C0EE8BE217B3AD8D36D5EB4FCA1D9 \& \& e=INTEGER:0x010001 \& \& d=INTEGER:0x6F05EAD2F27FFAEC84BEC360C4B928FD5F3A9865D0FCAAD291E2A52F4A\e \& F810DC6373278C006A0ABBA27DC8C63BF97F7E666E27C5284D7D3B1FFFE16B7A87B51D \& \& p=INTEGER:0xF3929B9435608F8A22C208D86795271D54EBDFB09DDEF539AB083DA912\e \& D4BD57 \& \& q=INTEGER:0xC50016F89DFF2561347ED1186A46E150E28BF2D0F539A1594BBD7FE467\e \& 46EC4F \& \& exp1=INTEGER:0x9E7D4326C924AFC1DEA40B45650134966D6F9DFA3A7F9D698CD4ABEA\e \& 9C0A39B9 \& \& exp2=INTEGER:0xBA84003BB95355AFB7C50DF140C60513D0BA51D637272E355E397779\e \& E7B2458F \& \& coeff=INTEGER:0x30B9E4F2AFA5AC679F920FC83F1F2DF1BAF1779CF989447FABC2F5\e \& 628657053A .Ve .PP This example is the corresponding public key in a SubjectPublicKeyInfo structure: .PP .Vb 2 \& # Start with a SEQUENCE \& asn1=SEQUENCE:pubkeyinfo \& \& # pubkeyinfo contains an algorithm identifier and the public key wrapped \& # in a BIT STRING \& [pubkeyinfo] \& algorithm=SEQUENCE:rsa_alg \& pubkey=BITWRAP,SEQUENCE:rsapubkey \& \& # algorithm ID for RSA is just an OID and a NULL \& [rsa_alg] \& algorithm=OID:rsaEncryption \& parameter=NULL \& \& # Actual public key: modulus and exponent \& [rsapubkey] \& n=INTEGER:0xBB6FE79432CC6EA2D8F970675A5A87BFBE1AFF0BE63E879F2AFFB93644\e \& D4D2C6D000430DEC66ABF47829E74B8C5108623A1C0EE8BE217B3AD8D36D5EB4FCA1D9 \& \& e=INTEGER:0x010001 .Ve .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIASN1_generate_nconf()\fR and \fIASN1_generate_v3()\fR return the encoded data as an \fB\s-1ASN1_TYPE\s0\fR structure or \fB\s-1NULL\s0\fR if an error occurred. .PP The error codes that can be obtained by \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIASN1_generate_nconf()\fR and \fIASN1_generate_v3()\fR were added to OpenSSL 0.9.8 07070100048c44000081a40000000000000000000000015135961500001ea7000000b600010002ffffffffffffffff0000002b00000000root/usr/local/ssl/man/man3/EVP_SignInit.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "EVP_SignInit 3" .TH EVP_SignInit 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" EVP_SignInit, EVP_SignUpdate, EVP_SignFinal \- EVP signing functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int EVP_SignInit_ex(EVP_MD_CTX *ctx, const EVP_MD *type, ENGINE *impl); \& int EVP_SignUpdate(EVP_MD_CTX *ctx, const void *d, unsigned int cnt); \& int EVP_SignFinal(EVP_MD_CTX *ctx,unsigned char *sig,unsigned int *s, EVP_PKEY *pkey); \& \& void EVP_SignInit(EVP_MD_CTX *ctx, const EVP_MD *type); \& \& int EVP_PKEY_size(EVP_PKEY *pkey); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The \s-1EVP\s0 signature routines are a high level interface to digital signatures. .PP \&\fIEVP_SignInit_ex()\fR sets up signing context \fBctx\fR to use digest \&\fBtype\fR from \s-1ENGINE\s0 \fBimpl\fR. \fBctx\fR must be initialized with \&\fIEVP_MD_CTX_init()\fR before calling this function. .PP \&\fIEVP_SignUpdate()\fR hashes \fBcnt\fR bytes of data at \fBd\fR into the signature context \fBctx\fR. This function can be called several times on the same \fBctx\fR to include additional data. .PP \&\fIEVP_SignFinal()\fR signs the data in \fBctx\fR using the private key \fBpkey\fR and places the signature in \fBsig\fR. The number of bytes of data written (i.e. the length of the signature) will be written to the integer at \fBs\fR, at most EVP_PKEY_size(pkey) bytes will be written. .PP \&\fIEVP_SignInit()\fR initializes a signing context \fBctx\fR to use the default implementation of digest \fBtype\fR. .PP \&\fIEVP_PKEY_size()\fR returns the maximum size of a signature in bytes. The actual signature returned by \fIEVP_SignFinal()\fR may be smaller. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIEVP_SignInit_ex()\fR, \fIEVP_SignUpdate()\fR and \fIEVP_SignFinal()\fR return 1 for success and 0 for failure. .PP \&\fIEVP_PKEY_size()\fR returns the maximum size of a signature in bytes. .PP The error codes can be obtained by \fIERR_get_error\fR\|(3). .SH "NOTES" .IX Header "NOTES" The \fB\s-1EVP\s0\fR interface to digital signatures should almost always be used in preference to the low level interfaces. This is because the code then becomes transparent to the algorithm used and much more flexible. .PP Due to the link between message digests and public key algorithms the correct digest algorithm must be used with the correct public key type. A list of algorithms and associated public key algorithms appears in \&\fIEVP_DigestInit\fR\|(3). .PP When signing with \s-1DSA\s0 private keys the random number generator must be seeded or the operation will fail. The random number generator does not need to be seeded for \s-1RSA\s0 signatures. .PP The call to \fIEVP_SignFinal()\fR internally finalizes a copy of the digest context. This means that calls to \fIEVP_SignUpdate()\fR and \fIEVP_SignFinal()\fR can be called later to digest and sign additional data. .PP Since only a copy of the digest context is ever finalized the context must be cleaned up after use by calling \fIEVP_MD_CTX_cleanup()\fR or a memory leak will occur. .SH "BUGS" .IX Header "BUGS" Older versions of this documentation wrongly stated that calls to \&\fIEVP_SignUpdate()\fR could not be made after calling \fIEVP_SignFinal()\fR. .PP Since the private key is passed in the call to \fIEVP_SignFinal()\fR any error relating to the private key (for example an unsuitable key and digest combination) will not be indicated until after potentially large amounts of data have been passed through \fIEVP_SignUpdate()\fR. .PP It is not possible to change the signing parameters using these function. .PP The previous two bugs are fixed in the newer EVP_SignDigest*() function. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIEVP_VerifyInit\fR\|(3), \&\fIEVP_DigestInit\fR\|(3), \fIerr\fR\|(3), \&\fIevp\fR\|(3), \fIhmac\fR\|(3), \fImd2\fR\|(3), \&\fImd5\fR\|(3), \fImdc2\fR\|(3), \fIripemd\fR\|(3), \&\fIsha\fR\|(3), \fIdgst\fR\|(1) .SH "HISTORY" .IX Header "HISTORY" \&\fIEVP_SignInit()\fR, \fIEVP_SignUpdate()\fR and \fIEVP_SignFinal()\fR are available in all versions of SSLeay and OpenSSL. .PP \&\fIEVP_SignInit_ex()\fR was added in OpenSSL 0.9.7. 07070100048bf5000081a40000000000000000000000015135960e00001e64000000b600010002ffffffffffffffff0000002800000000root/usr/local/ssl/man/man3/BN_bn2bin.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BN_bn2bin 3" .TH BN_bn2bin 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BN_bn2bin, BN_bin2bn, BN_bn2hex, BN_bn2dec, BN_hex2bn, BN_dec2bn, BN_print, BN_print_fp, BN_bn2mpi, BN_mpi2bn \- format conversions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int BN_bn2bin(const BIGNUM *a, unsigned char *to); \& BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret); \& \& char *BN_bn2hex(const BIGNUM *a); \& char *BN_bn2dec(const BIGNUM *a); \& int BN_hex2bn(BIGNUM **a, const char *str); \& int BN_dec2bn(BIGNUM **a, const char *str); \& \& int BN_print(BIO *fp, const BIGNUM *a); \& int BN_print_fp(FILE *fp, const BIGNUM *a); \& \& int BN_bn2mpi(const BIGNUM *a, unsigned char *to); \& BIGNUM *BN_mpi2bn(unsigned char *s, int len, BIGNUM *ret); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIBN_bn2bin()\fR converts the absolute value of \fBa\fR into big-endian form and stores it at \fBto\fR. \fBto\fR must point to BN_num_bytes(\fBa\fR) bytes of memory. .PP \&\fIBN_bin2bn()\fR converts the positive integer in big-endian form of length \&\fBlen\fR at \fBs\fR into a \fB\s-1BIGNUM\s0\fR and places it in \fBret\fR. If \fBret\fR is \&\s-1NULL\s0, a new \fB\s-1BIGNUM\s0\fR is created. .PP \&\fIBN_bn2hex()\fR and \fIBN_bn2dec()\fR return printable strings containing the hexadecimal and decimal encoding of \fBa\fR respectively. For negative numbers, the string is prefaced with a leading '\-'. The string must be freed later using \fIOPENSSL_free()\fR. .PP \&\fIBN_hex2bn()\fR converts the string \fBstr\fR containing a hexadecimal number to a \fB\s-1BIGNUM\s0\fR and stores it in **\fBbn\fR. If *\fBbn\fR is \s-1NULL\s0, a new \&\fB\s-1BIGNUM\s0\fR is created. If \fBbn\fR is \s-1NULL\s0, it only computes the number's length in hexadecimal digits. If the string starts with '\-', the number is negative. \fIBN_dec2bn()\fR is the same using the decimal system. .PP \&\fIBN_print()\fR and \fIBN_print_fp()\fR write the hexadecimal encoding of \fBa\fR, with a leading '\-' for negative numbers, to the \fB\s-1BIO\s0\fR or \fB\s-1FILE\s0\fR \&\fBfp\fR. .PP \&\fIBN_bn2mpi()\fR and \fIBN_mpi2bn()\fR convert \fB\s-1BIGNUM\s0\fRs from and to a format that consists of the number's length in bytes represented as a 4\-byte big-endian number, and the number itself in big-endian format, where the most significant bit signals a negative number (the representation of numbers with the \s-1MSB\s0 set is prefixed with null byte). .PP \&\fIBN_bn2mpi()\fR stores the representation of \fBa\fR at \fBto\fR, where \fBto\fR must be large enough to hold the result. The size can be determined by calling BN_bn2mpi(\fBa\fR, \s-1NULL\s0). .PP \&\fIBN_mpi2bn()\fR converts the \fBlen\fR bytes long representation at \fBs\fR to a \fB\s-1BIGNUM\s0\fR and stores it at \fBret\fR, or in a newly allocated \fB\s-1BIGNUM\s0\fR if \fBret\fR is \s-1NULL\s0. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIBN_bn2bin()\fR returns the length of the big-endian number placed at \fBto\fR. \&\fIBN_bin2bn()\fR returns the \fB\s-1BIGNUM\s0\fR, \s-1NULL\s0 on error. .PP \&\fIBN_bn2hex()\fR and \fIBN_bn2dec()\fR return a null-terminated string, or \s-1NULL\s0 on error. \fIBN_hex2bn()\fR and \fIBN_dec2bn()\fR return the number's length in hexadecimal or decimal digits, and 0 on error. .PP \&\fIBN_print_fp()\fR and \fIBN_print()\fR return 1 on success, 0 on write errors. .PP \&\fIBN_bn2mpi()\fR returns the length of the representation. \fIBN_mpi2bn()\fR returns the \fB\s-1BIGNUM\s0\fR, and \s-1NULL\s0 on error. .PP The error codes can be obtained by \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIbn\fR\|(3), \fIERR_get_error\fR\|(3), \fIBN_zero\fR\|(3), \&\fIASN1_INTEGER_to_BN\fR\|(3), \&\fIBN_num_bytes\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIBN_bn2bin()\fR, \fIBN_bin2bn()\fR, \fIBN_print_fp()\fR and \fIBN_print()\fR are available in all versions of SSLeay and OpenSSL. .PP \&\fIBN_bn2hex()\fR, \fIBN_bn2dec()\fR, \fIBN_hex2bn()\fR, \fIBN_dec2bn()\fR, \fIBN_bn2mpi()\fR and \&\fIBN_mpi2bn()\fR were added in SSLeay 0.9.0. 07070100048ce3000081a40000000000000000000000015135961c0000132c000000b600010002ffffffffffffffff0000003100000000root/usr/local/ssl/man/man3/i2d_CMS_bio_stream.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "i2d_CMS_bio_stream 3" .TH i2d_CMS_bio_stream 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& i2d_CMS_bio_stream \- output CMS_ContentInfo structure in BER format. .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int i2d_CMS_bio_stream(BIO *out, CMS_ContentInfo *cms, BIO *data, int flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIi2d_CMS_bio_stream()\fR outputs a CMS_ContentInfo structure in \s-1BER\s0 format. .PP It is otherwise identical to the function \fISMIME_write_CMS()\fR. .SH "NOTES" .IX Header "NOTES" This function is effectively a version of the \fIi2d_CMS_bio()\fR supporting streaming. .SH "BUGS" .IX Header "BUGS" The prefix \*(L"i2d\*(R" is arguably wrong because the function outputs \s-1BER\s0 format. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIi2d_CMS_bio_stream()\fR returns 1 for success or 0 for failure. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fICMS_sign\fR\|(3), \&\fICMS_verify\fR\|(3), \fICMS_encrypt\fR\|(3) \&\fICMS_decrypt\fR\|(3), \&\fISMIME_write_CMS\fR\|(3), \&\fIPEM_write_bio_CMS_stream\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIi2d_CMS_bio_stream()\fR was added to OpenSSL 1.0.0 07070100048c17000081a400000000000000000000000151359611000012a6000000b600010002ffffffffffffffff0000003200000000root/usr/local/ssl/man/man3/DH_get_ex_new_index.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DH_get_ex_new_index 3" .TH DH_get_ex_new_index 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DH_get_ex_new_index, DH_set_ex_data, DH_get_ex_data \- add application specific data to DH structures .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int DH_get_ex_new_index(long argl, void *argp, \& CRYPTO_EX_new *new_func, \& CRYPTO_EX_dup *dup_func, \& CRYPTO_EX_free *free_func); \& \& int DH_set_ex_data(DH *d, int idx, void *arg); \& \& char *DH_get_ex_data(DH *d, int idx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions handle application specific data in \s-1DH\s0 structures. Their usage is identical to that of \&\fIRSA_get_ex_new_index()\fR, \fIRSA_set_ex_data()\fR and \fIRSA_get_ex_data()\fR as described in \fIRSA_get_ex_new_index\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIRSA_get_ex_new_index\fR\|(3), \fIdh\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDH_get_ex_new_index()\fR, \fIDH_set_ex_data()\fR and \fIDH_get_ex_data()\fR are available since OpenSSL 0.9.5. 07070100048c7f000081a40000000000000000000000015135961f00001cce000000b600010002ffffffffffffffff0000003900000000root/usr/local/ssl/man/man3/SSL_CTX_set_client_CA_list.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_set_client_CA_list 3" .TH SSL_CTX_set_client_CA_list 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_set_client_CA_list, SSL_set_client_CA_list, SSL_CTX_add_client_CA, SSL_add_client_CA \- set list of CAs sent to the client when requesting a client certificate .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, STACK_OF(X509_NAME) *list); \& void SSL_set_client_CA_list(SSL *s, STACK_OF(X509_NAME) *list); \& int SSL_CTX_add_client_CA(SSL_CTX *ctx, X509 *cacert); \& int SSL_add_client_CA(SSL *ssl, X509 *cacert); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_set_client_CA_list()\fR sets the \fBlist\fR of CAs sent to the client when requesting a client certificate for \fBctx\fR. .PP \&\fISSL_set_client_CA_list()\fR sets the \fBlist\fR of CAs sent to the client when requesting a client certificate for the chosen \fBssl\fR, overriding the setting valid for \fBssl\fR's \s-1SSL_CTX\s0 object. .PP \&\fISSL_CTX_add_client_CA()\fR adds the \s-1CA\s0 name extracted from \fBcacert\fR to the list of CAs sent to the client when requesting a client certificate for \&\fBctx\fR. .PP \&\fISSL_add_client_CA()\fR adds the \s-1CA\s0 name extracted from \fBcacert\fR to the list of CAs sent to the client when requesting a client certificate for the chosen \fBssl\fR, overriding the setting valid for \fBssl\fR's \s-1SSL_CTX\s0 object. .SH "NOTES" .IX Header "NOTES" When a \s-1TLS/SSL\s0 server requests a client certificate (see \&\fB\f(BISSL_CTX_set_verify_options()\fB\fR), it sends a list of CAs, for which it will accept certificates, to the client. .PP This list must explicitly be set using \fISSL_CTX_set_client_CA_list()\fR for \&\fBctx\fR and \fISSL_set_client_CA_list()\fR for the specific \fBssl\fR. The list specified overrides the previous setting. The CAs listed do not become trusted (\fBlist\fR only contains the names, not the complete certificates); use \&\fISSL_CTX_load_verify_locations\fR\|(3) to additionally load them for verification. .PP If the list of acceptable CAs is compiled in a file, the \&\fISSL_load_client_CA_file\fR\|(3) function can be used to help importing the necessary data. .PP \&\fISSL_CTX_add_client_CA()\fR and \fISSL_add_client_CA()\fR can be used to add additional items the list of client CAs. If no list was specified before using \&\fISSL_CTX_set_client_CA_list()\fR or \fISSL_set_client_CA_list()\fR, a new client \&\s-1CA\s0 list for \fBctx\fR or \fBssl\fR (as appropriate) is opened. .PP These functions are only useful for \s-1TLS/SSL\s0 servers. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_CTX_set_client_CA_list()\fR and \fISSL_set_client_CA_list()\fR do not return diagnostic information. .PP \&\fISSL_CTX_add_client_CA()\fR and \fISSL_add_client_CA()\fR have the following return values: .IP "1." 4 The operation succeeded. .IP "2." 4 A failure while manipulating the \s-1STACK_OF\s0(X509_NAME) object occurred or the X509_NAME could not be extracted from \fBcacert\fR. Check the error stack to find out the reason. .SH "EXAMPLES" .IX Header "EXAMPLES" Scan all certificates in \fBCAfile\fR and list them as acceptable CAs: .PP .Vb 1 \& SSL_CTX_set_client_CA_list(ctx,SSL_load_client_CA_file(CAfile)); .Ve .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \&\fISSL_get_client_CA_list\fR\|(3), \&\fISSL_load_client_CA_file\fR\|(3), \&\fISSL_CTX_load_verify_locations\fR\|(3) .SH "POD ERRORS" .IX Header "POD ERRORS" Hey! \fBThe above document had some coding errors, which are explained below:\fR .IP "Around line 73:" 4 .IX Item "Around line 73:" You have '=item 0' instead of the expected '=item 2' 07070100048cbc000081a40000000000000000000000015135962500002035000000b600010002ffffffffffffffff0000002800000000root/usr/local/ssl/man/man3/SSL_write.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_write 3" .TH SSL_write 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_write \- write bytes to a TLS/SSL connection. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_write(SSL *ssl, const void *buf, int num); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_write()\fR writes \fBnum\fR bytes from the buffer \fBbuf\fR into the specified \&\fBssl\fR connection. .SH "NOTES" .IX Header "NOTES" If necessary, \fISSL_write()\fR will negotiate a \s-1TLS/SSL\s0 session, if not already explicitly performed by \fISSL_connect\fR\|(3) or \&\fISSL_accept\fR\|(3). If the peer requests a re-negotiation, it will be performed transparently during the \fISSL_write()\fR operation. The behaviour of \fISSL_write()\fR depends on the underlying \s-1BIO\s0. .PP For the transparent negotiation to succeed, the \fBssl\fR must have been initialized to client or server mode. This is being done by calling \&\fISSL_set_connect_state\fR\|(3) or \fISSL_set_accept_state()\fR before the first call to an \fISSL_read\fR\|(3) or \fISSL_write()\fR function. .PP If the underlying \s-1BIO\s0 is \fBblocking\fR, \fISSL_write()\fR will only return, once the write operation has been finished or an error occurred, except when a renegotiation take place, in which case a \s-1SSL_ERROR_WANT_READ\s0 may occur. This behaviour can be controlled with the \s-1SSL_MODE_AUTO_RETRY\s0 flag of the \&\fISSL_CTX_set_mode\fR\|(3) call. .PP If the underlying \s-1BIO\s0 is \fBnon-blocking\fR, \fISSL_write()\fR will also return, when the underlying \s-1BIO\s0 could not satisfy the needs of \fISSL_write()\fR to continue the operation. In this case a call to \&\fISSL_get_error\fR\|(3) with the return value of \fISSL_write()\fR will yield \fB\s-1SSL_ERROR_WANT_READ\s0\fR or \&\fB\s-1SSL_ERROR_WANT_WRITE\s0\fR. As at any time a re-negotiation is possible, a call to \fISSL_write()\fR can also cause read operations! The calling process then must repeat the call after taking appropriate action to satisfy the needs of \fISSL_write()\fR. The action depends on the underlying \s-1BIO\s0. When using a non-blocking socket, nothing is to be done, but \fIselect()\fR can be used to check for the required condition. When using a buffering \s-1BIO\s0, like a \s-1BIO\s0 pair, data must be written into or retrieved out of the \s-1BIO\s0 before being able to continue. .PP \&\fISSL_write()\fR will only return with success, when the complete contents of \fBbuf\fR of length \fBnum\fR has been written. This default behaviour can be changed with the \s-1SSL_MODE_ENABLE_PARTIAL_WRITE\s0 option of \&\fISSL_CTX_set_mode\fR\|(3). When this flag is set, \&\fISSL_write()\fR will also return with success, when a partial write has been successfully completed. In this case the \fISSL_write()\fR operation is considered completed. The bytes are sent and a new \fISSL_write()\fR operation with a new buffer (with the already sent bytes removed) must be started. A partial write is performed with the size of a message block, which is 16kB for SSLv3/TLSv1. .SH "WARNING" .IX Header "WARNING" When an \fISSL_write()\fR operation has to be repeated because of \&\fB\s-1SSL_ERROR_WANT_READ\s0\fR or \fB\s-1SSL_ERROR_WANT_WRITE\s0\fR, it must be repeated with the same arguments. .PP When calling \fISSL_write()\fR with num=0 bytes to be sent the behaviour is undefined. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following return values can occur: .IP ">0" 4 .IX Item ">0" The write operation was successful, the return value is the number of bytes actually written to the \s-1TLS/SSL\s0 connection. .IP "0" 4 The write operation was not successful. Probably the underlying connection was closed. Call \fISSL_get_error()\fR with the return value \fBret\fR to find out, whether an error occurred or the connection was shut down cleanly (\s-1SSL_ERROR_ZERO_RETURN\s0). .Sp SSLv2 (deprecated) does not support a shutdown alert protocol, so it can only be detected, whether the underlying connection was closed. It cannot be checked, why the closure happened. .IP "<0" 4 .IX Item "<0" The write operation was not successful, because either an error occurred or action must be taken by the calling process. Call \fISSL_get_error()\fR with the return value \fBret\fR to find out the reason. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fISSL_get_error\fR\|(3), \fISSL_read\fR\|(3), \&\fISSL_CTX_set_mode\fR\|(3), \fISSL_CTX_new\fR\|(3), \&\fISSL_connect\fR\|(3), \fISSL_accept\fR\|(3) \&\fISSL_set_connect_state\fR\|(3), \&\fIssl\fR\|(3), \fIbio\fR\|(3) 07070100048c21000081a400000000000000000000000151359611000012ec000000b600010002ffffffffffffffff0000002600000000root/usr/local/ssl/man/man3/DSA_new.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DSA_new 3" .TH DSA_new 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DSA_new, DSA_free \- allocate and free DSA objects .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& DSA* DSA_new(void); \& \& void DSA_free(DSA *dsa); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIDSA_new()\fR allocates and initializes a \fB\s-1DSA\s0\fR structure. It is equivalent to calling DSA_new_method(\s-1NULL\s0). .PP \&\fIDSA_free()\fR frees the \fB\s-1DSA\s0\fR structure and its components. The values are erased before the memory is returned to the system. .SH "RETURN VALUES" .IX Header "RETURN VALUES" If the allocation fails, \fIDSA_new()\fR returns \fB\s-1NULL\s0\fR and sets an error code that can be obtained by \&\fIERR_get_error\fR\|(3). Otherwise it returns a pointer to the newly allocated structure. .PP \&\fIDSA_free()\fR returns no value. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdsa\fR\|(3), \fIERR_get_error\fR\|(3), \&\fIDSA_generate_parameters\fR\|(3), \&\fIDSA_generate_key\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDSA_new()\fR and \fIDSA_free()\fR are available in all versions of SSLeay and OpenSSL. 07070100048c1b000081a400000000000000000000000151359611000012ba000000b600010002ffffffffffffffff0000002a00000000root/usr/local/ssl/man/man3/DSA_SIG_new.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DSA_SIG_new 3" .TH DSA_SIG_new 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DSA_SIG_new, DSA_SIG_free \- allocate and free DSA signature objects .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& DSA_SIG *DSA_SIG_new(void); \& \& void DSA_SIG_free(DSA_SIG *a); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIDSA_SIG_new()\fR allocates and initializes a \fB\s-1DSA_SIG\s0\fR structure. .PP \&\fIDSA_SIG_free()\fR frees the \fB\s-1DSA_SIG\s0\fR structure and its components. The values are erased before the memory is returned to the system. .SH "RETURN VALUES" .IX Header "RETURN VALUES" If the allocation fails, \fIDSA_SIG_new()\fR returns \fB\s-1NULL\s0\fR and sets an error code that can be obtained by \&\fIERR_get_error\fR\|(3). Otherwise it returns a pointer to the newly allocated structure. .PP \&\fIDSA_SIG_free()\fR returns no value. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdsa\fR\|(3), \fIERR_get_error\fR\|(3), \&\fIDSA_do_sign\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDSA_SIG_new()\fR and \fIDSA_SIG_free()\fR were added in OpenSSL 0.9.3. 07070100048ccb000081a40000000000000000000000015135961a00002bd5000000b600010002ffffffffffffffff0000002100000000root/usr/local/ssl/man/man3/bn.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "bn 3" .TH bn 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" bn \- multiprecision integer arithmetics .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& BIGNUM *BN_new(void); \& void BN_free(BIGNUM *a); \& void BN_init(BIGNUM *); \& void BN_clear(BIGNUM *a); \& void BN_clear_free(BIGNUM *a); \& \& BN_CTX *BN_CTX_new(void); \& void BN_CTX_init(BN_CTX *c); \& void BN_CTX_free(BN_CTX *c); \& \& BIGNUM *BN_copy(BIGNUM *a, const BIGNUM *b); \& BIGNUM *BN_dup(const BIGNUM *a); \& \& BIGNUM *BN_swap(BIGNUM *a, BIGNUM *b); \& \& int BN_num_bytes(const BIGNUM *a); \& int BN_num_bits(const BIGNUM *a); \& int BN_num_bits_word(BN_ULONG w); \& \& void BN_set_negative(BIGNUM *a, int n); \& int BN_is_negative(const BIGNUM *a); \& \& int BN_add(BIGNUM *r, const BIGNUM *a, const BIGNUM *b); \& int BN_sub(BIGNUM *r, const BIGNUM *a, const BIGNUM *b); \& int BN_mul(BIGNUM *r, BIGNUM *a, BIGNUM *b, BN_CTX *ctx); \& int BN_sqr(BIGNUM *r, BIGNUM *a, BN_CTX *ctx); \& int BN_div(BIGNUM *dv, BIGNUM *rem, const BIGNUM *a, const BIGNUM *d, \& BN_CTX *ctx); \& int BN_mod(BIGNUM *rem, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx); \& int BN_nnmod(BIGNUM *rem, const BIGNUM *a, const BIGNUM *m, BN_CTX *ctx); \& int BN_mod_add(BIGNUM *ret, BIGNUM *a, BIGNUM *b, const BIGNUM *m, \& BN_CTX *ctx); \& int BN_mod_sub(BIGNUM *ret, BIGNUM *a, BIGNUM *b, const BIGNUM *m, \& BN_CTX *ctx); \& int BN_mod_mul(BIGNUM *ret, BIGNUM *a, BIGNUM *b, const BIGNUM *m, \& BN_CTX *ctx); \& int BN_mod_sqr(BIGNUM *ret, BIGNUM *a, const BIGNUM *m, BN_CTX *ctx); \& int BN_exp(BIGNUM *r, BIGNUM *a, BIGNUM *p, BN_CTX *ctx); \& int BN_mod_exp(BIGNUM *r, BIGNUM *a, const BIGNUM *p, \& const BIGNUM *m, BN_CTX *ctx); \& int BN_gcd(BIGNUM *r, BIGNUM *a, BIGNUM *b, BN_CTX *ctx); \& \& int BN_add_word(BIGNUM *a, BN_ULONG w); \& int BN_sub_word(BIGNUM *a, BN_ULONG w); \& int BN_mul_word(BIGNUM *a, BN_ULONG w); \& BN_ULONG BN_div_word(BIGNUM *a, BN_ULONG w); \& BN_ULONG BN_mod_word(const BIGNUM *a, BN_ULONG w); \& \& int BN_cmp(BIGNUM *a, BIGNUM *b); \& int BN_ucmp(BIGNUM *a, BIGNUM *b); \& int BN_is_zero(BIGNUM *a); \& int BN_is_one(BIGNUM *a); \& int BN_is_word(BIGNUM *a, BN_ULONG w); \& int BN_is_odd(BIGNUM *a); \& \& int BN_zero(BIGNUM *a); \& int BN_one(BIGNUM *a); \& const BIGNUM *BN_value_one(void); \& int BN_set_word(BIGNUM *a, unsigned long w); \& unsigned long BN_get_word(BIGNUM *a); \& \& int BN_rand(BIGNUM *rnd, int bits, int top, int bottom); \& int BN_pseudo_rand(BIGNUM *rnd, int bits, int top, int bottom); \& int BN_rand_range(BIGNUM *rnd, BIGNUM *range); \& int BN_pseudo_rand_range(BIGNUM *rnd, BIGNUM *range); \& \& BIGNUM *BN_generate_prime(BIGNUM *ret, int bits,int safe, BIGNUM *add, \& BIGNUM *rem, void (*callback)(int, int, void *), void *cb_arg); \& int BN_is_prime(const BIGNUM *p, int nchecks, \& void (*callback)(int, int, void *), BN_CTX *ctx, void *cb_arg); \& \& int BN_set_bit(BIGNUM *a, int n); \& int BN_clear_bit(BIGNUM *a, int n); \& int BN_is_bit_set(const BIGNUM *a, int n); \& int BN_mask_bits(BIGNUM *a, int n); \& int BN_lshift(BIGNUM *r, const BIGNUM *a, int n); \& int BN_lshift1(BIGNUM *r, BIGNUM *a); \& int BN_rshift(BIGNUM *r, BIGNUM *a, int n); \& int BN_rshift1(BIGNUM *r, BIGNUM *a); \& \& int BN_bn2bin(const BIGNUM *a, unsigned char *to); \& BIGNUM *BN_bin2bn(const unsigned char *s, int len, BIGNUM *ret); \& char *BN_bn2hex(const BIGNUM *a); \& char *BN_bn2dec(const BIGNUM *a); \& int BN_hex2bn(BIGNUM **a, const char *str); \& int BN_dec2bn(BIGNUM **a, const char *str); \& int BN_print(BIO *fp, const BIGNUM *a); \& int BN_print_fp(FILE *fp, const BIGNUM *a); \& int BN_bn2mpi(const BIGNUM *a, unsigned char *to); \& BIGNUM *BN_mpi2bn(unsigned char *s, int len, BIGNUM *ret); \& \& BIGNUM *BN_mod_inverse(BIGNUM *r, BIGNUM *a, const BIGNUM *n, \& BN_CTX *ctx); \& \& BN_RECP_CTX *BN_RECP_CTX_new(void); \& void BN_RECP_CTX_init(BN_RECP_CTX *recp); \& void BN_RECP_CTX_free(BN_RECP_CTX *recp); \& int BN_RECP_CTX_set(BN_RECP_CTX *recp, const BIGNUM *m, BN_CTX *ctx); \& int BN_mod_mul_reciprocal(BIGNUM *r, BIGNUM *a, BIGNUM *b, \& BN_RECP_CTX *recp, BN_CTX *ctx); \& \& BN_MONT_CTX *BN_MONT_CTX_new(void); \& void BN_MONT_CTX_init(BN_MONT_CTX *ctx); \& void BN_MONT_CTX_free(BN_MONT_CTX *mont); \& int BN_MONT_CTX_set(BN_MONT_CTX *mont, const BIGNUM *m, BN_CTX *ctx); \& BN_MONT_CTX *BN_MONT_CTX_copy(BN_MONT_CTX *to, BN_MONT_CTX *from); \& int BN_mod_mul_montgomery(BIGNUM *r, BIGNUM *a, BIGNUM *b, \& BN_MONT_CTX *mont, BN_CTX *ctx); \& int BN_from_montgomery(BIGNUM *r, BIGNUM *a, BN_MONT_CTX *mont, \& BN_CTX *ctx); \& int BN_to_montgomery(BIGNUM *r, BIGNUM *a, BN_MONT_CTX *mont, \& BN_CTX *ctx); \& \& BN_BLINDING *BN_BLINDING_new(const BIGNUM *A, const BIGNUM *Ai, \& BIGNUM *mod); \& void BN_BLINDING_free(BN_BLINDING *b); \& int BN_BLINDING_update(BN_BLINDING *b,BN_CTX *ctx); \& int BN_BLINDING_convert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx); \& int BN_BLINDING_invert(BIGNUM *n, BN_BLINDING *b, BN_CTX *ctx); \& int BN_BLINDING_convert_ex(BIGNUM *n, BIGNUM *r, BN_BLINDING *b, \& BN_CTX *ctx); \& int BN_BLINDING_invert_ex(BIGNUM *n,const BIGNUM *r,BN_BLINDING *b, \& BN_CTX *ctx); \& unsigned long BN_BLINDING_get_thread_id(const BN_BLINDING *); \& void BN_BLINDING_set_thread_id(BN_BLINDING *, unsigned long); \& unsigned long BN_BLINDING_get_flags(const BN_BLINDING *); \& void BN_BLINDING_set_flags(BN_BLINDING *, unsigned long); \& BN_BLINDING *BN_BLINDING_create_param(BN_BLINDING *b, \& const BIGNUM *e, BIGNUM *m, BN_CTX *ctx, \& int (*bn_mod_exp)(BIGNUM *r, const BIGNUM *a, const BIGNUM *p, \& const BIGNUM *m, BN_CTX *ctx, BN_MONT_CTX *m_ctx), \& BN_MONT_CTX *m_ctx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This library performs arithmetic operations on integers of arbitrary size. It was written for use in public key cryptography, such as \s-1RSA\s0 and Diffie-Hellman. .PP It uses dynamic memory allocation for storing its data structures. That means that there is no limit on the size of the numbers manipulated by these functions, but return values must always be checked in case a memory allocation error has occurred. .PP The basic object in this library is a \fB\s-1BIGNUM\s0\fR. It is used to hold a single large integer. This type should be considered opaque and fields should not be modified or accessed directly. .PP The creation of \fB\s-1BIGNUM\s0\fR objects is described in \fIBN_new\fR\|(3); \&\fIBN_add\fR\|(3) describes most of the arithmetic operations. Comparison is described in \fIBN_cmp\fR\|(3); \fIBN_zero\fR\|(3) describes certain assignments, \fIBN_rand\fR\|(3) the generation of random numbers, \fIBN_generate_prime\fR\|(3) deals with prime numbers and \fIBN_set_bit\fR\|(3) with bit operations. The conversion of \fB\s-1BIGNUM\s0\fRs to external formats is described in \fIBN_bn2bin\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIbn_internal\fR\|(3), \&\fIdh\fR\|(3), \fIerr\fR\|(3), \fIrand\fR\|(3), \fIrsa\fR\|(3), \&\fIBN_new\fR\|(3), \fIBN_CTX_new\fR\|(3), \&\fIBN_copy\fR\|(3), \fIBN_swap\fR\|(3), \fIBN_num_bytes\fR\|(3), \&\fIBN_add\fR\|(3), \fIBN_add_word\fR\|(3), \&\fIBN_cmp\fR\|(3), \fIBN_zero\fR\|(3), \fIBN_rand\fR\|(3), \&\fIBN_generate_prime\fR\|(3), \fIBN_set_bit\fR\|(3), \&\fIBN_bn2bin\fR\|(3), \fIBN_mod_inverse\fR\|(3), \&\fIBN_mod_mul_reciprocal\fR\|(3), \&\fIBN_mod_mul_montgomery\fR\|(3), \&\fIBN_BLINDING_new\fR\|(3) 07070100048cd9000081a40000000000000000000000015135961b00001250000000b600010002ffffffffffffffff0000002b00000000root/usr/local/ssl/man/man3/d2i_X509_REQ.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "d2i_X509_REQ 3" .TH d2i_X509_REQ 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" d2i_X509_REQ, i2d_X509_REQ, d2i_X509_REQ_bio, d2i_X509_REQ_fp, i2d_X509_REQ_bio, i2d_X509_REQ_fp \- PKCS#10 certificate request functions. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& X509_REQ *d2i_X509_REQ(X509_REQ **a, const unsigned char **pp, long length); \& int i2d_X509_REQ(X509_REQ *a, unsigned char **pp); \& \& X509_REQ *d2i_X509_REQ_bio(BIO *bp, X509_REQ **x); \& X509_REQ *d2i_X509_REQ_fp(FILE *fp, X509_REQ **x); \& \& int i2d_X509_REQ_bio(BIO *bp, X509_REQ *x); \& int i2d_X509_REQ_fp(FILE *fp, X509_REQ *x); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions decode and encode a PKCS#10 certificate request. .PP Othewise these behave in a similar way to \fId2i_X509()\fR and \fIi2d_X509()\fR described in the \fId2i_X509\fR\|(3) manual page. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fId2i_X509\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1TBA\s0 07070100048c7a000081a40000000000000000000000015135961f00001f1f000000b600010002ffffffffffffffff0000003600000000root/usr/local/ssl/man/man3/SSL_CTX_sess_set_get_cb.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_sess_set_get_cb 3" .TH SSL_CTX_sess_set_get_cb 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_sess_set_new_cb, SSL_CTX_sess_set_remove_cb, SSL_CTX_sess_set_get_cb, SSL_CTX_sess_get_new_cb, SSL_CTX_sess_get_remove_cb, SSL_CTX_sess_get_get_cb \- provide callback functions for server side external session caching .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& void SSL_CTX_sess_set_new_cb(SSL_CTX *ctx, \& int (*new_session_cb)(SSL *, SSL_SESSION *)); \& void SSL_CTX_sess_set_remove_cb(SSL_CTX *ctx, \& void (*remove_session_cb)(SSL_CTX *ctx, SSL_SESSION *)); \& void SSL_CTX_sess_set_get_cb(SSL_CTX *ctx, \& SSL_SESSION (*get_session_cb)(SSL *, unsigned char *, int, int *)); \& \& int (*SSL_CTX_sess_get_new_cb(SSL_CTX *ctx))(struct ssl_st *ssl, SSL_SESSION *sess); \& void (*SSL_CTX_sess_get_remove_cb(SSL_CTX *ctx))(struct ssl_ctx_st *ctx, SSL_SESSION *sess); \& SSL_SESSION *(*SSL_CTX_sess_get_get_cb(SSL_CTX *ctx))(struct ssl_st *ssl, unsigned char *data, int len, int *copy); \& \& int (*new_session_cb)(struct ssl_st *ssl, SSL_SESSION *sess); \& void (*remove_session_cb)(struct ssl_ctx_st *ctx, SSL_SESSION *sess); \& SSL_SESSION *(*get_session_cb)(struct ssl_st *ssl, unsigned char *data, \& int len, int *copy); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_sess_set_new_cb()\fR sets the callback function, which is automatically called whenever a new session was negotiated. .PP \&\fISSL_CTX_sess_set_remove_cb()\fR sets the callback function, which is automatically called whenever a session is removed by the \s-1SSL\s0 engine, because it is considered faulty or the session has become obsolete because of exceeding the timeout value. .PP \&\fISSL_CTX_sess_set_get_cb()\fR sets the callback function which is called, whenever a \s-1SSL/TLS\s0 client proposed to resume a session but the session could not be found in the internal session cache (see \&\fISSL_CTX_set_session_cache_mode\fR\|(3)). (\s-1SSL/TLS\s0 server only.) .PP \&\fISSL_CTX_sess_get_new_cb()\fR, \fISSL_CTX_sess_get_remove_cb()\fR, and \&\fISSL_CTX_sess_get_get_cb()\fR allow to retrieve the function pointers of the provided callback functions. If a callback function has not been set, the \s-1NULL\s0 pointer is returned. .SH "NOTES" .IX Header "NOTES" In order to allow external session caching, synchronization with the internal session cache is realized via callback functions. Inside these callback functions, session can be saved to disk or put into a database using the \&\fId2i_SSL_SESSION\fR\|(3) interface. .PP The \fInew_session_cb()\fR is called, whenever a new session has been negotiated and session caching is enabled (see \&\fISSL_CTX_set_session_cache_mode\fR\|(3)). The \fInew_session_cb()\fR is passed the \fBssl\fR connection and the ssl session \&\fBsess\fR. If the callback returns \fB0\fR, the session will be immediately removed again. .PP The \fIremove_session_cb()\fR is called, whenever the \s-1SSL\s0 engine removes a session from the internal cache. This happens when the session is removed because it is expired or when a connection was not shutdown cleanly. It also happens for all sessions in the internal session cache when \&\fISSL_CTX_free\fR\|(3) is called. The \fIremove_session_cb()\fR is passed the \fBctx\fR and the ssl session \fBsess\fR. It does not provide any feedback. .PP The \fIget_session_cb()\fR is only called on \s-1SSL/TLS\s0 servers with the session id proposed by the client. The \fIget_session_cb()\fR is always called, also when session caching was disabled. The \fIget_session_cb()\fR is passed the \&\fBssl\fR connection, the session id of length \fBlength\fR at the memory location \&\fBdata\fR. With the parameter \fBcopy\fR the callback can require the \&\s-1SSL\s0 engine to increment the reference count of the \s-1SSL_SESSION\s0 object, Normally the reference count is not incremented and therefore the session must not be explicitly freed with \&\fISSL_SESSION_free\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fId2i_SSL_SESSION\fR\|(3), \&\fISSL_CTX_set_session_cache_mode\fR\|(3), \&\fISSL_CTX_flush_sessions\fR\|(3), \&\fISSL_SESSION_free\fR\|(3), \&\fISSL_CTX_free\fR\|(3) 07070100048c28000081a40000000000000000000000015135961200001a71000000b600010002ffffffffffffffff0000002c00000000root/usr/local/ssl/man/man3/ERR_get_error.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "ERR_get_error 3" .TH ERR_get_error 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" ERR_get_error, ERR_peek_error, ERR_peek_last_error, ERR_get_error_line, ERR_peek_error_line, ERR_peek_last_error_line, ERR_get_error_line_data, ERR_peek_error_line_data, ERR_peek_last_error_line_data \- obtain error code and data .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& unsigned long ERR_get_error(void); \& unsigned long ERR_peek_error(void); \& unsigned long ERR_peek_last_error(void); \& \& unsigned long ERR_get_error_line(const char **file, int *line); \& unsigned long ERR_peek_error_line(const char **file, int *line); \& unsigned long ERR_peek_last_error_line(const char **file, int *line); \& \& unsigned long ERR_get_error_line_data(const char **file, int *line, \& const char **data, int *flags); \& unsigned long ERR_peek_error_line_data(const char **file, int *line, \& const char **data, int *flags); \& unsigned long ERR_peek_last_error_line_data(const char **file, int *line, \& const char **data, int *flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIERR_get_error()\fR returns the earliest error code from the thread's error queue and removes the entry. This function can be called repeatedly until there are no more error codes to return. .PP \&\fIERR_peek_error()\fR returns the earliest error code from the thread's error queue without modifying it. .PP \&\fIERR_peek_last_error()\fR returns the latest error code from the thread's error queue without modifying it. .PP See \s-1\fIERR_GET_LIB\s0\fR\|(3) for obtaining information about location and reason of the error, and \&\fIERR_error_string\fR\|(3) for human-readable error messages. .PP \&\fIERR_get_error_line()\fR, \fIERR_peek_error_line()\fR and \&\fIERR_peek_last_error_line()\fR are the same as the above, but they additionally store the file name and line number where the error occurred in *\fBfile\fR and *\fBline\fR, unless these are \fB\s-1NULL\s0\fR. .PP \&\fIERR_get_error_line_data()\fR, \fIERR_peek_error_line_data()\fR and \&\fIERR_get_last_error_line_data()\fR store additional data and flags associated with the error code in *\fBdata\fR and *\fBflags\fR, unless these are \fB\s-1NULL\s0\fR. *\fBdata\fR contains a string if *\fBflags\fR&\fB\s-1ERR_TXT_STRING\s0\fR. If it has been allocated by \fIOPENSSL_malloc()\fR, *\fBflags\fR&\fB\s-1ERR_TXT_MALLOCED\s0\fR is true. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The error code, or 0 if there is no error in the queue. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIerr\fR\|(3), \fIERR_error_string\fR\|(3), \&\s-1\fIERR_GET_LIB\s0\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIERR_get_error()\fR, \fIERR_peek_error()\fR, \fIERR_get_error_line()\fR and \&\fIERR_peek_error_line()\fR are available in all versions of SSLeay and OpenSSL. \fIERR_get_error_line_data()\fR and \fIERR_peek_error_line_data()\fR were added in SSLeay 0.9.0. \&\fIERR_peek_last_error()\fR, \fIERR_peek_last_error_line()\fR and \&\fIERR_peek_last_error_line_data()\fR were added in OpenSSL 0.9.7. 07070100048ca6000081a400000000000000000000000151359623000014fe000000b600010002ffffffffffffffff0000003700000000root/usr/local/ssl/man/man3/SSL_get_peer_certificate.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_get_peer_certificate 3" .TH SSL_get_peer_certificate 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_get_peer_certificate \- get the X509 certificate of the peer .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& X509 *SSL_get_peer_certificate(const SSL *ssl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_get_peer_certificate()\fR returns a pointer to the X509 certificate the peer presented. If the peer did not present a certificate, \s-1NULL\s0 is returned. .SH "NOTES" .IX Header "NOTES" Due to the protocol definition, a \s-1TLS/SSL\s0 server will always send a certificate, if present. A client will only send a certificate when explicitly requested to do so by the server (see \&\fISSL_CTX_set_verify\fR\|(3)). If an anonymous cipher is used, no certificates are sent. .PP That a certificate is returned does not indicate information about the verification state, use \fISSL_get_verify_result\fR\|(3) to check the verification state. .PP The reference count of the X509 object is incremented by one, so that it will not be destroyed when the session containing the peer certificate is freed. The X509 object must be explicitly freed using \fIX509_free()\fR. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following return values can occur: .IP "\s-1NULL\s0" 4 .IX Item "NULL" No certificate was presented by the peer or no connection was established. .IP "Pointer to an X509 certificate" 4 .IX Item "Pointer to an X509 certificate" The return value points to the certificate presented by the peer. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_get_verify_result\fR\|(3), \&\fISSL_CTX_set_verify\fR\|(3) 07070100048c4e000081a400000000000000000000000151359616000012f5000000b600010002ffffffffffffffff0000003900000000root/usr/local/ssl/man/man3/PEM_write_bio_PKCS7_stream.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "PEM_write_bio_PKCS7_stream 3" .TH PEM_write_bio_PKCS7_stream 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" PEM_write_bio_PKCS7_stream \- output PKCS7 structure in PEM format. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& #include \& #include \& \& int PEM_write_bio_PKCS7_stream(BIO *out, PKCS7 *p7, BIO *data, int flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIPEM_write_bio_PKCS7_stream()\fR outputs a \s-1PKCS7\s0 structure in \s-1PEM\s0 format. .PP It is otherwise identical to the function \fISMIME_write_PKCS7()\fR. .SH "NOTES" .IX Header "NOTES" This function is effectively a version of the \fIPEM_write_bio_PKCS7()\fR supporting streaming. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIPEM_write_bio_PKCS7_stream()\fR returns 1 for success or 0 for failure. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fIPKCS7_sign\fR\|(3), \&\fIPKCS7_verify\fR\|(3), \fIPKCS7_encrypt\fR\|(3) \&\fIPKCS7_decrypt\fR\|(3), \&\fISMIME_write_PKCS7\fR\|(3), \&\fIi2d_PKCS7_bio_stream\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIPEM_write_bio_PKCS7_stream()\fR was added to OpenSSL 1.0.0 07070100048cca000081a40000000000000000000000015135961900002387000000b600010002ffffffffffffffff0000002700000000root/usr/local/ssl/man/man3/blowfish.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "blowfish 3" .TH blowfish 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" blowfish, BF_set_key, BF_encrypt, BF_decrypt, BF_ecb_encrypt, BF_cbc_encrypt, BF_cfb64_encrypt, BF_ofb64_encrypt, BF_options \- Blowfish encryption .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& void BF_set_key(BF_KEY *key, int len, const unsigned char *data); \& \& void BF_ecb_encrypt(const unsigned char *in, unsigned char *out, \& BF_KEY *key, int enc); \& void BF_cbc_encrypt(const unsigned char *in, unsigned char *out, \& long length, BF_KEY *schedule, unsigned char *ivec, int enc); \& void BF_cfb64_encrypt(const unsigned char *in, unsigned char *out, \& long length, BF_KEY *schedule, unsigned char *ivec, int *num, \& int enc); \& void BF_ofb64_encrypt(const unsigned char *in, unsigned char *out, \& long length, BF_KEY *schedule, unsigned char *ivec, int *num); \& const char *BF_options(void); \& \& void BF_encrypt(BF_LONG *data,const BF_KEY *key); \& void BF_decrypt(BF_LONG *data,const BF_KEY *key); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This library implements the Blowfish cipher, which was invented and described by Counterpane (see http://www.counterpane.com/blowfish.html ). .PP Blowfish is a block cipher that operates on 64 bit (8 byte) blocks of data. It uses a variable size key, but typically, 128 bit (16 byte) keys are considered good for strong encryption. Blowfish can be used in the same modes as \s-1DES\s0 (see \fIdes_modes\fR\|(7)). Blowfish is currently one of the faster block ciphers. It is quite a bit faster than \s-1DES\s0, and much faster than \s-1IDEA\s0 or \s-1RC2\s0. .PP Blowfish consists of a key setup phase and the actual encryption or decryption phase. .PP \&\fIBF_set_key()\fR sets up the \fB\s-1BF_KEY\s0\fR \fBkey\fR using the \fBlen\fR bytes long key at \fBdata\fR. .PP \&\fIBF_ecb_encrypt()\fR is the basic Blowfish encryption and decryption function. It encrypts or decrypts the first 64 bits of \fBin\fR using the key \fBkey\fR, putting the result in \fBout\fR. \fBenc\fR decides if encryption (\fB\s-1BF_ENCRYPT\s0\fR) or decryption (\fB\s-1BF_DECRYPT\s0\fR) shall be performed. The vector pointed at by \&\fBin\fR and \fBout\fR must be 64 bits in length, no less. If they are larger, everything after the first 64 bits is ignored. .PP The mode functions \fIBF_cbc_encrypt()\fR, \fIBF_cfb64_encrypt()\fR and \fIBF_ofb64_encrypt()\fR all operate on variable length data. They all take an initialization vector \&\fBivec\fR which needs to be passed along into the next call of the same function for the same message. \fBivec\fR may be initialized with anything, but the recipient needs to know what it was initialized with, or it won't be able to decrypt. Some programs and protocols simplify this, like \s-1SSH\s0, where \&\fBivec\fR is simply initialized to zero. \&\fIBF_cbc_encrypt()\fR operates on data that is a multiple of 8 bytes long, while \&\fIBF_cfb64_encrypt()\fR and \fIBF_ofb64_encrypt()\fR are used to encrypt an variable number of bytes (the amount does not have to be an exact multiple of 8). The purpose of the latter two is to simulate stream ciphers, and therefore, they need the parameter \fBnum\fR, which is a pointer to an integer where the current offset in \fBivec\fR is stored between calls. This integer must be initialized to zero when \fBivec\fR is initialized. .PP \&\fIBF_cbc_encrypt()\fR is the Cipher Block Chaining function for Blowfish. It encrypts or decrypts the 64 bits chunks of \fBin\fR using the key \fBschedule\fR, putting the result in \fBout\fR. \fBenc\fR decides if encryption (\s-1BF_ENCRYPT\s0) or decryption (\s-1BF_DECRYPT\s0) shall be performed. \fBivec\fR must point at an 8 byte long initialization vector. .PP \&\fIBF_cfb64_encrypt()\fR is the \s-1CFB\s0 mode for Blowfish with 64 bit feedback. It encrypts or decrypts the bytes in \fBin\fR using the key \fBschedule\fR, putting the result in \fBout\fR. \fBenc\fR decides if encryption (\fB\s-1BF_ENCRYPT\s0\fR) or decryption (\fB\s-1BF_DECRYPT\s0\fR) shall be performed. \fBivec\fR must point at an 8 byte long initialization vector. \fBnum\fR must point at an integer which must be initially zero. .PP \&\fIBF_ofb64_encrypt()\fR is the \s-1OFB\s0 mode for Blowfish with 64 bit feedback. It uses the same parameters as \fIBF_cfb64_encrypt()\fR, which must be initialized the same way. .PP \&\fIBF_encrypt()\fR and \fIBF_decrypt()\fR are the lowest level functions for Blowfish encryption. They encrypt/decrypt the first 64 bits of the vector pointed by \&\fBdata\fR, using the key \fBkey\fR. These functions should not be used unless you implement 'modes' of Blowfish. The alternative is to use \fIBF_ecb_encrypt()\fR. If you still want to use these functions, you should be aware that they take each 32\-bit chunk in host-byte order, which is little-endian on little-endian platforms and big-endian on big-endian ones. .SH "RETURN VALUES" .IX Header "RETURN VALUES" None of the functions presented here return any value. .SH "NOTE" .IX Header "NOTE" Applications should use the higher level functions \&\fIEVP_EncryptInit\fR\|(3) etc. instead of calling the blowfish functions directly. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdes_modes\fR\|(7) .SH "HISTORY" .IX Header "HISTORY" The Blowfish functions are available in all versions of SSLeay and OpenSSL. 07070100048cef000081a4000000000000000000000001513596250000b60d000000b600010002ffffffffffffffff0000002200000000root/usr/local/ssl/man/man3/ssl.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "ssl 3" .TH ssl 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL \- OpenSSL SSL/TLS library .SH "SYNOPSIS" .IX Header "SYNOPSIS" .SH "DESCRIPTION" .IX Header "DESCRIPTION" The OpenSSL \fBssl\fR library implements the Secure Sockets Layer (\s-1SSL\s0 v2/v3) and Transport Layer Security (\s-1TLS\s0 v1) protocols. It provides a rich \s-1API\s0 which is documented here. .PP At first the library must be initialized; see \&\fISSL_library_init\fR\|(3). .PP Then an \fB\s-1SSL_CTX\s0\fR object is created as a framework to establish \&\s-1TLS/SSL\s0 enabled connections (see \fISSL_CTX_new\fR\|(3)). Various options regarding certificates, algorithms etc. can be set in this object. .PP When a network connection has been created, it can be assigned to an \&\fB\s-1SSL\s0\fR object. After the \fB\s-1SSL\s0\fR object has been created using \&\fISSL_new\fR\|(3), \fISSL_set_fd\fR\|(3) or \&\fISSL_set_bio\fR\|(3) can be used to associate the network connection with the object. .PP Then the \s-1TLS/SSL\s0 handshake is performed using \&\fISSL_accept\fR\|(3) or \fISSL_connect\fR\|(3) respectively. \&\fISSL_read\fR\|(3) and \fISSL_write\fR\|(3) are used to read and write data on the \s-1TLS/SSL\s0 connection. \&\fISSL_shutdown\fR\|(3) can be used to shut down the \&\s-1TLS/SSL\s0 connection. .SH "DATA STRUCTURES" .IX Header "DATA STRUCTURES" Currently the OpenSSL \fBssl\fR library functions deals with the following data structures: .IP "\fB\s-1SSL_METHOD\s0\fR (\s-1SSL\s0 Method)" 4 .IX Item "SSL_METHOD (SSL Method)" That's a dispatch structure describing the internal \fBssl\fR library methods/functions which implement the various protocol versions (SSLv1, SSLv2 and TLSv1). It's needed to create an \fB\s-1SSL_CTX\s0\fR. .IP "\fB\s-1SSL_CIPHER\s0\fR (\s-1SSL\s0 Cipher)" 4 .IX Item "SSL_CIPHER (SSL Cipher)" This structure holds the algorithm information for a particular cipher which are a core part of the \s-1SSL/TLS\s0 protocol. The available ciphers are configured on a \fB\s-1SSL_CTX\s0\fR basis and the actually used ones are then part of the \&\fB\s-1SSL_SESSION\s0\fR. .IP "\fB\s-1SSL_CTX\s0\fR (\s-1SSL\s0 Context)" 4 .IX Item "SSL_CTX (SSL Context)" That's the global context structure which is created by a server or client once per program life-time and which holds mainly default values for the \&\fB\s-1SSL\s0\fR structures which are later created for the connections. .IP "\fB\s-1SSL_SESSION\s0\fR (\s-1SSL\s0 Session)" 4 .IX Item "SSL_SESSION (SSL Session)" This is a structure containing the current \s-1TLS/SSL\s0 session details for a connection: \fB\s-1SSL_CIPHER\s0\fRs, client and server certificates, keys, etc. .IP "\fB\s-1SSL\s0\fR (\s-1SSL\s0 Connection)" 4 .IX Item "SSL (SSL Connection)" That's the main \s-1SSL/TLS\s0 structure which is created by a server or client per established connection. This actually is the core structure in the \s-1SSL\s0 \s-1API\s0. Under run-time the application usually deals with this structure which has links to mostly all other structures. .SH "HEADER FILES" .IX Header "HEADER FILES" Currently the OpenSSL \fBssl\fR library provides the following C header files containing the prototypes for the data structures and and functions: .IP "\fBssl.h\fR" 4 .IX Item "ssl.h" That's the common header file for the \s-1SSL/TLS\s0 \s-1API\s0. Include it into your program to make the \s-1API\s0 of the \fBssl\fR library available. It internally includes both more private \s-1SSL\s0 headers and headers from the \fBcrypto\fR library. Whenever you need hard-core details on the internals of the \s-1SSL\s0 \s-1API\s0, look inside this header file. .IP "\fBssl2.h\fR" 4 .IX Item "ssl2.h" That's the sub header file dealing with the SSLv2 protocol only. \&\fIUsually you don't have to include it explicitly because it's already included by ssl.h\fR. .IP "\fBssl3.h\fR" 4 .IX Item "ssl3.h" That's the sub header file dealing with the SSLv3 protocol only. \&\fIUsually you don't have to include it explicitly because it's already included by ssl.h\fR. .IP "\fBssl23.h\fR" 4 .IX Item "ssl23.h" That's the sub header file dealing with the combined use of the SSLv2 and SSLv3 protocols. \&\fIUsually you don't have to include it explicitly because it's already included by ssl.h\fR. .IP "\fBtls1.h\fR" 4 .IX Item "tls1.h" That's the sub header file dealing with the TLSv1 protocol only. \&\fIUsually you don't have to include it explicitly because it's already included by ssl.h\fR. .SH "API FUNCTIONS" .IX Header "API FUNCTIONS" Currently the OpenSSL \fBssl\fR library exports 214 \s-1API\s0 functions. They are documented in the following: .SS "\s-1DEALING\s0 \s-1WITH\s0 \s-1PROTOCOL\s0 \s-1METHODS\s0" .IX Subsection "DEALING WITH PROTOCOL METHODS" Here we document the various \s-1API\s0 functions which deal with the \s-1SSL/TLS\s0 protocol methods defined in \fB\s-1SSL_METHOD\s0\fR structures. .IP "const \s-1SSL_METHOD\s0 *\fBSSLv2_client_method\fR(void);" 4 .IX Item "const SSL_METHOD *SSLv2_client_method(void);" Constructor for the SSLv2 \s-1SSL_METHOD\s0 structure for a dedicated client. .IP "const \s-1SSL_METHOD\s0 *\fBSSLv2_server_method\fR(void);" 4 .IX Item "const SSL_METHOD *SSLv2_server_method(void);" Constructor for the SSLv2 \s-1SSL_METHOD\s0 structure for a dedicated server. .IP "const \s-1SSL_METHOD\s0 *\fBSSLv2_method\fR(void);" 4 .IX Item "const SSL_METHOD *SSLv2_method(void);" Constructor for the SSLv2 \s-1SSL_METHOD\s0 structure for combined client and server. .IP "const \s-1SSL_METHOD\s0 *\fBSSLv3_client_method\fR(void);" 4 .IX Item "const SSL_METHOD *SSLv3_client_method(void);" Constructor for the SSLv3 \s-1SSL_METHOD\s0 structure for a dedicated client. .IP "const \s-1SSL_METHOD\s0 *\fBSSLv3_server_method\fR(void);" 4 .IX Item "const SSL_METHOD *SSLv3_server_method(void);" Constructor for the SSLv3 \s-1SSL_METHOD\s0 structure for a dedicated server. .IP "const \s-1SSL_METHOD\s0 *\fBSSLv3_method\fR(void);" 4 .IX Item "const SSL_METHOD *SSLv3_method(void);" Constructor for the SSLv3 \s-1SSL_METHOD\s0 structure for combined client and server. .IP "const \s-1SSL_METHOD\s0 *\fBTLSv1_client_method\fR(void);" 4 .IX Item "const SSL_METHOD *TLSv1_client_method(void);" Constructor for the TLSv1 \s-1SSL_METHOD\s0 structure for a dedicated client. .IP "const \s-1SSL_METHOD\s0 *\fBTLSv1_server_method\fR(void);" 4 .IX Item "const SSL_METHOD *TLSv1_server_method(void);" Constructor for the TLSv1 \s-1SSL_METHOD\s0 structure for a dedicated server. .IP "const \s-1SSL_METHOD\s0 *\fBTLSv1_method\fR(void);" 4 .IX Item "const SSL_METHOD *TLSv1_method(void);" Constructor for the TLSv1 \s-1SSL_METHOD\s0 structure for combined client and server. .SS "\s-1DEALING\s0 \s-1WITH\s0 \s-1CIPHERS\s0" .IX Subsection "DEALING WITH CIPHERS" Here we document the various \s-1API\s0 functions which deal with the \s-1SSL/TLS\s0 ciphers defined in \fB\s-1SSL_CIPHER\s0\fR structures. .IP "char *\fBSSL_CIPHER_description\fR(\s-1SSL_CIPHER\s0 *cipher, char *buf, int len);" 4 .IX Item "char *SSL_CIPHER_description(SSL_CIPHER *cipher, char *buf, int len);" Write a string to \fIbuf\fR (with a maximum size of \fIlen\fR) containing a human readable description of \fIcipher\fR. Returns \fIbuf\fR. .IP "int \fBSSL_CIPHER_get_bits\fR(\s-1SSL_CIPHER\s0 *cipher, int *alg_bits);" 4 .IX Item "int SSL_CIPHER_get_bits(SSL_CIPHER *cipher, int *alg_bits);" Determine the number of bits in \fIcipher\fR. Because of export crippled ciphers there are two bits: The bits the algorithm supports in general (stored to \&\fIalg_bits\fR) and the bits which are actually used (the return value). .IP "const char *\fBSSL_CIPHER_get_name\fR(\s-1SSL_CIPHER\s0 *cipher);" 4 .IX Item "const char *SSL_CIPHER_get_name(SSL_CIPHER *cipher);" Return the internal name of \fIcipher\fR as a string. These are the various strings defined by the \fISSL2_TXT_xxx\fR, \fISSL3_TXT_xxx\fR and \fITLS1_TXT_xxx\fR definitions in the header files. .IP "char *\fBSSL_CIPHER_get_version\fR(\s-1SSL_CIPHER\s0 *cipher);" 4 .IX Item "char *SSL_CIPHER_get_version(SSL_CIPHER *cipher);" Returns a string like "\f(CW\*(C`TLSv1/SSLv3\*(C'\fR\*(L" or \*(R"\f(CW\*(C`SSLv2\*(C'\fR" which indicates the \&\s-1SSL/TLS\s0 protocol version to which \fIcipher\fR belongs (i.e. where it was defined in the specification the first time). .SS "\s-1DEALING\s0 \s-1WITH\s0 \s-1PROTOCOL\s0 \s-1CONTEXTS\s0" .IX Subsection "DEALING WITH PROTOCOL CONTEXTS" Here we document the various \s-1API\s0 functions which deal with the \s-1SSL/TLS\s0 protocol context defined in the \fB\s-1SSL_CTX\s0\fR structure. .IP "int \fBSSL_CTX_add_client_CA\fR(\s-1SSL_CTX\s0 *ctx, X509 *x);" 4 .IX Item "int SSL_CTX_add_client_CA(SSL_CTX *ctx, X509 *x);" .PD 0 .IP "long \fBSSL_CTX_add_extra_chain_cert\fR(\s-1SSL_CTX\s0 *ctx, X509 *x509);" 4 .IX Item "long SSL_CTX_add_extra_chain_cert(SSL_CTX *ctx, X509 *x509);" .IP "int \fBSSL_CTX_add_session\fR(\s-1SSL_CTX\s0 *ctx, \s-1SSL_SESSION\s0 *c);" 4 .IX Item "int SSL_CTX_add_session(SSL_CTX *ctx, SSL_SESSION *c);" .IP "int \fBSSL_CTX_check_private_key\fR(const \s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_check_private_key(const SSL_CTX *ctx);" .IP "long \fBSSL_CTX_ctrl\fR(\s-1SSL_CTX\s0 *ctx, int cmd, long larg, char *parg);" 4 .IX Item "long SSL_CTX_ctrl(SSL_CTX *ctx, int cmd, long larg, char *parg);" .IP "void \fBSSL_CTX_flush_sessions\fR(\s-1SSL_CTX\s0 *s, long t);" 4 .IX Item "void SSL_CTX_flush_sessions(SSL_CTX *s, long t);" .IP "void \fBSSL_CTX_free\fR(\s-1SSL_CTX\s0 *a);" 4 .IX Item "void SSL_CTX_free(SSL_CTX *a);" .IP "char *\fBSSL_CTX_get_app_data\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "char *SSL_CTX_get_app_data(SSL_CTX *ctx);" .IP "X509_STORE *\fBSSL_CTX_get_cert_store\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "X509_STORE *SSL_CTX_get_cert_store(SSL_CTX *ctx);" .IP "\s-1STACK\s0 *\fBSSL_CTX_get_client_CA_list\fR(const \s-1SSL_CTX\s0 *ctx);" 4 .IX Item "STACK *SSL_CTX_get_client_CA_list(const SSL_CTX *ctx);" .IP "int (*\fBSSL_CTX_get_client_cert_cb\fR(\s-1SSL_CTX\s0 *ctx))(\s-1SSL\s0 *ssl, X509 **x509, \s-1EVP_PKEY\s0 **pkey);" 4 .IX Item "int (*SSL_CTX_get_client_cert_cb(SSL_CTX *ctx))(SSL *ssl, X509 **x509, EVP_PKEY **pkey);" .IP "char *\fBSSL_CTX_get_ex_data\fR(const \s-1SSL_CTX\s0 *s, int idx);" 4 .IX Item "char *SSL_CTX_get_ex_data(const SSL_CTX *s, int idx);" .IP "int \fBSSL_CTX_get_ex_new_index\fR(long argl, char *argp, int (*new_func);(void), int (*dup_func)(void), void (*free_func)(void))" 4 .IX Item "int SSL_CTX_get_ex_new_index(long argl, char *argp, int (*new_func);(void), int (*dup_func)(void), void (*free_func)(void))" .IP "void (*\fBSSL_CTX_get_info_callback\fR(\s-1SSL_CTX\s0 *ctx))(\s-1SSL\s0 *ssl, int cb, int ret);" 4 .IX Item "void (*SSL_CTX_get_info_callback(SSL_CTX *ctx))(SSL *ssl, int cb, int ret);" .IP "int \fBSSL_CTX_get_quiet_shutdown\fR(const \s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_get_quiet_shutdown(const SSL_CTX *ctx);" .IP "int \fBSSL_CTX_get_session_cache_mode\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_get_session_cache_mode(SSL_CTX *ctx);" .IP "long \fBSSL_CTX_get_timeout\fR(const \s-1SSL_CTX\s0 *ctx);" 4 .IX Item "long SSL_CTX_get_timeout(const SSL_CTX *ctx);" .IP "int (*\fBSSL_CTX_get_verify_callback\fR(const \s-1SSL_CTX\s0 *ctx))(int ok, X509_STORE_CTX *ctx);" 4 .IX Item "int (*SSL_CTX_get_verify_callback(const SSL_CTX *ctx))(int ok, X509_STORE_CTX *ctx);" .IP "int \fBSSL_CTX_get_verify_mode\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_get_verify_mode(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_load_verify_locations\fR(\s-1SSL_CTX\s0 *ctx, char *CAfile, char *CApath);" 4 .IX Item "int SSL_CTX_load_verify_locations(SSL_CTX *ctx, char *CAfile, char *CApath);" .IP "long \fBSSL_CTX_need_tmp_RSA\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "long SSL_CTX_need_tmp_RSA(SSL_CTX *ctx);" .IP "\s-1SSL_CTX\s0 *\fBSSL_CTX_new\fR(const \s-1SSL_METHOD\s0 *meth);" 4 .IX Item "SSL_CTX *SSL_CTX_new(const SSL_METHOD *meth);" .IP "int \fBSSL_CTX_remove_session\fR(\s-1SSL_CTX\s0 *ctx, \s-1SSL_SESSION\s0 *c);" 4 .IX Item "int SSL_CTX_remove_session(SSL_CTX *ctx, SSL_SESSION *c);" .IP "int \fBSSL_CTX_sess_accept\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_accept(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_accept_good\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_accept_good(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_accept_renegotiate\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_accept_renegotiate(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_cache_full\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_cache_full(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_cb_hits\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_cb_hits(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_connect\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_connect(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_connect_good\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_connect_good(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_connect_renegotiate\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_connect_renegotiate(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_get_cache_size\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_get_cache_size(SSL_CTX *ctx);" .IP "\s-1SSL_SESSION\s0 *(*\fBSSL_CTX_sess_get_get_cb\fR(\s-1SSL_CTX\s0 *ctx))(\s-1SSL\s0 *ssl, unsigned char *data, int len, int *copy);" 4 .IX Item "SSL_SESSION *(*SSL_CTX_sess_get_get_cb(SSL_CTX *ctx))(SSL *ssl, unsigned char *data, int len, int *copy);" .IP "int (*\fBSSL_CTX_sess_get_new_cb\fR(\s-1SSL_CTX\s0 *ctx)(\s-1SSL\s0 *ssl, \s-1SSL_SESSION\s0 *sess);" 4 .IX Item "int (*SSL_CTX_sess_get_new_cb(SSL_CTX *ctx)(SSL *ssl, SSL_SESSION *sess);" .IP "void (*\fBSSL_CTX_sess_get_remove_cb\fR(\s-1SSL_CTX\s0 *ctx)(\s-1SSL_CTX\s0 *ctx, \s-1SSL_SESSION\s0 *sess);" 4 .IX Item "void (*SSL_CTX_sess_get_remove_cb(SSL_CTX *ctx)(SSL_CTX *ctx, SSL_SESSION *sess);" .IP "int \fBSSL_CTX_sess_hits\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_hits(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_misses\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_misses(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_sess_number\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_number(SSL_CTX *ctx);" .IP "void \fBSSL_CTX_sess_set_cache_size\fR(\s-1SSL_CTX\s0 *ctx,t);" 4 .IX Item "void SSL_CTX_sess_set_cache_size(SSL_CTX *ctx,t);" .IP "void \fBSSL_CTX_sess_set_get_cb\fR(\s-1SSL_CTX\s0 *ctx, \s-1SSL_SESSION\s0 *(*cb)(\s-1SSL\s0 *ssl, unsigned char *data, int len, int *copy));" 4 .IX Item "void SSL_CTX_sess_set_get_cb(SSL_CTX *ctx, SSL_SESSION *(*cb)(SSL *ssl, unsigned char *data, int len, int *copy));" .IP "void \fBSSL_CTX_sess_set_new_cb\fR(\s-1SSL_CTX\s0 *ctx, int (*cb)(\s-1SSL\s0 *ssl, \s-1SSL_SESSION\s0 *sess));" 4 .IX Item "void SSL_CTX_sess_set_new_cb(SSL_CTX *ctx, int (*cb)(SSL *ssl, SSL_SESSION *sess));" .IP "void \fBSSL_CTX_sess_set_remove_cb\fR(\s-1SSL_CTX\s0 *ctx, void (*cb)(\s-1SSL_CTX\s0 *ctx, \s-1SSL_SESSION\s0 *sess));" 4 .IX Item "void SSL_CTX_sess_set_remove_cb(SSL_CTX *ctx, void (*cb)(SSL_CTX *ctx, SSL_SESSION *sess));" .IP "int \fBSSL_CTX_sess_timeouts\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_sess_timeouts(SSL_CTX *ctx);" .IP "\s-1LHASH\s0 *\fBSSL_CTX_sessions\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "LHASH *SSL_CTX_sessions(SSL_CTX *ctx);" .IP "void \fBSSL_CTX_set_app_data\fR(\s-1SSL_CTX\s0 *ctx, void *arg);" 4 .IX Item "void SSL_CTX_set_app_data(SSL_CTX *ctx, void *arg);" .IP "void \fBSSL_CTX_set_cert_store\fR(\s-1SSL_CTX\s0 *ctx, X509_STORE *cs);" 4 .IX Item "void SSL_CTX_set_cert_store(SSL_CTX *ctx, X509_STORE *cs);" .IP "void \fBSSL_CTX_set_cert_verify_cb\fR(\s-1SSL_CTX\s0 *ctx, int (*cb)(), char *arg)" 4 .IX Item "void SSL_CTX_set_cert_verify_cb(SSL_CTX *ctx, int (*cb)(), char *arg)" .IP "int \fBSSL_CTX_set_cipher_list\fR(\s-1SSL_CTX\s0 *ctx, char *str);" 4 .IX Item "int SSL_CTX_set_cipher_list(SSL_CTX *ctx, char *str);" .IP "void \fBSSL_CTX_set_client_CA_list\fR(\s-1SSL_CTX\s0 *ctx, \s-1STACK\s0 *list);" 4 .IX Item "void SSL_CTX_set_client_CA_list(SSL_CTX *ctx, STACK *list);" .IP "void \fBSSL_CTX_set_client_cert_cb\fR(\s-1SSL_CTX\s0 *ctx, int (*cb)(\s-1SSL\s0 *ssl, X509 **x509, \s-1EVP_PKEY\s0 **pkey));" 4 .IX Item "void SSL_CTX_set_client_cert_cb(SSL_CTX *ctx, int (*cb)(SSL *ssl, X509 **x509, EVP_PKEY **pkey));" .IP "void \fBSSL_CTX_set_default_passwd_cb\fR(\s-1SSL_CTX\s0 *ctx, int (*cb);(void))" 4 .IX Item "void SSL_CTX_set_default_passwd_cb(SSL_CTX *ctx, int (*cb);(void))" .IP "void \fBSSL_CTX_set_default_read_ahead\fR(\s-1SSL_CTX\s0 *ctx, int m);" 4 .IX Item "void SSL_CTX_set_default_read_ahead(SSL_CTX *ctx, int m);" .IP "int \fBSSL_CTX_set_default_verify_paths\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "int SSL_CTX_set_default_verify_paths(SSL_CTX *ctx);" .IP "int \fBSSL_CTX_set_ex_data\fR(\s-1SSL_CTX\s0 *s, int idx, char *arg);" 4 .IX Item "int SSL_CTX_set_ex_data(SSL_CTX *s, int idx, char *arg);" .IP "void \fBSSL_CTX_set_info_callback\fR(\s-1SSL_CTX\s0 *ctx, void (*cb)(\s-1SSL\s0 *ssl, int cb, int ret));" 4 .IX Item "void SSL_CTX_set_info_callback(SSL_CTX *ctx, void (*cb)(SSL *ssl, int cb, int ret));" .IP "void \fBSSL_CTX_set_msg_callback\fR(\s-1SSL_CTX\s0 *ctx, void (*cb)(int write_p, int version, int content_type, const void *buf, size_t len, \s-1SSL\s0 *ssl, void *arg));" 4 .IX Item "void SSL_CTX_set_msg_callback(SSL_CTX *ctx, void (*cb)(int write_p, int version, int content_type, const void *buf, size_t len, SSL *ssl, void *arg));" .IP "void \fBSSL_CTX_set_msg_callback_arg\fR(\s-1SSL_CTX\s0 *ctx, void *arg);" 4 .IX Item "void SSL_CTX_set_msg_callback_arg(SSL_CTX *ctx, void *arg);" .IP "void \fBSSL_CTX_set_options\fR(\s-1SSL_CTX\s0 *ctx, unsigned long op);" 4 .IX Item "void SSL_CTX_set_options(SSL_CTX *ctx, unsigned long op);" .IP "void \fBSSL_CTX_set_quiet_shutdown\fR(\s-1SSL_CTX\s0 *ctx, int mode);" 4 .IX Item "void SSL_CTX_set_quiet_shutdown(SSL_CTX *ctx, int mode);" .IP "void \fBSSL_CTX_set_session_cache_mode\fR(\s-1SSL_CTX\s0 *ctx, int mode);" 4 .IX Item "void SSL_CTX_set_session_cache_mode(SSL_CTX *ctx, int mode);" .IP "int \fBSSL_CTX_set_ssl_version\fR(\s-1SSL_CTX\s0 *ctx, const \s-1SSL_METHOD\s0 *meth);" 4 .IX Item "int SSL_CTX_set_ssl_version(SSL_CTX *ctx, const SSL_METHOD *meth);" .IP "void \fBSSL_CTX_set_timeout\fR(\s-1SSL_CTX\s0 *ctx, long t);" 4 .IX Item "void SSL_CTX_set_timeout(SSL_CTX *ctx, long t);" .IP "long \fBSSL_CTX_set_tmp_dh\fR(SSL_CTX* ctx, \s-1DH\s0 *dh);" 4 .IX Item "long SSL_CTX_set_tmp_dh(SSL_CTX* ctx, DH *dh);" .IP "long \fBSSL_CTX_set_tmp_dh_callback\fR(\s-1SSL_CTX\s0 *ctx, \s-1DH\s0 *(*cb)(void));" 4 .IX Item "long SSL_CTX_set_tmp_dh_callback(SSL_CTX *ctx, DH *(*cb)(void));" .IP "long \fBSSL_CTX_set_tmp_rsa\fR(\s-1SSL_CTX\s0 *ctx, \s-1RSA\s0 *rsa);" 4 .IX Item "long SSL_CTX_set_tmp_rsa(SSL_CTX *ctx, RSA *rsa);" .IP "SSL_CTX_set_tmp_rsa_callback" 4 .IX Item "SSL_CTX_set_tmp_rsa_callback" .PD \&\f(CW\*(C`long \f(CBSSL_CTX_set_tmp_rsa_callback\f(CW(SSL_CTX *\f(CBctx\f(CW, RSA *(*\f(CBcb\f(CW)(SSL *\f(CBssl\f(CW, int \f(CBexport\f(CW, int \f(CBkeylength\f(CW));\*(C'\fR .Sp Sets the callback which will be called when a temporary private key is required. The \fB\f(CB\*(C`export\*(C'\fB\fR flag will be set if the reason for needing a temp key is that an export ciphersuite is in use, in which case, \&\fB\f(CB\*(C`keylength\*(C'\fB\fR will contain the required keylength in bits. Generate a key of appropriate size (using ???) and return it. .IP "SSL_set_tmp_rsa_callback" 4 .IX Item "SSL_set_tmp_rsa_callback" long \fBSSL_set_tmp_rsa_callback\fR(\s-1SSL\s0 *ssl, \s-1RSA\s0 *(*cb)(\s-1SSL\s0 *ssl, int export, int keylength)); .Sp The same as \fBSSL_CTX_set_tmp_rsa_callback\fR, except it operates on an \s-1SSL\s0 session instead of a context. .IP "void \fBSSL_CTX_set_verify\fR(\s-1SSL_CTX\s0 *ctx, int mode, int (*cb);(void))" 4 .IX Item "void SSL_CTX_set_verify(SSL_CTX *ctx, int mode, int (*cb);(void))" .PD 0 .IP "int \fBSSL_CTX_use_PrivateKey\fR(\s-1SSL_CTX\s0 *ctx, \s-1EVP_PKEY\s0 *pkey);" 4 .IX Item "int SSL_CTX_use_PrivateKey(SSL_CTX *ctx, EVP_PKEY *pkey);" .IP "int \fBSSL_CTX_use_PrivateKey_ASN1\fR(int type, \s-1SSL_CTX\s0 *ctx, unsigned char *d, long len);" 4 .IX Item "int SSL_CTX_use_PrivateKey_ASN1(int type, SSL_CTX *ctx, unsigned char *d, long len);" .IP "int \fBSSL_CTX_use_PrivateKey_file\fR(\s-1SSL_CTX\s0 *ctx, char *file, int type);" 4 .IX Item "int SSL_CTX_use_PrivateKey_file(SSL_CTX *ctx, char *file, int type);" .IP "int \fBSSL_CTX_use_RSAPrivateKey\fR(\s-1SSL_CTX\s0 *ctx, \s-1RSA\s0 *rsa);" 4 .IX Item "int SSL_CTX_use_RSAPrivateKey(SSL_CTX *ctx, RSA *rsa);" .IP "int \fBSSL_CTX_use_RSAPrivateKey_ASN1\fR(\s-1SSL_CTX\s0 *ctx, unsigned char *d, long len);" 4 .IX Item "int SSL_CTX_use_RSAPrivateKey_ASN1(SSL_CTX *ctx, unsigned char *d, long len);" .IP "int \fBSSL_CTX_use_RSAPrivateKey_file\fR(\s-1SSL_CTX\s0 *ctx, char *file, int type);" 4 .IX Item "int SSL_CTX_use_RSAPrivateKey_file(SSL_CTX *ctx, char *file, int type);" .IP "int \fBSSL_CTX_use_certificate\fR(\s-1SSL_CTX\s0 *ctx, X509 *x);" 4 .IX Item "int SSL_CTX_use_certificate(SSL_CTX *ctx, X509 *x);" .IP "int \fBSSL_CTX_use_certificate_ASN1\fR(\s-1SSL_CTX\s0 *ctx, int len, unsigned char *d);" 4 .IX Item "int SSL_CTX_use_certificate_ASN1(SSL_CTX *ctx, int len, unsigned char *d);" .IP "int \fBSSL_CTX_use_certificate_file\fR(\s-1SSL_CTX\s0 *ctx, char *file, int type);" 4 .IX Item "int SSL_CTX_use_certificate_file(SSL_CTX *ctx, char *file, int type);" .IP "void \fBSSL_CTX_set_psk_client_callback\fR(\s-1SSL_CTX\s0 *ctx, unsigned int (*callback)(\s-1SSL\s0 *ssl, const char *hint, char *identity, unsigned int max_identity_len, unsigned char *psk, unsigned int max_psk_len));" 4 .IX Item "void SSL_CTX_set_psk_client_callback(SSL_CTX *ctx, unsigned int (*callback)(SSL *ssl, const char *hint, char *identity, unsigned int max_identity_len, unsigned char *psk, unsigned int max_psk_len));" .IP "int \fBSSL_CTX_use_psk_identity_hint\fR(\s-1SSL_CTX\s0 *ctx, const char *hint);" 4 .IX Item "int SSL_CTX_use_psk_identity_hint(SSL_CTX *ctx, const char *hint);" .IP "void \fBSSL_CTX_set_psk_server_callback\fR(\s-1SSL_CTX\s0 *ctx, unsigned int (*callback)(\s-1SSL\s0 *ssl, const char *identity, unsigned char *psk, int max_psk_len));" 4 .IX Item "void SSL_CTX_set_psk_server_callback(SSL_CTX *ctx, unsigned int (*callback)(SSL *ssl, const char *identity, unsigned char *psk, int max_psk_len));" .PD .SS "\s-1DEALING\s0 \s-1WITH\s0 \s-1SESSIONS\s0" .IX Subsection "DEALING WITH SESSIONS" Here we document the various \s-1API\s0 functions which deal with the \s-1SSL/TLS\s0 sessions defined in the \fB\s-1SSL_SESSION\s0\fR structures. .IP "int \fBSSL_SESSION_cmp\fR(const \s-1SSL_SESSION\s0 *a, const \s-1SSL_SESSION\s0 *b);" 4 .IX Item "int SSL_SESSION_cmp(const SSL_SESSION *a, const SSL_SESSION *b);" .PD 0 .IP "void \fBSSL_SESSION_free\fR(\s-1SSL_SESSION\s0 *ss);" 4 .IX Item "void SSL_SESSION_free(SSL_SESSION *ss);" .IP "char *\fBSSL_SESSION_get_app_data\fR(\s-1SSL_SESSION\s0 *s);" 4 .IX Item "char *SSL_SESSION_get_app_data(SSL_SESSION *s);" .IP "char *\fBSSL_SESSION_get_ex_data\fR(const \s-1SSL_SESSION\s0 *s, int idx);" 4 .IX Item "char *SSL_SESSION_get_ex_data(const SSL_SESSION *s, int idx);" .IP "int \fBSSL_SESSION_get_ex_new_index\fR(long argl, char *argp, int (*new_func);(void), int (*dup_func)(void), void (*free_func)(void))" 4 .IX Item "int SSL_SESSION_get_ex_new_index(long argl, char *argp, int (*new_func);(void), int (*dup_func)(void), void (*free_func)(void))" .IP "long \fBSSL_SESSION_get_time\fR(const \s-1SSL_SESSION\s0 *s);" 4 .IX Item "long SSL_SESSION_get_time(const SSL_SESSION *s);" .IP "long \fBSSL_SESSION_get_timeout\fR(const \s-1SSL_SESSION\s0 *s);" 4 .IX Item "long SSL_SESSION_get_timeout(const SSL_SESSION *s);" .IP "unsigned long \fBSSL_SESSION_hash\fR(const \s-1SSL_SESSION\s0 *a);" 4 .IX Item "unsigned long SSL_SESSION_hash(const SSL_SESSION *a);" .IP "\s-1SSL_SESSION\s0 *\fBSSL_SESSION_new\fR(void);" 4 .IX Item "SSL_SESSION *SSL_SESSION_new(void);" .IP "int \fBSSL_SESSION_print\fR(\s-1BIO\s0 *bp, const \s-1SSL_SESSION\s0 *x);" 4 .IX Item "int SSL_SESSION_print(BIO *bp, const SSL_SESSION *x);" .IP "int \fBSSL_SESSION_print_fp\fR(\s-1FILE\s0 *fp, const \s-1SSL_SESSION\s0 *x);" 4 .IX Item "int SSL_SESSION_print_fp(FILE *fp, const SSL_SESSION *x);" .IP "void \fBSSL_SESSION_set_app_data\fR(\s-1SSL_SESSION\s0 *s, char *a);" 4 .IX Item "void SSL_SESSION_set_app_data(SSL_SESSION *s, char *a);" .IP "int \fBSSL_SESSION_set_ex_data\fR(\s-1SSL_SESSION\s0 *s, int idx, char *arg);" 4 .IX Item "int SSL_SESSION_set_ex_data(SSL_SESSION *s, int idx, char *arg);" .IP "long \fBSSL_SESSION_set_time\fR(\s-1SSL_SESSION\s0 *s, long t);" 4 .IX Item "long SSL_SESSION_set_time(SSL_SESSION *s, long t);" .IP "long \fBSSL_SESSION_set_timeout\fR(\s-1SSL_SESSION\s0 *s, long t);" 4 .IX Item "long SSL_SESSION_set_timeout(SSL_SESSION *s, long t);" .PD .SS "\s-1DEALING\s0 \s-1WITH\s0 \s-1CONNECTIONS\s0" .IX Subsection "DEALING WITH CONNECTIONS" Here we document the various \s-1API\s0 functions which deal with the \s-1SSL/TLS\s0 connection defined in the \fB\s-1SSL\s0\fR structure. .IP "int \fBSSL_accept\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_accept(SSL *ssl);" .PD 0 .IP "int \fBSSL_add_dir_cert_subjects_to_stack\fR(\s-1STACK\s0 *stack, const char *dir);" 4 .IX Item "int SSL_add_dir_cert_subjects_to_stack(STACK *stack, const char *dir);" .IP "int \fBSSL_add_file_cert_subjects_to_stack\fR(\s-1STACK\s0 *stack, const char *file);" 4 .IX Item "int SSL_add_file_cert_subjects_to_stack(STACK *stack, const char *file);" .IP "int \fBSSL_add_client_CA\fR(\s-1SSL\s0 *ssl, X509 *x);" 4 .IX Item "int SSL_add_client_CA(SSL *ssl, X509 *x);" .IP "char *\fBSSL_alert_desc_string\fR(int value);" 4 .IX Item "char *SSL_alert_desc_string(int value);" .IP "char *\fBSSL_alert_desc_string_long\fR(int value);" 4 .IX Item "char *SSL_alert_desc_string_long(int value);" .IP "char *\fBSSL_alert_type_string\fR(int value);" 4 .IX Item "char *SSL_alert_type_string(int value);" .IP "char *\fBSSL_alert_type_string_long\fR(int value);" 4 .IX Item "char *SSL_alert_type_string_long(int value);" .IP "int \fBSSL_check_private_key\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_check_private_key(const SSL *ssl);" .IP "void \fBSSL_clear\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "void SSL_clear(SSL *ssl);" .IP "long \fBSSL_clear_num_renegotiations\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "long SSL_clear_num_renegotiations(SSL *ssl);" .IP "int \fBSSL_connect\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_connect(SSL *ssl);" .IP "void \fBSSL_copy_session_id\fR(\s-1SSL\s0 *t, const \s-1SSL\s0 *f);" 4 .IX Item "void SSL_copy_session_id(SSL *t, const SSL *f);" .IP "long \fBSSL_ctrl\fR(\s-1SSL\s0 *ssl, int cmd, long larg, char *parg);" 4 .IX Item "long SSL_ctrl(SSL *ssl, int cmd, long larg, char *parg);" .IP "int \fBSSL_do_handshake\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_do_handshake(SSL *ssl);" .IP "\s-1SSL\s0 *\fBSSL_dup\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "SSL *SSL_dup(SSL *ssl);" .IP "\s-1STACK\s0 *\fBSSL_dup_CA_list\fR(\s-1STACK\s0 *sk);" 4 .IX Item "STACK *SSL_dup_CA_list(STACK *sk);" .IP "void \fBSSL_free\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "void SSL_free(SSL *ssl);" .IP "\s-1SSL_CTX\s0 *\fBSSL_get_SSL_CTX\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "SSL_CTX *SSL_get_SSL_CTX(const SSL *ssl);" .IP "char *\fBSSL_get_app_data\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "char *SSL_get_app_data(SSL *ssl);" .IP "X509 *\fBSSL_get_certificate\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "X509 *SSL_get_certificate(const SSL *ssl);" .IP "const char *\fBSSL_get_cipher\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "const char *SSL_get_cipher(const SSL *ssl);" .IP "int \fBSSL_get_cipher_bits\fR(const \s-1SSL\s0 *ssl, int *alg_bits);" 4 .IX Item "int SSL_get_cipher_bits(const SSL *ssl, int *alg_bits);" .IP "char *\fBSSL_get_cipher_list\fR(const \s-1SSL\s0 *ssl, int n);" 4 .IX Item "char *SSL_get_cipher_list(const SSL *ssl, int n);" .IP "char *\fBSSL_get_cipher_name\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "char *SSL_get_cipher_name(const SSL *ssl);" .IP "char *\fBSSL_get_cipher_version\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "char *SSL_get_cipher_version(const SSL *ssl);" .IP "\s-1STACK\s0 *\fBSSL_get_ciphers\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "STACK *SSL_get_ciphers(const SSL *ssl);" .IP "\s-1STACK\s0 *\fBSSL_get_client_CA_list\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "STACK *SSL_get_client_CA_list(const SSL *ssl);" .IP "\s-1SSL_CIPHER\s0 *\fBSSL_get_current_cipher\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "SSL_CIPHER *SSL_get_current_cipher(SSL *ssl);" .IP "long \fBSSL_get_default_timeout\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "long SSL_get_default_timeout(const SSL *ssl);" .IP "int \fBSSL_get_error\fR(const \s-1SSL\s0 *ssl, int i);" 4 .IX Item "int SSL_get_error(const SSL *ssl, int i);" .IP "char *\fBSSL_get_ex_data\fR(const \s-1SSL\s0 *ssl, int idx);" 4 .IX Item "char *SSL_get_ex_data(const SSL *ssl, int idx);" .IP "int \fBSSL_get_ex_data_X509_STORE_CTX_idx\fR(void);" 4 .IX Item "int SSL_get_ex_data_X509_STORE_CTX_idx(void);" .IP "int \fBSSL_get_ex_new_index\fR(long argl, char *argp, int (*new_func);(void), int (*dup_func)(void), void (*free_func)(void))" 4 .IX Item "int SSL_get_ex_new_index(long argl, char *argp, int (*new_func);(void), int (*dup_func)(void), void (*free_func)(void))" .IP "int \fBSSL_get_fd\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_get_fd(const SSL *ssl);" .IP "void (*\fBSSL_get_info_callback\fR(const \s-1SSL\s0 *ssl);)()" 4 .IX Item "void (*SSL_get_info_callback(const SSL *ssl);)()" .IP "\s-1STACK\s0 *\fBSSL_get_peer_cert_chain\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "STACK *SSL_get_peer_cert_chain(const SSL *ssl);" .IP "X509 *\fBSSL_get_peer_certificate\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "X509 *SSL_get_peer_certificate(const SSL *ssl);" .IP "\s-1EVP_PKEY\s0 *\fBSSL_get_privatekey\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "EVP_PKEY *SSL_get_privatekey(SSL *ssl);" .IP "int \fBSSL_get_quiet_shutdown\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_get_quiet_shutdown(const SSL *ssl);" .IP "\s-1BIO\s0 *\fBSSL_get_rbio\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "BIO *SSL_get_rbio(const SSL *ssl);" .IP "int \fBSSL_get_read_ahead\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_get_read_ahead(const SSL *ssl);" .IP "\s-1SSL_SESSION\s0 *\fBSSL_get_session\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "SSL_SESSION *SSL_get_session(const SSL *ssl);" .IP "char *\fBSSL_get_shared_ciphers\fR(const \s-1SSL\s0 *ssl, char *buf, int len);" 4 .IX Item "char *SSL_get_shared_ciphers(const SSL *ssl, char *buf, int len);" .IP "int \fBSSL_get_shutdown\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_get_shutdown(const SSL *ssl);" .IP "const \s-1SSL_METHOD\s0 *\fBSSL_get_ssl_method\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "const SSL_METHOD *SSL_get_ssl_method(SSL *ssl);" .IP "int \fBSSL_get_state\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_get_state(const SSL *ssl);" .IP "long \fBSSL_get_time\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "long SSL_get_time(const SSL *ssl);" .IP "long \fBSSL_get_timeout\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "long SSL_get_timeout(const SSL *ssl);" .IP "int (*\fBSSL_get_verify_callback\fR(const \s-1SSL\s0 *ssl))(int,X509_STORE_CTX *)" 4 .IX Item "int (*SSL_get_verify_callback(const SSL *ssl))(int,X509_STORE_CTX *)" .IP "int \fBSSL_get_verify_mode\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_get_verify_mode(const SSL *ssl);" .IP "long \fBSSL_get_verify_result\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "long SSL_get_verify_result(const SSL *ssl);" .IP "char *\fBSSL_get_version\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "char *SSL_get_version(const SSL *ssl);" .IP "\s-1BIO\s0 *\fBSSL_get_wbio\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "BIO *SSL_get_wbio(const SSL *ssl);" .IP "int \fBSSL_in_accept_init\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_in_accept_init(SSL *ssl);" .IP "int \fBSSL_in_before\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_in_before(SSL *ssl);" .IP "int \fBSSL_in_connect_init\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_in_connect_init(SSL *ssl);" .IP "int \fBSSL_in_init\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_in_init(SSL *ssl);" .IP "int \fBSSL_is_init_finished\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_is_init_finished(SSL *ssl);" .IP "\s-1STACK\s0 *\fBSSL_load_client_CA_file\fR(char *file);" 4 .IX Item "STACK *SSL_load_client_CA_file(char *file);" .IP "void \fBSSL_load_error_strings\fR(void);" 4 .IX Item "void SSL_load_error_strings(void);" .IP "\s-1SSL\s0 *\fBSSL_new\fR(\s-1SSL_CTX\s0 *ctx);" 4 .IX Item "SSL *SSL_new(SSL_CTX *ctx);" .IP "long \fBSSL_num_renegotiations\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "long SSL_num_renegotiations(SSL *ssl);" .IP "int \fBSSL_peek\fR(\s-1SSL\s0 *ssl, void *buf, int num);" 4 .IX Item "int SSL_peek(SSL *ssl, void *buf, int num);" .IP "int \fBSSL_pending\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_pending(const SSL *ssl);" .IP "int \fBSSL_read\fR(\s-1SSL\s0 *ssl, void *buf, int num);" 4 .IX Item "int SSL_read(SSL *ssl, void *buf, int num);" .IP "int \fBSSL_renegotiate\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_renegotiate(SSL *ssl);" .IP "char *\fBSSL_rstate_string\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "char *SSL_rstate_string(SSL *ssl);" .IP "char *\fBSSL_rstate_string_long\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "char *SSL_rstate_string_long(SSL *ssl);" .IP "long \fBSSL_session_reused\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "long SSL_session_reused(SSL *ssl);" .IP "void \fBSSL_set_accept_state\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "void SSL_set_accept_state(SSL *ssl);" .IP "void \fBSSL_set_app_data\fR(\s-1SSL\s0 *ssl, char *arg);" 4 .IX Item "void SSL_set_app_data(SSL *ssl, char *arg);" .IP "void \fBSSL_set_bio\fR(\s-1SSL\s0 *ssl, \s-1BIO\s0 *rbio, \s-1BIO\s0 *wbio);" 4 .IX Item "void SSL_set_bio(SSL *ssl, BIO *rbio, BIO *wbio);" .IP "int \fBSSL_set_cipher_list\fR(\s-1SSL\s0 *ssl, char *str);" 4 .IX Item "int SSL_set_cipher_list(SSL *ssl, char *str);" .IP "void \fBSSL_set_client_CA_list\fR(\s-1SSL\s0 *ssl, \s-1STACK\s0 *list);" 4 .IX Item "void SSL_set_client_CA_list(SSL *ssl, STACK *list);" .IP "void \fBSSL_set_connect_state\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "void SSL_set_connect_state(SSL *ssl);" .IP "int \fBSSL_set_ex_data\fR(\s-1SSL\s0 *ssl, int idx, char *arg);" 4 .IX Item "int SSL_set_ex_data(SSL *ssl, int idx, char *arg);" .IP "int \fBSSL_set_fd\fR(\s-1SSL\s0 *ssl, int fd);" 4 .IX Item "int SSL_set_fd(SSL *ssl, int fd);" .IP "void \fBSSL_set_info_callback\fR(\s-1SSL\s0 *ssl, void (*cb);(void))" 4 .IX Item "void SSL_set_info_callback(SSL *ssl, void (*cb);(void))" .IP "void \fBSSL_set_msg_callback\fR(\s-1SSL\s0 *ctx, void (*cb)(int write_p, int version, int content_type, const void *buf, size_t len, \s-1SSL\s0 *ssl, void *arg));" 4 .IX Item "void SSL_set_msg_callback(SSL *ctx, void (*cb)(int write_p, int version, int content_type, const void *buf, size_t len, SSL *ssl, void *arg));" .IP "void \fBSSL_set_msg_callback_arg\fR(\s-1SSL\s0 *ctx, void *arg);" 4 .IX Item "void SSL_set_msg_callback_arg(SSL *ctx, void *arg);" .IP "void \fBSSL_set_options\fR(\s-1SSL\s0 *ssl, unsigned long op);" 4 .IX Item "void SSL_set_options(SSL *ssl, unsigned long op);" .IP "void \fBSSL_set_quiet_shutdown\fR(\s-1SSL\s0 *ssl, int mode);" 4 .IX Item "void SSL_set_quiet_shutdown(SSL *ssl, int mode);" .IP "void \fBSSL_set_read_ahead\fR(\s-1SSL\s0 *ssl, int yes);" 4 .IX Item "void SSL_set_read_ahead(SSL *ssl, int yes);" .IP "int \fBSSL_set_rfd\fR(\s-1SSL\s0 *ssl, int fd);" 4 .IX Item "int SSL_set_rfd(SSL *ssl, int fd);" .IP "int \fBSSL_set_session\fR(\s-1SSL\s0 *ssl, \s-1SSL_SESSION\s0 *session);" 4 .IX Item "int SSL_set_session(SSL *ssl, SSL_SESSION *session);" .IP "void \fBSSL_set_shutdown\fR(\s-1SSL\s0 *ssl, int mode);" 4 .IX Item "void SSL_set_shutdown(SSL *ssl, int mode);" .IP "int \fBSSL_set_ssl_method\fR(\s-1SSL\s0 *ssl, const \s-1SSL_METHOD\s0 *meth);" 4 .IX Item "int SSL_set_ssl_method(SSL *ssl, const SSL_METHOD *meth);" .IP "void \fBSSL_set_time\fR(\s-1SSL\s0 *ssl, long t);" 4 .IX Item "void SSL_set_time(SSL *ssl, long t);" .IP "void \fBSSL_set_timeout\fR(\s-1SSL\s0 *ssl, long t);" 4 .IX Item "void SSL_set_timeout(SSL *ssl, long t);" .IP "void \fBSSL_set_verify\fR(\s-1SSL\s0 *ssl, int mode, int (*callback);(void))" 4 .IX Item "void SSL_set_verify(SSL *ssl, int mode, int (*callback);(void))" .IP "void \fBSSL_set_verify_result\fR(\s-1SSL\s0 *ssl, long arg);" 4 .IX Item "void SSL_set_verify_result(SSL *ssl, long arg);" .IP "int \fBSSL_set_wfd\fR(\s-1SSL\s0 *ssl, int fd);" 4 .IX Item "int SSL_set_wfd(SSL *ssl, int fd);" .IP "int \fBSSL_shutdown\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_shutdown(SSL *ssl);" .IP "int \fBSSL_state\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_state(const SSL *ssl);" .IP "char *\fBSSL_state_string\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "char *SSL_state_string(const SSL *ssl);" .IP "char *\fBSSL_state_string_long\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "char *SSL_state_string_long(const SSL *ssl);" .IP "long \fBSSL_total_renegotiations\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "long SSL_total_renegotiations(SSL *ssl);" .IP "int \fBSSL_use_PrivateKey\fR(\s-1SSL\s0 *ssl, \s-1EVP_PKEY\s0 *pkey);" 4 .IX Item "int SSL_use_PrivateKey(SSL *ssl, EVP_PKEY *pkey);" .IP "int \fBSSL_use_PrivateKey_ASN1\fR(int type, \s-1SSL\s0 *ssl, unsigned char *d, long len);" 4 .IX Item "int SSL_use_PrivateKey_ASN1(int type, SSL *ssl, unsigned char *d, long len);" .IP "int \fBSSL_use_PrivateKey_file\fR(\s-1SSL\s0 *ssl, char *file, int type);" 4 .IX Item "int SSL_use_PrivateKey_file(SSL *ssl, char *file, int type);" .IP "int \fBSSL_use_RSAPrivateKey\fR(\s-1SSL\s0 *ssl, \s-1RSA\s0 *rsa);" 4 .IX Item "int SSL_use_RSAPrivateKey(SSL *ssl, RSA *rsa);" .IP "int \fBSSL_use_RSAPrivateKey_ASN1\fR(\s-1SSL\s0 *ssl, unsigned char *d, long len);" 4 .IX Item "int SSL_use_RSAPrivateKey_ASN1(SSL *ssl, unsigned char *d, long len);" .IP "int \fBSSL_use_RSAPrivateKey_file\fR(\s-1SSL\s0 *ssl, char *file, int type);" 4 .IX Item "int SSL_use_RSAPrivateKey_file(SSL *ssl, char *file, int type);" .IP "int \fBSSL_use_certificate\fR(\s-1SSL\s0 *ssl, X509 *x);" 4 .IX Item "int SSL_use_certificate(SSL *ssl, X509 *x);" .IP "int \fBSSL_use_certificate_ASN1\fR(\s-1SSL\s0 *ssl, int len, unsigned char *d);" 4 .IX Item "int SSL_use_certificate_ASN1(SSL *ssl, int len, unsigned char *d);" .IP "int \fBSSL_use_certificate_file\fR(\s-1SSL\s0 *ssl, char *file, int type);" 4 .IX Item "int SSL_use_certificate_file(SSL *ssl, char *file, int type);" .IP "int \fBSSL_version\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_version(const SSL *ssl);" .IP "int \fBSSL_want\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_want(const SSL *ssl);" .IP "int \fBSSL_want_nothing\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_want_nothing(const SSL *ssl);" .IP "int \fBSSL_want_read\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_want_read(const SSL *ssl);" .IP "int \fBSSL_want_write\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_want_write(const SSL *ssl);" .IP "int \fBSSL_want_x509_lookup\fR(const \s-1SSL\s0 *ssl);" 4 .IX Item "int SSL_want_x509_lookup(const SSL *ssl);" .IP "int \fBSSL_write\fR(\s-1SSL\s0 *ssl, const void *buf, int num);" 4 .IX Item "int SSL_write(SSL *ssl, const void *buf, int num);" .IP "void \fBSSL_set_psk_client_callback\fR(\s-1SSL\s0 *ssl, unsigned int (*callback)(\s-1SSL\s0 *ssl, const char *hint, char *identity, unsigned int max_identity_len, unsigned char *psk, unsigned int max_psk_len));" 4 .IX Item "void SSL_set_psk_client_callback(SSL *ssl, unsigned int (*callback)(SSL *ssl, const char *hint, char *identity, unsigned int max_identity_len, unsigned char *psk, unsigned int max_psk_len));" .IP "int \fBSSL_use_psk_identity_hint\fR(\s-1SSL\s0 *ssl, const char *hint);" 4 .IX Item "int SSL_use_psk_identity_hint(SSL *ssl, const char *hint);" .IP "void \fBSSL_set_psk_server_callback\fR(\s-1SSL\s0 *ssl, unsigned int (*callback)(\s-1SSL\s0 *ssl, const char *identity, unsigned char *psk, int max_psk_len));" 4 .IX Item "void SSL_set_psk_server_callback(SSL *ssl, unsigned int (*callback)(SSL *ssl, const char *identity, unsigned char *psk, int max_psk_len));" .IP "const char *\fBSSL_get_psk_identity_hint\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "const char *SSL_get_psk_identity_hint(SSL *ssl);" .IP "const char *\fBSSL_get_psk_identity\fR(\s-1SSL\s0 *ssl);" 4 .IX Item "const char *SSL_get_psk_identity(SSL *ssl);" .PD .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIopenssl\fR\|(1), \fIcrypto\fR\|(3), \&\fISSL_accept\fR\|(3), \fISSL_clear\fR\|(3), \&\fISSL_connect\fR\|(3), \&\fISSL_CIPHER_get_name\fR\|(3), \&\fISSL_COMP_add_compression_method\fR\|(3), \&\fISSL_CTX_add_extra_chain_cert\fR\|(3), \&\fISSL_CTX_add_session\fR\|(3), \&\fISSL_CTX_ctrl\fR\|(3), \&\fISSL_CTX_flush_sessions\fR\|(3), \&\fISSL_CTX_get_ex_new_index\fR\|(3), \&\fISSL_CTX_get_verify_mode\fR\|(3), \&\fISSL_CTX_load_verify_locations\fR\|(3) \&\fISSL_CTX_new\fR\|(3), \&\fISSL_CTX_sess_number\fR\|(3), \&\fISSL_CTX_sess_set_cache_size\fR\|(3), \&\fISSL_CTX_sess_set_get_cb\fR\|(3), \&\fISSL_CTX_sessions\fR\|(3), \&\fISSL_CTX_set_cert_store\fR\|(3), \&\fISSL_CTX_set_cert_verify_callback\fR\|(3), \&\fISSL_CTX_set_cipher_list\fR\|(3), \&\fISSL_CTX_set_client_CA_list\fR\|(3), \&\fISSL_CTX_set_client_cert_cb\fR\|(3), \&\fISSL_CTX_set_default_passwd_cb\fR\|(3), \&\fISSL_CTX_set_generate_session_id\fR\|(3), \&\fISSL_CTX_set_info_callback\fR\|(3), \&\fISSL_CTX_set_max_cert_list\fR\|(3), \&\fISSL_CTX_set_mode\fR\|(3), \&\fISSL_CTX_set_msg_callback\fR\|(3), \&\fISSL_CTX_set_options\fR\|(3), \&\fISSL_CTX_set_quiet_shutdown\fR\|(3), \&\fISSL_CTX_set_session_cache_mode\fR\|(3), \&\fISSL_CTX_set_session_id_context\fR\|(3), \&\fISSL_CTX_set_ssl_version\fR\|(3), \&\fISSL_CTX_set_timeout\fR\|(3), \&\fISSL_CTX_set_tmp_rsa_callback\fR\|(3), \&\fISSL_CTX_set_tmp_dh_callback\fR\|(3), \&\fISSL_CTX_set_verify\fR\|(3), \&\fISSL_CTX_use_certificate\fR\|(3), \&\fISSL_alert_type_string\fR\|(3), \&\fISSL_do_handshake\fR\|(3), \&\fISSL_get_SSL_CTX\fR\|(3), \&\fISSL_get_ciphers\fR\|(3), \&\fISSL_get_client_CA_list\fR\|(3), \&\fISSL_get_default_timeout\fR\|(3), \&\fISSL_get_error\fR\|(3), \&\fISSL_get_ex_data_X509_STORE_CTX_idx\fR\|(3), \&\fISSL_get_ex_new_index\fR\|(3), \&\fISSL_get_fd\fR\|(3), \&\fISSL_get_peer_cert_chain\fR\|(3), \&\fISSL_get_rbio\fR\|(3), \&\fISSL_get_session\fR\|(3), \&\fISSL_get_verify_result\fR\|(3), \&\fISSL_get_version\fR\|(3), \&\fISSL_library_init\fR\|(3), \&\fISSL_load_client_CA_file\fR\|(3), \&\fISSL_new\fR\|(3), \&\fISSL_pending\fR\|(3), \&\fISSL_read\fR\|(3), \&\fISSL_rstate_string\fR\|(3), \&\fISSL_session_reused\fR\|(3), \&\fISSL_set_bio\fR\|(3), \&\fISSL_set_connect_state\fR\|(3), \&\fISSL_set_fd\fR\|(3), \&\fISSL_set_session\fR\|(3), \&\fISSL_set_shutdown\fR\|(3), \&\fISSL_shutdown\fR\|(3), \&\fISSL_state_string\fR\|(3), \&\fISSL_want\fR\|(3), \&\fISSL_write\fR\|(3), \&\fISSL_SESSION_free\fR\|(3), \&\fISSL_SESSION_get_ex_new_index\fR\|(3), \&\fISSL_SESSION_get_time\fR\|(3), \&\fId2i_SSL_SESSION\fR\|(3), \&\fISSL_CTX_set_psk_client_callback\fR\|(3), \&\fISSL_CTX_use_psk_identity_hint\fR\|(3), \&\fISSL_get_psk_identity\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" The \fIssl\fR\|(3) document appeared in OpenSSL 0.9.2 07070100048c1e000081a4000000000000000000000001513596110000120d000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/DSA_generate_key.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DSA_generate_key 3" .TH DSA_generate_key 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DSA_generate_key \- generate DSA key pair .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int DSA_generate_key(DSA *a); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIDSA_generate_key()\fR expects \fBa\fR to contain \s-1DSA\s0 parameters. It generates a new key pair and stores it in \fBa\->pub_key\fR and \fBa\->priv_key\fR. .PP The \s-1PRNG\s0 must be seeded prior to calling \fIDSA_generate_key()\fR. .SH "RETURN VALUE" .IX Header "RETURN VALUE" \&\fIDSA_generate_key()\fR returns 1 on success, 0 otherwise. The error codes can be obtained by \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdsa\fR\|(3), \fIERR_get_error\fR\|(3), \fIrand\fR\|(3), \&\fIDSA_generate_parameters\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDSA_generate_key()\fR is available since SSLeay 0.8. 07070100048cdd000081a40000000000000000000000015135961b00001fa0000000b600010002ffffffffffffffff0000002200000000root/usr/local/ssl/man/man3/dsa.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "dsa 3" .TH dsa 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" dsa \- Digital Signature Algorithm .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& #include \& #include \& \& DSA * DSA_new(void); \& void DSA_free(DSA *dsa); \& \& int DSA_size(const DSA *dsa); \& \& DSA * DSA_generate_parameters(int bits, unsigned char *seed, \& int seed_len, int *counter_ret, unsigned long *h_ret, \& void (*callback)(int, int, void *), void *cb_arg); \& \& DH * DSA_dup_DH(const DSA *r); \& \& int DSA_generate_key(DSA *dsa); \& \& int DSA_sign(int dummy, const unsigned char *dgst, int len, \& unsigned char *sigret, unsigned int *siglen, DSA *dsa); \& int DSA_sign_setup(DSA *dsa, BN_CTX *ctx, BIGNUM **kinvp, \& BIGNUM **rp); \& int DSA_verify(int dummy, const unsigned char *dgst, int len, \& const unsigned char *sigbuf, int siglen, DSA *dsa); \& \& void DSA_set_default_method(const DSA_METHOD *meth); \& const DSA_METHOD *DSA_get_default_method(void); \& int DSA_set_method(DSA *dsa, const DSA_METHOD *meth); \& DSA *DSA_new_method(ENGINE *engine); \& const DSA_METHOD *DSA_OpenSSL(void); \& \& int DSA_get_ex_new_index(long argl, char *argp, int (*new_func)(), \& int (*dup_func)(), void (*free_func)()); \& int DSA_set_ex_data(DSA *d, int idx, char *arg); \& char *DSA_get_ex_data(DSA *d, int idx); \& \& DSA_SIG *DSA_SIG_new(void); \& void DSA_SIG_free(DSA_SIG *a); \& int i2d_DSA_SIG(const DSA_SIG *a, unsigned char **pp); \& DSA_SIG *d2i_DSA_SIG(DSA_SIG **v, unsigned char **pp, long length); \& \& DSA_SIG *DSA_do_sign(const unsigned char *dgst, int dlen, DSA *dsa); \& int DSA_do_verify(const unsigned char *dgst, int dgst_len, \& DSA_SIG *sig, DSA *dsa); \& \& DSA * d2i_DSAPublicKey(DSA **a, unsigned char **pp, long length); \& DSA * d2i_DSAPrivateKey(DSA **a, unsigned char **pp, long length); \& DSA * d2i_DSAparams(DSA **a, unsigned char **pp, long length); \& int i2d_DSAPublicKey(const DSA *a, unsigned char **pp); \& int i2d_DSAPrivateKey(const DSA *a, unsigned char **pp); \& int i2d_DSAparams(const DSA *a,unsigned char **pp); \& \& int DSAparams_print(BIO *bp, const DSA *x); \& int DSAparams_print_fp(FILE *fp, const DSA *x); \& int DSA_print(BIO *bp, const DSA *x, int off); \& int DSA_print_fp(FILE *bp, const DSA *x, int off); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions implement the Digital Signature Algorithm (\s-1DSA\s0). The generation of shared \s-1DSA\s0 parameters is described in \&\fIDSA_generate_parameters\fR\|(3); \&\fIDSA_generate_key\fR\|(3) describes how to generate a signature key. Signature generation and verification are described in \fIDSA_sign\fR\|(3). .PP The \fB\s-1DSA\s0\fR structure consists of several \s-1BIGNUM\s0 components. .PP .Vb 10 \& struct \& { \& BIGNUM *p; // prime number (public) \& BIGNUM *q; // 160\-bit subprime, q | p\-1 (public) \& BIGNUM *g; // generator of subgroup (public) \& BIGNUM *priv_key; // private key x \& BIGNUM *pub_key; // public key y = g^x \& // ... \& } \& DSA; .Ve .PP In public keys, \fBpriv_key\fR is \s-1NULL\s0. .PP Note that \s-1DSA\s0 keys may use non-standard \fB\s-1DSA_METHOD\s0\fR implementations, either directly or by the use of \fB\s-1ENGINE\s0\fR modules. In some cases (eg. an \&\s-1ENGINE\s0 providing support for hardware-embedded keys), these \s-1BIGNUM\s0 values will not be used by the implementation or may be used for alternative data storage. For this reason, applications should generally avoid using \s-1DSA\s0 structure elements directly and instead use \s-1API\s0 functions to query or modify keys. .SH "CONFORMING TO" .IX Header "CONFORMING TO" \&\s-1US\s0 Federal Information Processing Standard \s-1FIPS\s0 186 (Digital Signature Standard, \s-1DSS\s0), \s-1ANSI\s0 X9.30 .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIbn\fR\|(3), \fIdh\fR\|(3), \fIerr\fR\|(3), \fIrand\fR\|(3), \&\fIrsa\fR\|(3), \fIsha\fR\|(3), \fIengine\fR\|(3), \&\fIDSA_new\fR\|(3), \&\fIDSA_size\fR\|(3), \&\fIDSA_generate_parameters\fR\|(3), \&\fIDSA_dup_DH\fR\|(3), \&\fIDSA_generate_key\fR\|(3), \&\fIDSA_sign\fR\|(3), \fIDSA_set_method\fR\|(3), \&\fIDSA_get_ex_new_index\fR\|(3), \&\fIRSA_print\fR\|(3) 07070100048cc3000081a40000000000000000000000015135961900002336000000b600010002ffffffffffffffff0000003100000000root/usr/local/ssl/man/man3/X509_STORE_CTX_new.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "X509_STORE_CTX_new 3" .TH X509_STORE_CTX_new 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" X509_STORE_CTX_new, X509_STORE_CTX_cleanup, X509_STORE_CTX_free, X509_STORE_CTX_init, X509_STORE_CTX_trusted_stack, X509_STORE_CTX_set_cert, X509_STORE_CTX_set_chain, X509_STORE_CTX_set0_crls, X509_STORE_CTX_get0_param, X509_STORE_CTX_set0_param, X509_STORE_CTX_set_default \- X509_STORE_CTX initialisation .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& X509_STORE_CTX *X509_STORE_CTX_new(void); \& void X509_STORE_CTX_cleanup(X509_STORE_CTX *ctx); \& void X509_STORE_CTX_free(X509_STORE_CTX *ctx); \& \& int X509_STORE_CTX_init(X509_STORE_CTX *ctx, X509_STORE *store, \& X509 *x509, STACK_OF(X509) *chain); \& \& void X509_STORE_CTX_trusted_stack(X509_STORE_CTX *ctx, STACK_OF(X509) *sk); \& \& void X509_STORE_CTX_set_cert(X509_STORE_CTX *ctx,X509 *x); \& void X509_STORE_CTX_set_chain(X509_STORE_CTX *ctx,STACK_OF(X509) *sk); \& void X509_STORE_CTX_set0_crls(X509_STORE_CTX *ctx, STACK_OF(X509_CRL) *sk); \& \& X509_VERIFY_PARAM *X509_STORE_CTX_get0_param(X509_STORE_CTX *ctx); \& void X509_STORE_CTX_set0_param(X509_STORE_CTX *ctx, X509_VERIFY_PARAM *param); \& int X509_STORE_CTX_set_default(X509_STORE_CTX *ctx, const char *name); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions initialise an \fBX509_STORE_CTX\fR structure for subsequent use by \fIX509_verify_cert()\fR. .PP \&\fIX509_STORE_CTX_new()\fR returns a newly initialised \fBX509_STORE_CTX\fR structure. .PP \&\fIX509_STORE_CTX_cleanup()\fR internally cleans up an \fBX509_STORE_CTX\fR structure. The context can then be reused with an new call to \fIX509_STORE_CTX_init()\fR. .PP \&\fIX509_STORE_CTX_free()\fR completely frees up \fBctx\fR. After this call \fBctx\fR is no longer valid. .PP \&\fIX509_STORE_CTX_init()\fR sets up \fBctx\fR for a subsequent verification operation. The trusted certificate store is set to \fBstore\fR, the end entity certificate to be verified is set to \fBx509\fR and a set of additional certificates (which will be untrusted but may be used to build the chain) in \fBchain\fR. Any or all of the \fBstore\fR, \fBx509\fR and \fBchain\fR parameters can be \fB\s-1NULL\s0\fR. .PP \&\fIX509_STORE_CTX_trusted_stack()\fR sets the set of trusted certificates of \fBctx\fR to \fBsk\fR. This is an alternative way of specifying trusted certificates instead of using an \fBX509_STORE\fR. .PP \&\fIX509_STORE_CTX_set_cert()\fR sets the certificate to be vertified in \fBctx\fR to \&\fBx\fR. .PP \&\fIX509_STORE_CTX_set_chain()\fR sets the additional certificate chain used by \fBctx\fR to \fBsk\fR. .PP \&\fIX509_STORE_CTX_set0_crls()\fR sets a set of CRLs to use to aid certificate verification to \fBsk\fR. These CRLs will only be used if \s-1CRL\s0 verification is enabled in the associated \fBX509_VERIFY_PARAM\fR structure. This might be used where additional \*(L"useful\*(R" CRLs are supplied as part of a protocol, for example in a PKCS#7 structure. .PP X509_VERIFY_PARAM *\fIX509_STORE_CTX_get0_param()\fR retrieves an intenal pointer to the verification parameters associated with \fBctx\fR. .PP \&\fIX509_STORE_CTX_set0_param()\fR sets the intenal verification parameter pointer to \fBparam\fR. After this call \fBparam\fR should not be used. .PP \&\fIX509_STORE_CTX_set_default()\fR looks up and sets the default verification method to \fBname\fR. This uses the function \fIX509_VERIFY_PARAM_lookup()\fR to find an appropriate set of parameters from \fBname\fR. .SH "NOTES" .IX Header "NOTES" The certificates and CRLs in a store are used internally and should \fBnot\fR be freed up until after the associated \fBX509_STORE_CTX\fR is freed. Legacy applications might implicitly use an \fBX509_STORE_CTX\fR like this: .PP .Vb 2 \& X509_STORE_CTX ctx; \& X509_STORE_CTX_init(&ctx, store, cert, chain); .Ve .PP this is \fBnot\fR recommended in new applications they should instead do: .PP .Vb 5 \& X509_STORE_CTX *ctx; \& ctx = X509_STORE_CTX_new(); \& if (ctx == NULL) \& /* Bad error */ \& X509_STORE_CTX_init(ctx, store, cert, chain); .Ve .SH "BUGS" .IX Header "BUGS" The certificates and CRLs in a context are used internally and should \fBnot\fR be freed up until after the associated \fBX509_STORE_CTX\fR is freed. Copies should be made or reference counts increased instead. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIX509_STORE_CTX_new()\fR returns an newly allocates context or \fB\s-1NULL\s0\fR is an error occurred. .PP \&\fIX509_STORE_CTX_init()\fR returns 1 for success or 0 if an error occurred. .PP \&\fIX509_STORE_CTX_get0_param()\fR returns a pointer to an \fBX509_VERIFY_PARAM\fR structure or \fB\s-1NULL\s0\fR if an error occurred. .PP \&\fIX509_STORE_CTX_cleanup()\fR, \fIX509_STORE_CTX_free()\fR, \fIX509_STORE_CTX_trusted_stack()\fR, \&\fIX509_STORE_CTX_set_cert()\fR, \fIX509_STORE_CTX_set_chain()\fR, \&\fIX509_STORE_CTX_set0_crls()\fR and \fIX509_STORE_CTX_set0_param()\fR do not return values. .PP \&\fIX509_STORE_CTX_set_default()\fR returns 1 for success or 0 if an error occurred. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIX509_verify_cert\fR\|(3) \&\fIX509_VERIFY_PARAM_set_flags\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIX509_STORE_CTX_set0_crls()\fR was first added to OpenSSL 1.0.0 07070100048c6b000081a40000000000000000000000015135961800001793000000b600010002ffffffffffffffff0000002e00000000root/usr/local/ssl/man/man3/SMIME_write_CMS.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SMIME_write_CMS 3" .TH SMIME_write_CMS 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& SMIME_write_CMS \- convert CMS structure to S/MIME format. .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SMIME_write_CMS(BIO *out, CMS_ContentInfo *cms, BIO *data, int flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISMIME_write_CMS()\fR adds the appropriate \s-1MIME\s0 headers to a \s-1CMS\s0 structure to produce an S/MIME message. .PP \&\fBout\fR is the \s-1BIO\s0 to write the data to. \fBcms\fR is the appropriate \&\fBCMS_ContentInfo\fR structure. If streaming is enabled then the content must be supplied in the \fBdata\fR argument. \fBflags\fR is an optional set of flags. .SH "NOTES" .IX Header "NOTES" The following flags can be passed in the \fBflags\fR parameter. .PP If \fB\s-1CMS_DETACHED\s0\fR is set then cleartext signing will be used, this option only makes sense for SignedData where \fB\s-1CMS_DETACHED\s0\fR is also set when \fICMS_sign()\fR is called. .PP If the \fB\s-1CMS_TEXT\s0\fR flag is set \s-1MIME\s0 headers for type \fBtext/plain\fR are added to the content, this only makes sense if \fB\s-1CMS_DETACHED\s0\fR is also set. .PP If the \fB\s-1CMS_STREAM\s0\fR flag is set streaming is performed. This flag should only be set if \fB\s-1CMS_STREAM\s0\fR was also set in the previous call to a CMS_ContentInfo creation function. .PP If cleartext signing is being used and \fB\s-1CMS_STREAM\s0\fR not set then the data must be read twice: once to compute the signature in \fICMS_sign()\fR and once to output the S/MIME message. .PP If streaming is performed the content is output in \s-1BER\s0 format using indefinite length constructed encoding except in the case of signed data with detached content where the content is absent and \s-1DER\s0 format is used. .SH "BUGS" .IX Header "BUGS" \&\fISMIME_write_CMS()\fR always base64 encodes \s-1CMS\s0 structures, there should be an option to disable this. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISMIME_write_CMS()\fR returns 1 for success or 0 for failure. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fICMS_sign\fR\|(3), \&\fICMS_verify\fR\|(3), \fICMS_encrypt\fR\|(3) \&\fICMS_decrypt\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fISMIME_write_CMS()\fR was added to OpenSSL 0.9.8 07070100048be1000081a40000000000000000000000015135960c00001bd6000000b600010002ffffffffffffffff0000002c00000000root/usr/local/ssl/man/man3/BIO_find_type.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BIO_find_type 3" .TH BIO_find_type 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BIO_find_type, BIO_next \- BIO chain traversal .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& BIO * BIO_find_type(BIO *b,int bio_type); \& BIO * BIO_next(BIO *b); \& \& #define BIO_method_type(b) ((b)\->method\->type) \& \& #define BIO_TYPE_NONE 0 \& #define BIO_TYPE_MEM (1|0x0400) \& #define BIO_TYPE_FILE (2|0x0400) \& \& #define BIO_TYPE_FD (4|0x0400|0x0100) \& #define BIO_TYPE_SOCKET (5|0x0400|0x0100) \& #define BIO_TYPE_NULL (6|0x0400) \& #define BIO_TYPE_SSL (7|0x0200) \& #define BIO_TYPE_MD (8|0x0200) \& #define BIO_TYPE_BUFFER (9|0x0200) \& #define BIO_TYPE_CIPHER (10|0x0200) \& #define BIO_TYPE_BASE64 (11|0x0200) \& #define BIO_TYPE_CONNECT (12|0x0400|0x0100) \& #define BIO_TYPE_ACCEPT (13|0x0400|0x0100) \& #define BIO_TYPE_PROXY_CLIENT (14|0x0200) \& #define BIO_TYPE_PROXY_SERVER (15|0x0200) \& #define BIO_TYPE_NBIO_TEST (16|0x0200) \& #define BIO_TYPE_NULL_FILTER (17|0x0200) \& #define BIO_TYPE_BER (18|0x0200) \& #define BIO_TYPE_BIO (19|0x0400) \& \& #define BIO_TYPE_DESCRIPTOR 0x0100 \& #define BIO_TYPE_FILTER 0x0200 \& #define BIO_TYPE_SOURCE_SINK 0x0400 .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The \fIBIO_find_type()\fR searches for a \s-1BIO\s0 of a given type in a chain, starting at \s-1BIO\s0 \fBb\fR. If \fBtype\fR is a specific type (such as \s-1BIO_TYPE_MEM\s0) then a search is made for a \s-1BIO\s0 of that type. If \fBtype\fR is a general type (such as \&\fB\s-1BIO_TYPE_SOURCE_SINK\s0\fR) then the next matching \s-1BIO\s0 of the given general type is searched for. \fIBIO_find_type()\fR returns the next matching \s-1BIO\s0 or \s-1NULL\s0 if none is found. .PP Note: not all the \fBBIO_TYPE_*\fR types above have corresponding \s-1BIO\s0 implementations. .PP \&\fIBIO_next()\fR returns the next \s-1BIO\s0 in a chain. It can be used to traverse all BIOs in a chain or used in conjunction with \fIBIO_find_type()\fR to find all BIOs of a certain type. .PP \&\fIBIO_method_type()\fR returns the type of a \s-1BIO\s0. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIBIO_find_type()\fR returns a matching \s-1BIO\s0 or \s-1NULL\s0 for no match. .PP \&\fIBIO_next()\fR returns the next \s-1BIO\s0 in a chain. .PP \&\fIBIO_method_type()\fR returns the type of the \s-1BIO\s0 \fBb\fR. .SH "NOTES" .IX Header "NOTES" \&\fIBIO_next()\fR was added to OpenSSL 0.9.6 to provide a 'clean' way to traverse a \s-1BIO\s0 chain or find multiple matches using \fIBIO_find_type()\fR. Previous versions had to use: .PP .Vb 1 \& next = bio\->next_bio; .Ve .SH "BUGS" .IX Header "BUGS" \&\fIBIO_find_type()\fR in OpenSSL 0.9.5a and earlier could not be safely passed a \&\s-1NULL\s0 pointer for the \fBb\fR argument. .SH "EXAMPLE" .IX Header "EXAMPLE" Traverse a chain looking for digest BIOs: .PP .Vb 2 \& BIO *btmp; \& btmp = in_bio; /* in_bio is chain to search through */ \& \& do { \& btmp = BIO_find_type(btmp, BIO_TYPE_MD); \& if(btmp == NULL) break; /* Not found */ \& /* btmp is a digest BIO, do something with it ...*/ \& ... \& \& btmp = BIO_next(btmp); \& } while(btmp); .Ve .SH "SEE ALSO" .IX Header "SEE ALSO" \&\s-1TBA\s0 07070100048be8000081a40000000000000000000000015135960c00002d0f000000b600010002ffffffffffffffff0000002c00000000root/usr/local/ssl/man/man3/BIO_s_connect.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BIO_s_connect 3" .TH BIO_s_connect 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BIO_s_connect, BIO_set_conn_hostname, BIO_set_conn_port, BIO_set_conn_ip, BIO_set_conn_int_port, BIO_get_conn_hostname, BIO_get_conn_port, BIO_get_conn_ip, BIO_get_conn_int_port, BIO_set_nbio, BIO_do_connect \- connect BIO .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& BIO_METHOD * BIO_s_connect(void); \& \& BIO *BIO_new_connect(char *name); \& \& long BIO_set_conn_hostname(BIO *b, char *name); \& long BIO_set_conn_port(BIO *b, char *port); \& long BIO_set_conn_ip(BIO *b, char *ip); \& long BIO_set_conn_int_port(BIO *b, char *port); \& char *BIO_get_conn_hostname(BIO *b); \& char *BIO_get_conn_port(BIO *b); \& char *BIO_get_conn_ip(BIO *b, dummy); \& long BIO_get_conn_int_port(BIO *b, int port); \& \& long BIO_set_nbio(BIO *b, long n); \& \& int BIO_do_connect(BIO *b); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIBIO_s_connect()\fR returns the connect \s-1BIO\s0 method. This is a wrapper round the platform's \s-1TCP/IP\s0 socket connection routines. .PP Using connect BIOs, \s-1TCP/IP\s0 connections can be made and data transferred using only \s-1BIO\s0 routines. In this way any platform specific operations are hidden by the \s-1BIO\s0 abstraction. .PP Read and write operations on a connect \s-1BIO\s0 will perform I/O on the underlying connection. If no connection is established and the port and hostname (see below) is set up properly then a connection is established first. .PP Connect BIOs support \fIBIO_puts()\fR but not \fIBIO_gets()\fR. .PP If the close flag is set on a connect \s-1BIO\s0 then any active connection is shutdown and the socket closed when the \s-1BIO\s0 is freed. .PP Calling \fIBIO_reset()\fR on a connect \s-1BIO\s0 will close any active connection and reset the \s-1BIO\s0 into a state where it can connect to the same host again. .PP \&\fIBIO_get_fd()\fR places the underlying socket in \fBc\fR if it is not \s-1NULL\s0, it also returns the socket . If \fBc\fR is not \s-1NULL\s0 it should be of type (int *). .PP \&\fIBIO_set_conn_hostname()\fR uses the string \fBname\fR to set the hostname. The hostname can be an \s-1IP\s0 address. The hostname can also include the port in the form hostname:port . It is also acceptable to use the form \*(L"hostname/any/other/path\*(R" or \*(L"hostname:port/any/other/path\*(R". .PP \&\fIBIO_set_conn_port()\fR sets the port to \fBport\fR. \fBport\fR can be the numerical form or a string such as \*(L"http\*(R". A string will be looked up first using \fIgetservbyname()\fR on the host platform but if that fails a standard table of port names will be used. Currently the list is http, telnet, socks, https, ssl, ftp, gopher and wais. .PP \&\fIBIO_set_conn_ip()\fR sets the \s-1IP\s0 address to \fBip\fR using binary form, that is four bytes specifying the \s-1IP\s0 address in big-endian form. .PP \&\fIBIO_set_conn_int_port()\fR sets the port using \fBport\fR. \fBport\fR should be of type (int *). .PP \&\fIBIO_get_conn_hostname()\fR returns the hostname of the connect \s-1BIO\s0 or \&\s-1NULL\s0 if the \s-1BIO\s0 is initialized but no hostname is set. This return value is an internal pointer which should not be modified. .PP \&\fIBIO_get_conn_port()\fR returns the port as a string. .PP \&\fIBIO_get_conn_ip()\fR returns the \s-1IP\s0 address in binary form. .PP \&\fIBIO_get_conn_int_port()\fR returns the port as an int. .PP \&\fIBIO_set_nbio()\fR sets the non blocking I/O flag to \fBn\fR. If \fBn\fR is zero then blocking I/O is set. If \fBn\fR is 1 then non blocking I/O is set. Blocking I/O is the default. The call to \fIBIO_set_nbio()\fR should be made before the connection is established because non blocking I/O is set during the connect process. .PP \&\fIBIO_new_connect()\fR combines \fIBIO_new()\fR and \fIBIO_set_conn_hostname()\fR into a single call: that is it creates a new connect \s-1BIO\s0 with \fBname\fR. .PP \&\fIBIO_do_connect()\fR attempts to connect the supplied \s-1BIO\s0. It returns 1 if the connection was established successfully. A zero or negative value is returned if the connection could not be established, the call \fIBIO_should_retry()\fR should be used for non blocking connect BIOs to determine if the call should be retried. .SH "NOTES" .IX Header "NOTES" If blocking I/O is set then a non positive return value from any I/O call is caused by an error condition, although a zero return will normally mean that the connection was closed. .PP If the port name is supplied as part of the host name then this will override any value set with \fIBIO_set_conn_port()\fR. This may be undesirable if the application does not wish to allow connection to arbitrary ports. This can be avoided by checking for the presence of the ':' character in the passed hostname and either indicating an error or truncating the string at that point. .PP The values returned by \fIBIO_get_conn_hostname()\fR, \fIBIO_get_conn_port()\fR, \&\fIBIO_get_conn_ip()\fR and \fIBIO_get_conn_int_port()\fR are updated when a connection attempt is made. Before any connection attempt the values returned are those set by the application itself. .PP Applications do not have to call \fIBIO_do_connect()\fR but may wish to do so to separate the connection process from other I/O processing. .PP If non blocking I/O is set then retries will be requested as appropriate. .PP It addition to \fIBIO_should_read()\fR and \fIBIO_should_write()\fR it is also possible for \fIBIO_should_io_special()\fR to be true during the initial connection process with the reason \s-1BIO_RR_CONNECT\s0. If this is returned then this is an indication that a connection attempt would block, the application should then take appropriate action to wait until the underlying socket has connected and retry the call. .PP \&\fIBIO_set_conn_hostname()\fR, \fIBIO_set_conn_port()\fR, \fIBIO_set_conn_ip()\fR, \&\fIBIO_set_conn_int_port()\fR, \fIBIO_get_conn_hostname()\fR, \fIBIO_get_conn_port()\fR, \&\fIBIO_get_conn_ip()\fR, \fIBIO_get_conn_int_port()\fR, \fIBIO_set_nbio()\fR and \&\fIBIO_do_connect()\fR are macros. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIBIO_s_connect()\fR returns the connect \s-1BIO\s0 method. .PP \&\fIBIO_get_fd()\fR returns the socket or \-1 if the \s-1BIO\s0 has not been initialized. .PP \&\fIBIO_set_conn_hostname()\fR, \fIBIO_set_conn_port()\fR, \fIBIO_set_conn_ip()\fR and \&\fIBIO_set_conn_int_port()\fR always return 1. .PP \&\fIBIO_get_conn_hostname()\fR returns the connected hostname or \s-1NULL\s0 is none was set. .PP \&\fIBIO_get_conn_port()\fR returns a string representing the connected port or \s-1NULL\s0 if not set. .PP \&\fIBIO_get_conn_ip()\fR returns a pointer to the connected \s-1IP\s0 address in binary form or all zeros if not set. .PP \&\fIBIO_get_conn_int_port()\fR returns the connected port or 0 if none was set. .PP \&\fIBIO_set_nbio()\fR always returns 1. .PP \&\fIBIO_do_connect()\fR returns 1 if the connection was successfully established and 0 or \-1 if the connection failed. .SH "EXAMPLE" .IX Header "EXAMPLE" This is example connects to a webserver on the local host and attempts to retrieve a page and copy the result to standard output. .PP .Vb 10 \& BIO *cbio, *out; \& int len; \& char tmpbuf[1024]; \& ERR_load_crypto_strings(); \& cbio = BIO_new_connect("localhost:http"); \& out = BIO_new_fp(stdout, BIO_NOCLOSE); \& if(BIO_do_connect(cbio) <= 0) { \& fprintf(stderr, "Error connecting to server\en"); \& ERR_print_errors_fp(stderr); \& /* whatever ... */ \& } \& BIO_puts(cbio, "GET / HTTP/1.0\en\en"); \& for(;;) { \& len = BIO_read(cbio, tmpbuf, 1024); \& if(len <= 0) break; \& BIO_write(out, tmpbuf, len); \& } \& BIO_free(cbio); \& BIO_free(out); .Ve .SH "SEE ALSO" .IX Header "SEE ALSO" \&\s-1TBA\s0 07070100048c24000081a40000000000000000000000015135961200001153000000b600010002ffffffffffffffff0000002700000000root/usr/local/ssl/man/man3/DSA_size.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DSA_size 3" .TH DSA_size 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DSA_size \- get DSA signature size .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int DSA_size(const DSA *dsa); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" This function returns the size of an \s-1ASN\s0.1 encoded \s-1DSA\s0 signature in bytes. It can be used to determine how much memory must be allocated for a \s-1DSA\s0 signature. .PP \&\fBdsa\->q\fR must not be \fB\s-1NULL\s0\fR. .SH "RETURN VALUE" .IX Header "RETURN VALUE" The size in bytes. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdsa\fR\|(3), \fIDSA_sign\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDSA_size()\fR is available in all versions of SSLeay and OpenSSL. 07070100048cab000081a400000000000000000000000151359623000011db000000b600010002ffffffffffffffff0000002e00000000root/usr/local/ssl/man/man3/SSL_get_version.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_get_version 3" .TH SSL_get_version 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_get_version \- get the protocol version of a connection. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& const char *SSL_get_version(const SSL *ssl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_get_cipher_version()\fR returns the name of the protocol used for the connection \fBssl\fR. .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following strings can occur: .IP "SSLv2" 4 .IX Item "SSLv2" The connection uses the SSLv2 protocol. .IP "SSLv3" 4 .IX Item "SSLv3" The connection uses the SSLv3 protocol. .IP "TLSv1" 4 .IX Item "TLSv1" The connection uses the TLSv1 protocol. .IP "unknown" 4 .IX Item "unknown" This indicates that no version has been set (no connection established). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3) 07070100048bfc000081a40000000000000000000000015135960e000014bf000000b600010002ffffffffffffffff0000002500000000root/usr/local/ssl/man/man3/BN_new.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BN_new 3" .TH BN_new 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BN_new, BN_init, BN_clear, BN_free, BN_clear_free \- allocate and free BIGNUMs .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& BIGNUM *BN_new(void); \& \& void BN_init(BIGNUM *); \& \& void BN_clear(BIGNUM *a); \& \& void BN_free(BIGNUM *a); \& \& void BN_clear_free(BIGNUM *a); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIBN_new()\fR allocates and initializes a \fB\s-1BIGNUM\s0\fR structure. \fIBN_init()\fR initializes an existing uninitialized \fB\s-1BIGNUM\s0\fR. .PP \&\fIBN_clear()\fR is used to destroy sensitive data such as keys when they are no longer needed. It erases the memory used by \fBa\fR and sets it to the value 0. .PP \&\fIBN_free()\fR frees the components of the \fB\s-1BIGNUM\s0\fR, and if it was created by \fIBN_new()\fR, also the structure itself. \fIBN_clear_free()\fR additionally overwrites the data before the memory is returned to the system. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIBN_new()\fR returns a pointer to the \fB\s-1BIGNUM\s0\fR. If the allocation fails, it returns \fB\s-1NULL\s0\fR and sets an error code that can be obtained by \fIERR_get_error\fR\|(3). .PP \&\fIBN_init()\fR, \fIBN_clear()\fR, \fIBN_free()\fR and \fIBN_clear_free()\fR have no return values. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIbn\fR\|(3), \fIERR_get_error\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIBN_new()\fR, \fIBN_clear()\fR, \fIBN_free()\fR and \fIBN_clear_free()\fR are available in all versions on SSLeay and OpenSSL. \fIBN_init()\fR was added in SSLeay 0.9.1b. 07070100048cbd000081a40000000000000000000000015135961800001b0d000000b600010002ffffffffffffffff0000003900000000root/usr/local/ssl/man/man3/X509_NAME_ENTRY_get_object.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "X509_NAME_ENTRY_get_object 3" .TH X509_NAME_ENTRY_get_object 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" X509_NAME_ENTRY_get_object, X509_NAME_ENTRY_get_data, X509_NAME_ENTRY_set_object, X509_NAME_ENTRY_set_data, X509_NAME_ENTRY_create_by_txt, X509_NAME_ENTRY_create_by_NID, X509_NAME_ENTRY_create_by_OBJ \- X509_NAME_ENTRY utility functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& ASN1_OBJECT * X509_NAME_ENTRY_get_object(X509_NAME_ENTRY *ne); \& ASN1_STRING * X509_NAME_ENTRY_get_data(X509_NAME_ENTRY *ne); \& \& int X509_NAME_ENTRY_set_object(X509_NAME_ENTRY *ne, ASN1_OBJECT *obj); \& int X509_NAME_ENTRY_set_data(X509_NAME_ENTRY *ne, int type, const unsigned char *bytes, int len); \& \& X509_NAME_ENTRY *X509_NAME_ENTRY_create_by_txt(X509_NAME_ENTRY **ne, const char *field, int type, const unsigned char *bytes, int len); \& X509_NAME_ENTRY *X509_NAME_ENTRY_create_by_NID(X509_NAME_ENTRY **ne, int nid, int type,unsigned char *bytes, int len); \& X509_NAME_ENTRY *X509_NAME_ENTRY_create_by_OBJ(X509_NAME_ENTRY **ne, ASN1_OBJECT *obj, int type, const unsigned char *bytes, int len); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIX509_NAME_ENTRY_get_object()\fR retrieves the field name of \fBne\fR in and \fB\s-1ASN1_OBJECT\s0\fR structure. .PP \&\fIX509_NAME_ENTRY_get_data()\fR retrieves the field value of \fBne\fR in and \fB\s-1ASN1_STRING\s0\fR structure. .PP \&\fIX509_NAME_ENTRY_set_object()\fR sets the field name of \fBne\fR to \fBobj\fR. .PP \&\fIX509_NAME_ENTRY_set_data()\fR sets the field value of \fBne\fR to string type \&\fBtype\fR and value determined by \fBbytes\fR and \fBlen\fR. .PP \&\fIX509_NAME_ENTRY_create_by_txt()\fR, \fIX509_NAME_ENTRY_create_by_NID()\fR and \fIX509_NAME_ENTRY_create_by_OBJ()\fR create and return an \&\fBX509_NAME_ENTRY\fR structure. .SH "NOTES" .IX Header "NOTES" \&\fIX509_NAME_ENTRY_get_object()\fR and \fIX509_NAME_ENTRY_get_data()\fR can be used to examine an \fBX509_NAME_ENTRY\fR function as returned by \&\fIX509_NAME_get_entry()\fR for example. .PP \&\fIX509_NAME_ENTRY_create_by_txt()\fR, \fIX509_NAME_ENTRY_create_by_NID()\fR, and \fIX509_NAME_ENTRY_create_by_OBJ()\fR create and return an .PP \&\fIX509_NAME_ENTRY_create_by_txt()\fR, \fIX509_NAME_ENTRY_create_by_OBJ()\fR, \&\fIX509_NAME_ENTRY_create_by_NID()\fR and \fIX509_NAME_ENTRY_set_data()\fR are seldom used in practice because \fBX509_NAME_ENTRY\fR structures are almost always part of \fBX509_NAME\fR structures and the corresponding \fBX509_NAME\fR functions are typically used to create and add new entries in a single operation. .PP The arguments of these functions support similar options to the similarly named ones of the corresponding \fBX509_NAME\fR functions such as \&\fIX509_NAME_add_entry_by_txt()\fR. So for example \fBtype\fR can be set to \&\fB\s-1MBSTRING_ASC\s0\fR but in the case of \fIX509_set_data()\fR the field name must be set first so the relevant field information can be looked up internally. .SH "RETURN VALUES" .IX Header "RETURN VALUES" .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fId2i_X509_NAME\fR\|(3), \&\fIOBJ_nid2obj\fR\|(3),\fIOBJ_nid2obj\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1TBA\s0 07070100048c5f000081a400000000000000000000000151359617000025e8000000b600010002ffffffffffffffff0000003300000000root/usr/local/ssl/man/man3/RSA_get_ex_new_index.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "RSA_get_ex_new_index 3" .TH RSA_get_ex_new_index 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" RSA_get_ex_new_index, RSA_set_ex_data, RSA_get_ex_data \- add application specific data to RSA structures .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int RSA_get_ex_new_index(long argl, void *argp, \& CRYPTO_EX_new *new_func, \& CRYPTO_EX_dup *dup_func, \& CRYPTO_EX_free *free_func); \& \& int RSA_set_ex_data(RSA *r, int idx, void *arg); \& \& void *RSA_get_ex_data(RSA *r, int idx); \& \& typedef int CRYPTO_EX_new(void *parent, void *ptr, CRYPTO_EX_DATA *ad, \& int idx, long argl, void *argp); \& typedef void CRYPTO_EX_free(void *parent, void *ptr, CRYPTO_EX_DATA *ad, \& int idx, long argl, void *argp); \& typedef int CRYPTO_EX_dup(CRYPTO_EX_DATA *to, CRYPTO_EX_DATA *from, void *from_d, \& int idx, long argl, void *argp); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Several OpenSSL structures can have application specific data attached to them. This has several potential uses, it can be used to cache data associated with a structure (for example the hash of some part of the structure) or some additional data (for example a handle to the data in an external library). .PP Since the application data can be anything at all it is passed and retrieved as a \fBvoid *\fR type. .PP The \fB\f(BIRSA_get_ex_new_index()\fB\fR function is initially called to \*(L"register\*(R" some new application specific data. It takes three optional function pointers which are called when the parent structure (in this case an \s-1RSA\s0 structure) is initially created, when it is copied and when it is freed up. If any or all of these function pointer arguments are not used they should be set to \s-1NULL\s0. The precise manner in which these function pointers are called is described in more detail below. \fB\f(BIRSA_get_ex_new_index()\fB\fR also takes additional long and pointer parameters which will be passed to the supplied functions but which otherwise have no special meaning. It returns an \fBindex\fR which should be stored (typically in a static variable) and passed used in the \fBidx\fR parameter in the remaining functions. Each successful call to \fB\f(BIRSA_get_ex_new_index()\fB\fR will return an index greater than any previously returned, this is important because the optional functions are called in order of increasing index value. .PP \&\fB\f(BIRSA_set_ex_data()\fB\fR is used to set application specific data, the data is supplied in the \fBarg\fR parameter and its precise meaning is up to the application. .PP \&\fB\f(BIRSA_get_ex_data()\fB\fR is used to retrieve application specific data. The data is returned to the application, this will be the same value as supplied to a previous \fB\f(BIRSA_set_ex_data()\fB\fR call. .PP \&\fB\f(BInew_func()\fB\fR is called when a structure is initially allocated (for example with \fB\f(BIRSA_new()\fB\fR. The parent structure members will not have any meaningful values at this point. This function will typically be used to allocate any application specific structure. .PP \&\fB\f(BIfree_func()\fB\fR is called when a structure is being freed up. The dynamic parent structure members should not be accessed because they will be freed up when this function is called. .PP \&\fB\f(BInew_func()\fB\fR and \fB\f(BIfree_func()\fB\fR take the same parameters. \fBparent\fR is a pointer to the parent \s-1RSA\s0 structure. \fBptr\fR is a the application specific data (this wont be of much use in \fB\f(BInew_func()\fB\fR. \fBad\fR is a pointer to the \&\fB\s-1CRYPTO_EX_DATA\s0\fR structure from the parent \s-1RSA\s0 structure: the functions \&\fB\f(BICRYPTO_get_ex_data()\fB\fR and \fB\f(BICRYPTO_set_ex_data()\fB\fR can be called to manipulate it. The \fBidx\fR parameter is the index: this will be the same value returned by \&\fB\f(BIRSA_get_ex_new_index()\fB\fR when the functions were initially registered. Finally the \fBargl\fR and \fBargp\fR parameters are the values originally passed to the same corresponding parameters when \fB\f(BIRSA_get_ex_new_index()\fB\fR was called. .PP \&\fB\f(BIdup_func()\fB\fR is called when a structure is being copied. Pointers to the destination and source \fB\s-1CRYPTO_EX_DATA\s0\fR structures are passed in the \fBto\fR and \&\fBfrom\fR parameters respectively. The \fBfrom_d\fR parameter is passed a pointer to the source application data when the function is called, when the function returns the value is copied to the destination: the application can thus modify the data pointed to by \fBfrom_d\fR and have different values in the source and destination. The \fBidx\fR, \fBargl\fR and \fBargp\fR parameters are the same as those in \fB\f(BInew_func()\fB\fR and \fB\f(BIfree_func()\fB\fR. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fB\f(BIRSA_get_ex_new_index()\fB\fR returns a new index or \-1 on failure (note 0 is a valid index value). .PP \&\fB\f(BIRSA_set_ex_data()\fB\fR returns 1 on success or 0 on failure. .PP \&\fB\f(BIRSA_get_ex_data()\fB\fR returns the application data or 0 on failure. 0 may also be valid application data but currently it can only fail if given an invalid \fBidx\fR parameter. .PP \&\fB\f(BInew_func()\fB\fR and \fB\f(BIdup_func()\fB\fR should return 0 for failure and 1 for success. .PP On failure an error code can be obtained from \fIERR_get_error\fR\|(3). .SH "BUGS" .IX Header "BUGS" \&\fB\f(BIdup_func()\fB\fR is currently never called. .PP The return value of \fB\f(BInew_func()\fB\fR is ignored. .PP The \fB\f(BInew_func()\fB\fR function isn't very useful because no meaningful values are present in the parent \s-1RSA\s0 structure when it is called. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIrsa\fR\|(3), \fICRYPTO_set_ex_data\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIRSA_get_ex_new_index()\fR, \fIRSA_set_ex_data()\fR and \fIRSA_get_ex_data()\fR are available since SSLeay 0.9.0. 07070100048bdd000081a40000000000000000000000015135960b00001a2f000000b600010002ffffffffffffffff0000002b00000000root/usr/local/ssl/man/man3/BIO_f_cipher.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BIO_f_cipher 3" .TH BIO_f_cipher 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BIO_f_cipher, BIO_set_cipher, BIO_get_cipher_status, BIO_get_cipher_ctx \- cipher BIO filter .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& #include \& #include \& \& BIO_METHOD * BIO_f_cipher(void); \& void BIO_set_cipher(BIO *b,const EVP_CIPHER *cipher, \& unsigned char *key, unsigned char *iv, int enc); \& int BIO_get_cipher_status(BIO *b) \& int BIO_get_cipher_ctx(BIO *b, EVP_CIPHER_CTX **pctx) .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIBIO_f_cipher()\fR returns the cipher \s-1BIO\s0 method. This is a filter \&\s-1BIO\s0 that encrypts any data written through it, and decrypts any data read from it. It is a \s-1BIO\s0 wrapper for the cipher routines \&\fIEVP_CipherInit()\fR, \fIEVP_CipherUpdate()\fR and \fIEVP_CipherFinal()\fR. .PP Cipher BIOs do not support \fIBIO_gets()\fR or \fIBIO_puts()\fR. .PP \&\fIBIO_flush()\fR on an encryption \s-1BIO\s0 that is being written through is used to signal that no more data is to be encrypted: this is used to flush and possibly pad the final block through the \s-1BIO\s0. .PP \&\fIBIO_set_cipher()\fR sets the cipher of \s-1BIO\s0 \fBb\fR to \fBcipher\fR using key \fBkey\fR and \s-1IV\s0 \fBiv\fR. \fBenc\fR should be set to 1 for encryption and zero for decryption. .PP When reading from an encryption \s-1BIO\s0 the final block is automatically decrypted and checked when \s-1EOF\s0 is detected. \fIBIO_get_cipher_status()\fR is a \fIBIO_ctrl()\fR macro which can be called to determine whether the decryption operation was successful. .PP \&\fIBIO_get_cipher_ctx()\fR is a \fIBIO_ctrl()\fR macro which retrieves the internal \&\s-1BIO\s0 cipher context. The retrieved context can be used in conjunction with the standard cipher routines to set it up. This is useful when \&\fIBIO_set_cipher()\fR is not flexible enough for the applications needs. .SH "NOTES" .IX Header "NOTES" When encrypting \fIBIO_flush()\fR \fBmust\fR be called to flush the final block through the \s-1BIO\s0. If it is not then the final block will fail a subsequent decrypt. .PP When decrypting an error on the final block is signalled by a zero return value from the read operation. A successful decrypt followed by \s-1EOF\s0 will also return zero for the final read. \fIBIO_get_cipher_status()\fR should be called to determine if the decrypt was successful. .PP As always, if \fIBIO_gets()\fR or \fIBIO_puts()\fR support is needed then it can be achieved by preceding the cipher \s-1BIO\s0 with a buffering \s-1BIO\s0. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIBIO_f_cipher()\fR returns the cipher \s-1BIO\s0 method. .PP \&\fIBIO_set_cipher()\fR does not return a value. .PP \&\fIBIO_get_cipher_status()\fR returns 1 for a successful decrypt and 0 for failure. .PP \&\fIBIO_get_cipher_ctx()\fR currently always returns 1. .SH "EXAMPLES" .IX Header "EXAMPLES" \&\s-1TBA\s0 .SH "SEE ALSO" .IX Header "SEE ALSO" \&\s-1TBA\s0 07070100048c09000081a40000000000000000000000015135961000001a25000000b600010002ffffffffffffffff0000003300000000root/usr/local/ssl/man/man3/CMS_get0_SignerInfos.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CMS_get0_SignerInfos 3" .TH CMS_get0_SignerInfos 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& CMS_get0_SignerInfos, CMS_SignerInfo_get0_signer_id, CMS_SignerInfo_cert_cmp, CMS_set1_signer_certs \- CMS signedData signer functions. .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& STACK_OF(CMS_SignerInfo) *CMS_get0_SignerInfos(CMS_ContentInfo *cms); \& \& int CMS_SignerInfo_get0_signer_id(CMS_SignerInfo *si, ASN1_OCTET_STRING **keyid, X509_NAME **issuer, ASN1_INTEGER **sno); \& int CMS_SignerInfo_cert_cmp(CMS_SignerInfo *si, X509 *cert); \& void CMS_SignerInfo_set1_signer_cert(CMS_SignerInfo *si, X509 *signer); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The function \fICMS_get0_SignerInfos()\fR returns all the CMS_SignerInfo structures associated with a \s-1CMS\s0 signedData structure. .PP \&\fICMS_SignerInfo_get0_signer_id()\fR retrieves the certificate signer identifier associated with a specific CMS_SignerInfo structure \fBsi\fR. Either the keyidentifier will be set in \fBkeyid\fR or \fBboth\fR issuer name and serial number in \fBissuer\fR and \fBsno\fR. .PP \&\fICMS_SignerInfo_cert_cmp()\fR compares the certificate \fBcert\fR against the signer identifier \fBsi\fR. It returns zero if the comparison is successful and non zero if not. .PP \&\fICMS_SignerInfo_set1_signer_cert()\fR sets the signers certificate of \fBsi\fR to \&\fBsigner\fR. .SH "NOTES" .IX Header "NOTES" The main purpose of these functions is to enable an application to lookup signers certificates using any appropriate technique when the simpler method of \fICMS_verify()\fR is not appropriate. .PP In typical usage and application will retrieve all CMS_SignerInfo structures using \fICMS_get0_SignerInfo()\fR and retrieve the identifier information using \&\s-1CMS\s0. It will then obtain the signer certificate by some unspecified means (or return and error if it cannot be found) and set it using \&\fICMS_SignerInfo_set1_signer_cert()\fR. .PP Once all signer certificates have been set \fICMS_verify()\fR can be used. .PP Although \fICMS_get0_SignerInfos()\fR can return \s-1NULL\s0 is an error occur \fBor\fR if there are no signers this is not a problem in practice because the only error which can occur is if the \fBcms\fR structure is not of type signedData due to application error. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fICMS_get0_SignerInfos()\fR returns all CMS_SignerInfo structures, or \s-1NULL\s0 there are no signers or an error occurs. .PP \&\fICMS_SignerInfo_get0_signer_id()\fR returns 1 for success and 0 for failure. .PP \&\fICMS_SignerInfo_cert_cmp()\fR returns 0 for a successful comparison and non zero otherwise. .PP \&\fICMS_SignerInfo_set1_signer_cert()\fR does not return a value. .PP Any error can be obtained from \fIERR_get_error\fR\|(3) .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fICMS_verify\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" These functions were first was added to OpenSSL 0.9.8 07070100048c02000081a40000000000000000000000015135960f000017d0000000b600010002ffffffffffffffff0000002c00000000root/usr/local/ssl/man/man3/CMS_add0_cert.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CMS_add0_cert 3" .TH CMS_add0_cert 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& CMS_add0_cert, CMS_add1_cert, CMS_get1_certs, CMS_add0_crl, CMS_get1_crls, \- CMS certificate and CRL utility functions .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int CMS_add0_cert(CMS_ContentInfo *cms, X509 *cert); \& int CMS_add1_cert(CMS_ContentInfo *cms, X509 *cert); \& STACK_OF(X509) *CMS_get1_certs(CMS_ContentInfo *cms); \& \& int CMS_add0_crl(CMS_ContentInfo *cms, X509_CRL *crl); \& int CMS_add1_crl(CMS_ContentInfo *cms, X509_CRL *crl); \& STACK_OF(X509_CRL) *CMS_get1_crls(CMS_ContentInfo *cms); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fICMS_add0_cert()\fR and \fICMS_add1_cert()\fR add certificate \fBcert\fR to \fBcms\fR. must be of type signed data or enveloped data. .PP \&\fICMS_get1_certs()\fR returns all certificates in \fBcms\fR. .PP \&\fICMS_add0_crl()\fR and \fICMS_add1_crl()\fR add \s-1CRL\s0 \fBcrl\fR to \fBcms\fR. \fICMS_get1_crls()\fR returns any CRLs in \fBcms\fR. .SH "NOTES" .IX Header "NOTES" The CMS_ContentInfo structure \fBcms\fR must be of type signed data or enveloped data or an error will be returned. .PP For signed data certificates and CRLs are added to the \fBcertificates\fR and \&\fBcrls\fR fields of SignedData structure. For enveloped data they are added to \&\fBOriginatorInfo\fR. .PP As the \fB0\fR implies \fICMS_add0_cert()\fR adds \fBcert\fR internally to \fBcms\fR and it must not be freed up after the call as opposed to \fICMS_add1_cert()\fR where \fBcert\fR must be freed up. .PP The same certificate or \s-1CRL\s0 must not be added to the same cms structure more than once. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fICMS_add0_cert()\fR, \fICMS_add1_cert()\fR and \fICMS_add0_crl()\fR and \fICMS_add1_crl()\fR return 1 for success and 0 for failure. .PP \&\fICMS_get1_certs()\fR and \fICMS_get1_crls()\fR return the \s-1STACK\s0 of certificates or CRLs or \s-1NULL\s0 if there are none or an error occurs. The only error which will occur in practice is if the \fBcms\fR type is invalid. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \&\fICMS_sign\fR\|(3), \&\fICMS_encrypt\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fICMS_add0_cert()\fR, \fICMS_add1_cert()\fR, \fICMS_get1_certs()\fR, \fICMS_add0_crl()\fR and \fICMS_get1_crls()\fR were all first added to OpenSSL 0.9.8 07070100048c9e000081a400000000000000000000000151359622000014ea000000b600010002ffffffffffffffff0000003500000000root/usr/local/ssl/man/man3/SSL_get_client_CA_list.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_get_client_CA_list 3" .TH SSL_get_client_CA_list 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_get_client_CA_list, SSL_CTX_get_client_CA_list \- get list of client CAs .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& STACK_OF(X509_NAME) *SSL_get_client_CA_list(const SSL *s); \& STACK_OF(X509_NAME) *SSL_CTX_get_client_CA_list(const SSL_CTX *ctx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_get_client_CA_list()\fR returns the list of client CAs explicitly set for \&\fBctx\fR using \fISSL_CTX_set_client_CA_list\fR\|(3). .PP \&\fISSL_get_client_CA_list()\fR returns the list of client CAs explicitly set for \fBssl\fR using \fISSL_set_client_CA_list()\fR or \fBssl\fR's \s-1SSL_CTX\s0 object with \&\fISSL_CTX_set_client_CA_list\fR\|(3), when in server mode. In client mode, SSL_get_client_CA_list returns the list of client CAs sent from the server, if any. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_CTX_set_client_CA_list()\fR and \fISSL_set_client_CA_list()\fR do not return diagnostic information. .PP \&\fISSL_CTX_add_client_CA()\fR and \fISSL_add_client_CA()\fR have the following return values: .IP "\s-1STACK_OF\s0(X509_NAMES)" 4 .IX Item "STACK_OF(X509_NAMES)" List of \s-1CA\s0 names explicitly set (for \fBctx\fR or in server mode) or send by the server (client mode). .IP "\s-1NULL\s0" 4 .IX Item "NULL" No client \s-1CA\s0 list was explicitly set (for \fBctx\fR or in server mode) or the server did not send a list of CAs (client mode). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \&\fISSL_CTX_set_client_CA_list\fR\|(3), \&\fISSL_CTX_set_client_cert_cb\fR\|(3) 07070100048bde000081a40000000000000000000000015135960b00002334000000b600010002ffffffffffffffff0000002700000000root/usr/local/ssl/man/man3/BIO_f_md.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BIO_f_md 3" .TH BIO_f_md 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BIO_f_md, BIO_set_md, BIO_get_md, BIO_get_md_ctx \- message digest BIO filter .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& #include \& #include \& \& BIO_METHOD * BIO_f_md(void); \& int BIO_set_md(BIO *b,EVP_MD *md); \& int BIO_get_md(BIO *b,EVP_MD **mdp); \& int BIO_get_md_ctx(BIO *b,EVP_MD_CTX **mdcp); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIBIO_f_md()\fR returns the message digest \s-1BIO\s0 method. This is a filter \&\s-1BIO\s0 that digests any data passed through it, it is a \s-1BIO\s0 wrapper for the digest routines \fIEVP_DigestInit()\fR, \fIEVP_DigestUpdate()\fR and \fIEVP_DigestFinal()\fR. .PP Any data written or read through a digest \s-1BIO\s0 using \fIBIO_read()\fR and \&\fIBIO_write()\fR is digested. .PP \&\fIBIO_gets()\fR, if its \fBsize\fR parameter is large enough finishes the digest calculation and returns the digest value. \fIBIO_puts()\fR is not supported. .PP \&\fIBIO_reset()\fR reinitialises a digest \s-1BIO\s0. .PP \&\fIBIO_set_md()\fR sets the message digest of \s-1BIO\s0 \fBb\fR to \fBmd\fR: this must be called to initialize a digest \s-1BIO\s0 before any data is passed through it. It is a \fIBIO_ctrl()\fR macro. .PP \&\fIBIO_get_md()\fR places the a pointer to the digest BIOs digest method in \fBmdp\fR, it is a \fIBIO_ctrl()\fR macro. .PP \&\fIBIO_get_md_ctx()\fR returns the digest BIOs context into \fBmdcp\fR. .SH "NOTES" .IX Header "NOTES" The context returned by \fIBIO_get_md_ctx()\fR can be used in calls to \fIEVP_DigestFinal()\fR and also the signature routines \fIEVP_SignFinal()\fR and \fIEVP_VerifyFinal()\fR. .PP The context returned by \fIBIO_get_md_ctx()\fR is an internal context structure. Changes made to this context will affect the digest \&\s-1BIO\s0 itself and the context pointer will become invalid when the digest \&\s-1BIO\s0 is freed. .PP After the digest has been retrieved from a digest \s-1BIO\s0 it must be reinitialized by calling \fIBIO_reset()\fR, or \fIBIO_set_md()\fR before any more data is passed through it. .PP If an application needs to call \fIBIO_gets()\fR or \fIBIO_puts()\fR through a chain containing digest BIOs then this can be done by prepending a buffering \s-1BIO\s0. .PP Before OpenSSL 1.0.0 the call to \fIBIO_get_md_ctx()\fR would only work if the \s-1BIO\s0 had been initialized for example by calling \fIBIO_set_md()\fR ). In OpenSSL 1.0.0 and later the context is always returned and the \s-1BIO\s0 is state is set to initialized. This allows applications to initialize the context externally if the standard calls such as \fIBIO_set_md()\fR are not sufficiently flexible. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIBIO_f_md()\fR returns the digest \s-1BIO\s0 method. .PP \&\fIBIO_set_md()\fR, \fIBIO_get_md()\fR and \fIBIO_md_ctx()\fR return 1 for success and 0 for failure. .SH "EXAMPLES" .IX Header "EXAMPLES" The following example creates a \s-1BIO\s0 chain containing an \s-1SHA1\s0 and \s-1MD5\s0 digest \s-1BIO\s0 and passes the string \*(L"Hello World\*(R" through it. Error checking has been omitted for clarity. .PP .Vb 10 \& BIO *bio, *mdtmp; \& char message[] = "Hello World"; \& bio = BIO_new(BIO_s_null()); \& mdtmp = BIO_new(BIO_f_md()); \& BIO_set_md(mdtmp, EVP_sha1()); \& /* For BIO_push() we want to append the sink BIO and keep a note of \& * the start of the chain. \& */ \& bio = BIO_push(mdtmp, bio); \& mdtmp = BIO_new(BIO_f_md()); \& BIO_set_md(mdtmp, EVP_md5()); \& bio = BIO_push(mdtmp, bio); \& /* Note: mdtmp can now be discarded */ \& BIO_write(bio, message, strlen(message)); .Ve .PP The next example digests data by reading through a chain instead: .PP .Vb 10 \& BIO *bio, *mdtmp; \& char buf[1024]; \& int rdlen; \& bio = BIO_new_file(file, "rb"); \& mdtmp = BIO_new(BIO_f_md()); \& BIO_set_md(mdtmp, EVP_sha1()); \& bio = BIO_push(mdtmp, bio); \& mdtmp = BIO_new(BIO_f_md()); \& BIO_set_md(mdtmp, EVP_md5()); \& bio = BIO_push(mdtmp, bio); \& do { \& rdlen = BIO_read(bio, buf, sizeof(buf)); \& /* Might want to do something with the data here */ \& } while(rdlen > 0); .Ve .PP This next example retrieves the message digests from a \s-1BIO\s0 chain and outputs them. This could be used with the examples above. .PP .Vb 10 \& BIO *mdtmp; \& unsigned char mdbuf[EVP_MAX_MD_SIZE]; \& int mdlen; \& int i; \& mdtmp = bio; /* Assume bio has previously been set up */ \& do { \& EVP_MD *md; \& mdtmp = BIO_find_type(mdtmp, BIO_TYPE_MD); \& if(!mdtmp) break; \& BIO_get_md(mdtmp, &md); \& printf("%s digest", OBJ_nid2sn(EVP_MD_type(md))); \& mdlen = BIO_gets(mdtmp, mdbuf, EVP_MAX_MD_SIZE); \& for(i = 0; i < mdlen; i++) printf(":%02X", mdbuf[i]); \& printf("\en"); \& mdtmp = BIO_next(mdtmp); \& } while(mdtmp); \& \& BIO_free_all(bio); .Ve .SH "BUGS" .IX Header "BUGS" The lack of support for \fIBIO_puts()\fR and the non standard behaviour of \&\fIBIO_gets()\fR could be regarded as anomalous. It could be argued that \fIBIO_gets()\fR and \fIBIO_puts()\fR should be passed to the next \s-1BIO\s0 in the chain and digest the data passed through and that digests should be retrieved using a separate \fIBIO_ctrl()\fR call. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\s-1TBA\s0 07070100048c86000081a40000000000000000000000015135962000001e48000000b600010002ffffffffffffffff0000003700000000root/usr/local/ssl/man/man3/SSL_CTX_set_msg_callback.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_set_msg_callback 3" .TH SSL_CTX_set_msg_callback 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_set_msg_callback, SSL_CTX_set_msg_callback_arg, SSL_set_msg_callback, SSL_get_msg_callback_arg \- install callback for observing protocol messages .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& void SSL_CTX_set_msg_callback(SSL_CTX *ctx, void (*cb)(int write_p, int version, int content_type, const void *buf, size_t len, SSL *ssl, void *arg)); \& void SSL_CTX_set_msg_callback_arg(SSL_CTX *ctx, void *arg); \& \& void SSL_set_msg_callback(SSL_CTX *ctx, void (*cb)(int write_p, int version, int content_type, const void *buf, size_t len, SSL *ssl, void *arg)); \& void SSL_set_msg_callback_arg(SSL_CTX *ctx, void *arg); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_set_msg_callback()\fR or \fISSL_set_msg_callback()\fR can be used to define a message callback function \fIcb\fR for observing all \s-1SSL/TLS\s0 protocol messages (such as handshake messages) that are received or sent. \fISSL_CTX_set_msg_callback_arg()\fR and \fISSL_set_msg_callback_arg()\fR can be used to set argument \fIarg\fR to the callback function, which is available for arbitrary application use. .PP \&\fISSL_CTX_set_msg_callback()\fR and \fISSL_CTX_set_msg_callback_arg()\fR specify default settings that will be copied to new \fB\s-1SSL\s0\fR objects by \&\fISSL_new\fR\|(3). \fISSL_set_msg_callback()\fR and \&\fISSL_set_msg_callback_arg()\fR modify the actual settings of an \fB\s-1SSL\s0\fR object. Using a \fB0\fR pointer for \fIcb\fR disables the message callback. .PP When \fIcb\fR is called by the \s-1SSL/TLS\s0 library for a protocol message, the function arguments have the following meaning: .IP "\fIwrite_p\fR" 4 .IX Item "write_p" This flag is \fB0\fR when a protocol message has been received and \fB1\fR when a protocol message has been sent. .IP "\fIversion\fR" 4 .IX Item "version" The protocol version according to which the protocol message is interpreted by the library. Currently, this is one of \&\fB\s-1SSL2_VERSION\s0\fR, \fB\s-1SSL3_VERSION\s0\fR and \fB\s-1TLS1_VERSION\s0\fR (for \s-1SSL\s0 2.0, \s-1SSL\s0 3.0 and \s-1TLS\s0 1.0, respectively). .IP "\fIcontent_type\fR" 4 .IX Item "content_type" In the case of \s-1SSL\s0 2.0, this is always \fB0\fR. In the case of \s-1SSL\s0 3.0 or \s-1TLS\s0 1.0, this is one of the \fBContentType\fR values defined in the protocol specification (\fBchange_cipher_spec(20)\fR, \fBalert(21)\fR, \&\fBhandshake(22)\fR; but never \fBapplication_data(23)\fR because the callback will only be called for protocol messages). .IP "\fIbuf\fR, \fIlen\fR" 4 .IX Item "buf, len" \&\fIbuf\fR points to a buffer containing the protocol message, which consists of \fIlen\fR bytes. The buffer is no longer valid after the callback function has returned. .IP "\fIssl\fR" 4 .IX Item "ssl" The \fB\s-1SSL\s0\fR object that received or sent the message. .IP "\fIarg\fR" 4 .IX Item "arg" The user-defined argument optionally defined by \&\fISSL_CTX_set_msg_callback_arg()\fR or \fISSL_set_msg_callback_arg()\fR. .SH "NOTES" .IX Header "NOTES" Protocol messages are passed to the callback function after decryption and fragment collection where applicable. (Thus record boundaries are not visible.) .PP If processing a received protocol message results in an error, the callback function may not be called. For example, the callback function will never see messages that are considered too large to be processed. .PP Due to automatic protocol version negotiation, \fIversion\fR is not necessarily the protocol version used by the sender of the message: If a \s-1TLS\s0 1.0 ClientHello message is received by an \s-1SSL\s0 3.0\-only server, \&\fIversion\fR will be \fB\s-1SSL3_VERSION\s0\fR. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_new\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fISSL_CTX_set_msg_callback()\fR, \fISSL_CTX_set_msg_callback_arg()\fR, \&\fISSL_set_msg_callback()\fR and \fISSL_get_msg_callback_arg()\fR were added in OpenSSL 0.9.7. 07070100048c01000081a40000000000000000000000015135960f0000154d000000b600010002ffffffffffffffff0000002600000000root/usr/local/ssl/man/man3/BN_zero.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BN_zero 3" .TH BN_zero 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BN_zero, BN_one, BN_value_one, BN_set_word, BN_get_word \- BIGNUM assignment operations .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int BN_zero(BIGNUM *a); \& int BN_one(BIGNUM *a); \& \& const BIGNUM *BN_value_one(void); \& \& int BN_set_word(BIGNUM *a, unsigned long w); \& unsigned long BN_get_word(BIGNUM *a); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIBN_zero()\fR, \fIBN_one()\fR and \fIBN_set_word()\fR set \fBa\fR to the values 0, 1 and \&\fBw\fR respectively. \fIBN_zero()\fR and \fIBN_one()\fR are macros. .PP \&\fIBN_value_one()\fR returns a \fB\s-1BIGNUM\s0\fR constant of value 1. This constant is useful for use in comparisons and assignment. .PP \&\fIBN_get_word()\fR returns \fBa\fR, if it can be represented as an unsigned long. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIBN_get_word()\fR returns the value \fBa\fR, and 0xffffffffL if \fBa\fR cannot be represented as an unsigned long. .PP \&\fIBN_zero()\fR, \fIBN_one()\fR and \fIBN_set_word()\fR return 1 on success, 0 otherwise. \&\fIBN_value_one()\fR returns the constant. .SH "BUGS" .IX Header "BUGS" Someone might change the constant. .PP If a \fB\s-1BIGNUM\s0\fR is equal to 0xffffffffL it can be represented as an unsigned long but this value is also returned on error. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIbn\fR\|(3), \fIBN_bn2bin\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIBN_zero()\fR, \fIBN_one()\fR and \fIBN_set_word()\fR are available in all versions of SSLeay and OpenSSL. \fIBN_value_one()\fR and \fIBN_get_word()\fR were added in SSLeay 0.8. .PP \&\fIBN_value_one()\fR was changed to return a true const \s-1BIGNUM\s0 * in OpenSSL 0.9.7. 07070100048bd7000081a40000000000000000000000015135960b0000134f000000b600010002ffffffffffffffff0000002e00000000root/usr/local/ssl/man/man3/ASN1_STRING_new.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "ASN1_STRING_new 3" .TH ASN1_STRING_new 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" ASN1_STRING_new, ASN1_STRING_type_new, ASN1_STRING_free \- ASN1_STRING allocation functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& ASN1_STRING * ASN1_STRING_new(void); \& ASN1_STRING * ASN1_STRING_type_new(int type); \& void ASN1_STRING_free(ASN1_STRING *a); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIASN1_STRING_new()\fR returns an allocated \fB\s-1ASN1_STRING\s0\fR structure. Its type is undefined. .PP \&\fIASN1_STRING_type_new()\fR returns an allocated \fB\s-1ASN1_STRING\s0\fR structure of type \fBtype\fR. .PP \&\fIASN1_STRING_free()\fR frees up \fBa\fR. .SH "NOTES" .IX Header "NOTES" Other string types call the \fB\s-1ASN1_STRING\s0\fR functions. For example \&\fIASN1_OCTET_STRING_new()\fR calls ASN1_STRING_type(V_ASN1_OCTET_STRING). .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIASN1_STRING_new()\fR and \fIASN1_STRING_type_new()\fR return a valid \&\s-1ASN1_STRING\s0 structure or \fB\s-1NULL\s0\fR if an error occurred. .PP \&\fIASN1_STRING_free()\fR does not return a value. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1TBA\s0 07070100048cb7000081a40000000000000000000000015135962400001793000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/SSL_set_shutdown.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_set_shutdown 3" .TH SSL_set_shutdown 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_set_shutdown, SSL_get_shutdown \- manipulate shutdown state of an SSL connection .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& void SSL_set_shutdown(SSL *ssl, int mode); \& \& int SSL_get_shutdown(const SSL *ssl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_set_shutdown()\fR sets the shutdown state of \fBssl\fR to \fBmode\fR. .PP \&\fISSL_get_shutdown()\fR returns the shutdown mode of \fBssl\fR. .SH "NOTES" .IX Header "NOTES" The shutdown state of an ssl connection is a bitmask of: .IP "0" 4 No shutdown setting, yet. .IP "\s-1SSL_SENT_SHUTDOWN\s0" 4 .IX Item "SSL_SENT_SHUTDOWN" A \*(L"close notify\*(R" shutdown alert was sent to the peer, the connection is being considered closed and the session is closed and correct. .IP "\s-1SSL_RECEIVED_SHUTDOWN\s0" 4 .IX Item "SSL_RECEIVED_SHUTDOWN" A shutdown alert was received form the peer, either a normal \*(L"close notify\*(R" or a fatal error. .PP \&\s-1SSL_SENT_SHUTDOWN\s0 and \s-1SSL_RECEIVED_SHUTDOWN\s0 can be set at the same time. .PP The shutdown state of the connection is used to determine the state of the ssl session. If the session is still open, when \&\fISSL_clear\fR\|(3) or \fISSL_free\fR\|(3) is called, it is considered bad and removed according to \s-1RFC2246\s0. The actual condition for a correctly closed session is \s-1SSL_SENT_SHUTDOWN\s0 (according to the \s-1TLS\s0 \s-1RFC\s0, it is acceptable to only send the \*(L"close notify\*(R" alert but to not wait for the peer's answer, when the underlying connection is closed). \&\fISSL_set_shutdown()\fR can be used to set this state without sending a close alert to the peer (see \fISSL_shutdown\fR\|(3)). .PP If a \*(L"close notify\*(R" was received, \s-1SSL_RECEIVED_SHUTDOWN\s0 will be set, for setting \s-1SSL_SENT_SHUTDOWN\s0 the application must however still call \&\fISSL_shutdown\fR\|(3) or \fISSL_set_shutdown()\fR itself. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_set_shutdown()\fR does not return diagnostic information. .PP \&\fISSL_get_shutdown()\fR returns the current setting. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_shutdown\fR\|(3), \&\fISSL_CTX_set_quiet_shutdown\fR\|(3), \&\fISSL_clear\fR\|(3), \fISSL_free\fR\|(3) 07070100048bef000081a40000000000000000000000015135960d000023a4000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/BIO_should_retry.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BIO_should_retry 3" .TH BIO_should_retry 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BIO_should_retry, BIO_should_read, BIO_should_write, BIO_should_io_special, BIO_retry_type, BIO_should_retry, BIO_get_retry_BIO, BIO_get_retry_reason \- BIO retry functions .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& #define BIO_should_read(a) ((a)\->flags & BIO_FLAGS_READ) \& #define BIO_should_write(a) ((a)\->flags & BIO_FLAGS_WRITE) \& #define BIO_should_io_special(a) ((a)\->flags & BIO_FLAGS_IO_SPECIAL) \& #define BIO_retry_type(a) ((a)\->flags & BIO_FLAGS_RWS) \& #define BIO_should_retry(a) ((a)\->flags & BIO_FLAGS_SHOULD_RETRY) \& \& #define BIO_FLAGS_READ 0x01 \& #define BIO_FLAGS_WRITE 0x02 \& #define BIO_FLAGS_IO_SPECIAL 0x04 \& #define BIO_FLAGS_RWS (BIO_FLAGS_READ|BIO_FLAGS_WRITE|BIO_FLAGS_IO_SPECIAL) \& #define BIO_FLAGS_SHOULD_RETRY 0x08 \& \& BIO * BIO_get_retry_BIO(BIO *bio, int *reason); \& int BIO_get_retry_reason(BIO *bio); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions determine why a \s-1BIO\s0 is not able to read or write data. They will typically be called after a failed \fIBIO_read()\fR or \fIBIO_write()\fR call. .PP \&\fIBIO_should_retry()\fR is true if the call that produced this condition should then be retried at a later time. .PP If \fIBIO_should_retry()\fR is false then the cause is an error condition. .PP \&\fIBIO_should_read()\fR is true if the cause of the condition is that a \s-1BIO\s0 needs to read data. .PP \&\fIBIO_should_write()\fR is true if the cause of the condition is that a \s-1BIO\s0 needs to read data. .PP \&\fIBIO_should_io_special()\fR is true if some \*(L"special\*(R" condition, that is a reason other than reading or writing is the cause of the condition. .PP \&\fIBIO_retry_type()\fR returns a mask of the cause of a retry condition consisting of the values \fB\s-1BIO_FLAGS_READ\s0\fR, \fB\s-1BIO_FLAGS_WRITE\s0\fR, \&\fB\s-1BIO_FLAGS_IO_SPECIAL\s0\fR though current \s-1BIO\s0 types will only set one of these. .PP \&\fIBIO_get_retry_BIO()\fR determines the precise reason for the special condition, it returns the \s-1BIO\s0 that caused this condition and if \&\fBreason\fR is not \s-1NULL\s0 it contains the reason code. The meaning of the reason code and the action that should be taken depends on the type of \s-1BIO\s0 that resulted in this condition. .PP \&\fIBIO_get_retry_reason()\fR returns the reason for a special condition if passed the relevant \s-1BIO\s0, for example as returned by \fIBIO_get_retry_BIO()\fR. .SH "NOTES" .IX Header "NOTES" If \fIBIO_should_retry()\fR returns false then the precise \*(L"error condition\*(R" depends on the \s-1BIO\s0 type that caused it and the return code of the \s-1BIO\s0 operation. For example if a call to \fIBIO_read()\fR on a socket \s-1BIO\s0 returns 0 and \fIBIO_should_retry()\fR is false then the cause will be that the connection closed. A similar condition on a file \s-1BIO\s0 will mean that it has reached \s-1EOF\s0. Some \s-1BIO\s0 types may place additional information on the error queue. For more details see the individual \s-1BIO\s0 type manual pages. .PP If the underlying I/O structure is in a blocking mode almost all current \&\s-1BIO\s0 types will not request a retry, because the underlying I/O calls will not. If the application knows that the \s-1BIO\s0 type will never signal a retry then it need not call \fIBIO_should_retry()\fR after a failed \&\s-1BIO\s0 I/O call. This is typically done with file BIOs. .PP \&\s-1SSL\s0 BIOs are the only current exception to this rule: they can request a retry even if the underlying I/O structure is blocking, if a handshake occurs during a call to \fIBIO_read()\fR. An application can retry the failed call immediately or avoid this situation by setting \s-1SSL_MODE_AUTO_RETRY\s0 on the underlying \s-1SSL\s0 structure. .PP While an application may retry a failed non blocking call immediately this is likely to be very inefficient because the call will fail repeatedly until data can be processed or is available. An application will normally wait until the necessary condition is satisfied. How this is done depends on the underlying I/O structure. .PP For example if the cause is ultimately a socket and \fIBIO_should_read()\fR is true then a call to \fIselect()\fR may be made to wait until data is available and then retry the \s-1BIO\s0 operation. By combining the retry conditions of several non blocking BIOs in a single \fIselect()\fR call it is possible to service several BIOs in a single thread, though the performance may be poor if \s-1SSL\s0 BIOs are present because long delays can occur during the initial handshake process. .PP It is possible for a \s-1BIO\s0 to block indefinitely if the underlying I/O structure cannot process or return any data. This depends on the behaviour of the platforms I/O functions. This is often not desirable: one solution is to use non blocking I/O and use a timeout on the \fIselect()\fR (or equivalent) call. .SH "BUGS" .IX Header "BUGS" The OpenSSL \s-1ASN1\s0 functions cannot gracefully deal with non blocking I/O: that is they cannot retry after a partial read or write. This is usually worked around by only passing the relevant data to \s-1ASN1\s0 functions when the entire structure can be read or written. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\s-1TBA\s0 07070100048cc2000081a4000000000000000000000001513596190000141b000000b600010002ffffffffffffffff0000003e00000000root/usr/local/ssl/man/man3/X509_STORE_CTX_get_ex_new_index.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "X509_STORE_CTX_get_ex_new_index 3" .TH X509_STORE_CTX_get_ex_new_index 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" X509_STORE_CTX_get_ex_new_index, X509_STORE_CTX_set_ex_data, X509_STORE_CTX_get_ex_data \- add application specific data to X509_STORE_CTX structures .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int X509_STORE_CTX_get_ex_new_index(long argl, void *argp, \& CRYPTO_EX_new *new_func, \& CRYPTO_EX_dup *dup_func, \& CRYPTO_EX_free *free_func); \& \& int X509_STORE_CTX_set_ex_data(X509_STORE_CTX *d, int idx, void *arg); \& \& char *X509_STORE_CTX_get_ex_data(X509_STORE_CTX *d, int idx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions handle application specific data in X509_STORE_CTX structures. Their usage is identical to that of \fIRSA_get_ex_new_index()\fR, \fIRSA_set_ex_data()\fR and \fIRSA_get_ex_data()\fR as described in \fIRSA_get_ex_new_index\fR\|(3). .SH "NOTES" .IX Header "NOTES" This mechanism is used internally by the \fBssl\fR library to store the \fB\s-1SSL\s0\fR structure associated with a verification operation in an \fBX509_STORE_CTX\fR structure. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIRSA_get_ex_new_index\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIX509_STORE_CTX_get_ex_new_index()\fR, \fIX509_STORE_CTX_set_ex_data()\fR and \&\fIX509_STORE_CTX_get_ex_data()\fR are available since OpenSSL 0.9.5. 07070100048cb8000081a400000000000000000000000151359624000012f9000000b600010002ffffffffffffffff0000003400000000root/usr/local/ssl/man/man3/SSL_set_verify_result.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_set_verify_result 3" .TH SSL_set_verify_result 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_set_verify_result \- override result of peer certificate verification .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& void SSL_set_verify_result(SSL *ssl, long verify_result); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_set_verify_result()\fR sets \fBverify_result\fR of the object \fBssl\fR to be the result of the verification of the X509 certificate presented by the peer, if any. .SH "NOTES" .IX Header "NOTES" \&\fISSL_set_verify_result()\fR overrides the verification result. It only changes the verification result of the \fBssl\fR object. It does not become part of the established session, so if the session is to be reused later, the original value will reappear. .PP The valid codes for \fBverify_result\fR are documented in \fIverify\fR\|(1). .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_set_verify_result()\fR does not provide a return value. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_get_verify_result\fR\|(3), \&\fISSL_get_peer_certificate\fR\|(3), \&\fIverify\fR\|(1) 07070100048c6d000081a40000000000000000000000015135961e0000206d000000b600010002ffffffffffffffff0000003200000000root/usr/local/ssl/man/man3/SSL_CIPHER_get_name.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CIPHER_get_name 3" .TH SSL_CIPHER_get_name 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CIPHER_get_name, SSL_CIPHER_get_bits, SSL_CIPHER_get_version, SSL_CIPHER_description \- get SSL_CIPHER properties .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& const char *SSL_CIPHER_get_name(const SSL_CIPHER *cipher); \& int SSL_CIPHER_get_bits(const SSL_CIPHER *cipher, int *alg_bits); \& char *SSL_CIPHER_get_version(const SSL_CIPHER *cipher); \& char *SSL_CIPHER_description(const SSL_CIPHER *cipher, char *buf, int size); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CIPHER_get_name()\fR returns a pointer to the name of \fBcipher\fR. If the argument is the \s-1NULL\s0 pointer, a pointer to the constant value \*(L"\s-1NONE\s0\*(R" is returned. .PP \&\fISSL_CIPHER_get_bits()\fR returns the number of secret bits used for \fBcipher\fR. If \&\fBalg_bits\fR is not \s-1NULL\s0, it contains the number of bits processed by the chosen algorithm. If \fBcipher\fR is \s-1NULL\s0, 0 is returned. .PP \&\fISSL_CIPHER_get_version()\fR returns the protocol version for \fBcipher\fR, currently \&\*(L"SSLv2\*(R", \*(L"SSLv3\*(R", or \*(L"TLSv1\*(R". If \fBcipher\fR is \s-1NULL\s0, \*(L"(\s-1NONE\s0)\*(R" is returned. .PP \&\fISSL_CIPHER_description()\fR returns a textual description of the cipher used into the buffer \fBbuf\fR of length \fBlen\fR provided. \fBlen\fR must be at least 128 bytes, otherwise a pointer to the string \*(L"Buffer too small\*(R" is returned. If \fBbuf\fR is \s-1NULL\s0, a buffer of 128 bytes is allocated using \&\fIOPENSSL_malloc()\fR. If the allocation fails, a pointer to the string \&\*(L"OPENSSL_malloc Error\*(R" is returned. .SH "NOTES" .IX Header "NOTES" The number of bits processed can be different from the secret bits. An export cipher like e.g. \s-1EXP\-RC4\-MD5\s0 has only 40 secret bits. The algorithm does use the full 128 bits (which would be returned for \fBalg_bits\fR), of which however 88bits are fixed. The search space is hence only 40 bits. .PP The string returned by \fISSL_CIPHER_description()\fR in case of success consists of cleartext information separated by one or more blanks in the following sequence: .IP "" 4 .IX Item "" Textual representation of the cipher name. .IP "" 4 .IX Item "" Protocol version: \fBSSLv2\fR, \fBSSLv3\fR. The TLSv1 ciphers are flagged with SSLv3. .IP "Kx=" 4 .IX Item "Kx=" Key exchange method: \fB\s-1RSA\s0\fR (for export ciphers as \fB\s-1RSA\s0(512)\fR or \&\fB\s-1RSA\s0(1024)\fR), \fB\s-1DH\s0\fR (for export ciphers as \fB\s-1DH\s0(512)\fR or \fB\s-1DH\s0(1024)\fR), \&\fB\s-1DH/RSA\s0\fR, \fB\s-1DH/DSS\s0\fR, \fBFortezza\fR. .IP "Au=" 4 .IX Item "Au=" Authentication method: \fB\s-1RSA\s0\fR, \fB\s-1DSS\s0\fR, \fB\s-1DH\s0\fR, \fBNone\fR. None is the representation of anonymous ciphers. .IP "Enc=" 4 .IX Item "Enc=" Encryption method with number of secret bits: \fB\s-1DES\s0(40)\fR, \fB\s-1DES\s0(56)\fR, \&\fB3DES(168)\fR, \fB\s-1RC4\s0(40)\fR, \fB\s-1RC4\s0(56)\fR, \fB\s-1RC4\s0(64)\fR, \fB\s-1RC4\s0(128)\fR, \&\fB\s-1RC2\s0(40)\fR, \fB\s-1RC2\s0(56)\fR, \fB\s-1RC2\s0(128)\fR, \fB\s-1IDEA\s0(128)\fR, \fBFortezza\fR, \fBNone\fR. .IP "Mac=" 4 .IX Item "Mac=" Message digest: \fB\s-1MD5\s0\fR, \fB\s-1SHA1\s0\fR. .IP "" 4 .IX Item "" If the cipher is flagged exportable with respect to old \s-1US\s0 crypto regulations, the word "\fBexport\fR" is printed. .SH "EXAMPLES" .IX Header "EXAMPLES" Some examples for the output of \fISSL_CIPHER_description()\fR: .PP .Vb 4 \& EDH\-RSA\-DES\-CBC3\-SHA SSLv3 Kx=DH Au=RSA Enc=3DES(168) Mac=SHA1 \& EDH\-DSS\-DES\-CBC3\-SHA SSLv3 Kx=DH Au=DSS Enc=3DES(168) Mac=SHA1 \& RC4\-MD5 SSLv3 Kx=RSA Au=RSA Enc=RC4(128) Mac=MD5 \& EXP\-RC4\-MD5 SSLv3 Kx=RSA(512) Au=RSA Enc=RC4(40) Mac=MD5 export .Ve .SH "BUGS" .IX Header "BUGS" If \fISSL_CIPHER_description()\fR is called with \fBcipher\fR being \s-1NULL\s0, the library crashes. .PP If \fISSL_CIPHER_description()\fR cannot handle a built-in cipher, the according description of the cipher property is \fBunknown\fR. This case should not occur. .SH "RETURN VALUES" .IX Header "RETURN VALUES" See \s-1DESCRIPTION\s0 .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_get_current_cipher\fR\|(3), \&\fISSL_get_ciphers\fR\|(3), \fIciphers\fR\|(1) 07070100048ce2000081a40000000000000000000000015135961c00001ea3000000b600010002ffffffffffffffff0000002300000000root/usr/local/ssl/man/man3/hmac.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "hmac 3" .TH hmac 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" HMAC, HMAC_Init, HMAC_Update, HMAC_Final, HMAC_cleanup \- HMAC message authentication code .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& unsigned char *HMAC(const EVP_MD *evp_md, const void *key, \& int key_len, const unsigned char *d, int n, \& unsigned char *md, unsigned int *md_len); \& \& void HMAC_CTX_init(HMAC_CTX *ctx); \& \& int HMAC_Init(HMAC_CTX *ctx, const void *key, int key_len, \& const EVP_MD *md); \& int HMAC_Init_ex(HMAC_CTX *ctx, const void *key, int key_len, \& const EVP_MD *md, ENGINE *impl); \& int HMAC_Update(HMAC_CTX *ctx, const unsigned char *data, int len); \& int HMAC_Final(HMAC_CTX *ctx, unsigned char *md, unsigned int *len); \& \& void HMAC_CTX_cleanup(HMAC_CTX *ctx); \& void HMAC_cleanup(HMAC_CTX *ctx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\s-1HMAC\s0 is a \s-1MAC\s0 (message authentication code), i.e. a keyed hash function used for message authentication, which is based on a hash function. .PP \&\s-1\fIHMAC\s0()\fR computes the message authentication code of the \fBn\fR bytes at \&\fBd\fR using the hash function \fBevp_md\fR and the key \fBkey\fR which is \&\fBkey_len\fR bytes long. .PP It places the result in \fBmd\fR (which must have space for the output of the hash function, which is no more than \fB\s-1EVP_MAX_MD_SIZE\s0\fR bytes). If \fBmd\fR is \s-1NULL\s0, the digest is placed in a static array. The size of the output is placed in \fBmd_len\fR, unless it is \fB\s-1NULL\s0\fR. .PP \&\fBevp_md\fR can be \fIEVP_sha1()\fR, \fIEVP_ripemd160()\fR etc. .PP \&\fIHMAC_CTX_init()\fR initialises a \fB\s-1HMAC_CTX\s0\fR before first use. It must be called. .PP \&\fIHMAC_CTX_cleanup()\fR erases the key and other data from the \fB\s-1HMAC_CTX\s0\fR and releases any associated resources. It must be called when an \&\fB\s-1HMAC_CTX\s0\fR is no longer required. .PP \&\fIHMAC_cleanup()\fR is an alias for \fIHMAC_CTX_cleanup()\fR included for back compatibility with 0.9.6b, it is deprecated. .PP The following functions may be used if the message is not completely stored in memory: .PP \&\fIHMAC_Init()\fR initializes a \fB\s-1HMAC_CTX\s0\fR structure to use the hash function \fBevp_md\fR and the key \fBkey\fR which is \fBkey_len\fR bytes long. It is deprecated and only included for backward compatibility with OpenSSL 0.9.6b. .PP \&\fIHMAC_Init_ex()\fR initializes or reuses a \fB\s-1HMAC_CTX\s0\fR structure to use the function \fBevp_md\fR and key \fBkey\fR. Either can be \s-1NULL\s0, in which case the existing one will be reused. \fIHMAC_CTX_init()\fR must have been called before the first use of an \fB\s-1HMAC_CTX\s0\fR in this function. \fBN.B. \f(BIHMAC_Init()\fB had this undocumented behaviour in previous versions of OpenSSL \- failure to switch to \f(BIHMAC_Init_ex()\fB in programs that expect it will cause them to stop working\fR. .PP \&\fIHMAC_Update()\fR can be called repeatedly with chunks of the message to be authenticated (\fBlen\fR bytes at \fBdata\fR). .PP \&\fIHMAC_Final()\fR places the message authentication code in \fBmd\fR, which must have space for the hash function output. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\s-1\fIHMAC\s0()\fR returns a pointer to the message authentication code or \s-1NULL\s0 if an error occurred. .PP \&\fIHMAC_Init_ex()\fR, \fIHMAC_Update()\fR and \fIHMAC_Final()\fR return 1 for success or 0 if an error occurred. .PP \&\fIHMAC_CTX_init()\fR and \fIHMAC_CTX_cleanup()\fR do not return values. .SH "CONFORMING TO" .IX Header "CONFORMING TO" \&\s-1RFC\s0 2104 .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIsha\fR\|(3), \fIevp\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1\fIHMAC\s0()\fR, \fIHMAC_Init()\fR, \fIHMAC_Update()\fR, \fIHMAC_Final()\fR and \fIHMAC_cleanup()\fR are available since SSLeay 0.9.0. .PP \&\fIHMAC_CTX_init()\fR, \fIHMAC_Init_ex()\fR and \fIHMAC_CTX_cleanup()\fR are available since OpenSSL 0.9.7. .PP \&\fIHMAC_Init_ex()\fR, \fIHMAC_Update()\fR and \fIHMAC_Final()\fR did not return values in versions of OpenSSL before 1.0.0. 07070100048c22000081a4000000000000000000000001513596120000271c000000b600010002ffffffffffffffff0000002d00000000root/usr/local/ssl/man/man3/DSA_set_method.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DSA_set_method 3" .TH DSA_set_method 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DSA_set_default_method, DSA_get_default_method, DSA_set_method, DSA_new_method, DSA_OpenSSL \- select DSA method .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& #include \& #include \& \& void DSA_set_default_method(const DSA_METHOD *meth); \& \& const DSA_METHOD *DSA_get_default_method(void); \& \& int DSA_set_method(DSA *dsa, const DSA_METHOD *meth); \& \& DSA *DSA_new_method(ENGINE *engine); \& \& DSA_METHOD *DSA_OpenSSL(void); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" A \fB\s-1DSA_METHOD\s0\fR specifies the functions that OpenSSL uses for \s-1DSA\s0 operations. By modifying the method, alternative implementations such as hardware accelerators may be used. \s-1IMPORTANT:\s0 See the \s-1NOTES\s0 section for important information about how these \s-1DSA\s0 \s-1API\s0 functions are affected by the use of \fB\s-1ENGINE\s0\fR \s-1API\s0 calls. .PP Initially, the default \s-1DSA_METHOD\s0 is the OpenSSL internal implementation, as returned by \fIDSA_OpenSSL()\fR. .PP \&\fIDSA_set_default_method()\fR makes \fBmeth\fR the default method for all \s-1DSA\s0 structures created later. \fB\s-1NB\s0\fR: This is true only whilst no \s-1ENGINE\s0 has been set as a default for \s-1DSA\s0, so this function is no longer recommended. .PP \&\fIDSA_get_default_method()\fR returns a pointer to the current default \&\s-1DSA_METHOD\s0. However, the meaningfulness of this result is dependent on whether the \s-1ENGINE\s0 \s-1API\s0 is being used, so this function is no longer recommended. .PP \&\fIDSA_set_method()\fR selects \fBmeth\fR to perform all operations using the key \&\fBrsa\fR. This will replace the \s-1DSA_METHOD\s0 used by the \s-1DSA\s0 key and if the previous method was supplied by an \s-1ENGINE\s0, the handle to that \s-1ENGINE\s0 will be released during the change. It is possible to have \s-1DSA\s0 keys that only work with certain \s-1DSA_METHOD\s0 implementations (eg. from an \s-1ENGINE\s0 module that supports embedded hardware-protected keys), and in such cases attempting to change the \s-1DSA_METHOD\s0 for the key can have unexpected results. .PP \&\fIDSA_new_method()\fR allocates and initializes a \s-1DSA\s0 structure so that \fBengine\fR will be used for the \s-1DSA\s0 operations. If \fBengine\fR is \s-1NULL\s0, the default engine for \s-1DSA\s0 operations is used, and if no default \s-1ENGINE\s0 is set, the \s-1DSA_METHOD\s0 controlled by \fIDSA_set_default_method()\fR is used. .SH "THE DSA_METHOD STRUCTURE" .IX Header "THE DSA_METHOD STRUCTURE" struct { /* name of the implementation */ const char *name; .PP .Vb 3 \& /* sign */ \& DSA_SIG *(*dsa_do_sign)(const unsigned char *dgst, int dlen, \& DSA *dsa); \& \& /* pre\-compute k^\-1 and r */ \& int (*dsa_sign_setup)(DSA *dsa, BN_CTX *ctx_in, BIGNUM **kinvp, \& BIGNUM **rp); \& \& /* verify */ \& int (*dsa_do_verify)(const unsigned char *dgst, int dgst_len, \& DSA_SIG *sig, DSA *dsa); \& \& /* compute rr = a1^p1 * a2^p2 mod m (May be NULL for some \& implementations) */ \& int (*dsa_mod_exp)(DSA *dsa, BIGNUM *rr, BIGNUM *a1, BIGNUM *p1, \& BIGNUM *a2, BIGNUM *p2, BIGNUM *m, \& BN_CTX *ctx, BN_MONT_CTX *in_mont); \& \& /* compute r = a ^ p mod m (May be NULL for some implementations) */ \& int (*bn_mod_exp)(DSA *dsa, BIGNUM *r, BIGNUM *a, \& const BIGNUM *p, const BIGNUM *m, \& BN_CTX *ctx, BN_MONT_CTX *m_ctx); \& \& /* called at DSA_new */ \& int (*init)(DSA *DSA); \& \& /* called at DSA_free */ \& int (*finish)(DSA *DSA); \& \& int flags; \& \& char *app_data; /* ?? */ \& \& } DSA_METHOD; .Ve .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIDSA_OpenSSL()\fR and \fIDSA_get_default_method()\fR return pointers to the respective \&\fB\s-1DSA_METHOD\s0\fRs. .PP \&\fIDSA_set_default_method()\fR returns no value. .PP \&\fIDSA_set_method()\fR returns non-zero if the provided \fBmeth\fR was successfully set as the method for \fBdsa\fR (including unloading the \s-1ENGINE\s0 handle if the previous method was supplied by an \s-1ENGINE\s0). .PP \&\fIDSA_new_method()\fR returns \s-1NULL\s0 and sets an error code that can be obtained by \fIERR_get_error\fR\|(3) if the allocation fails. Otherwise it returns a pointer to the newly allocated structure. .SH "NOTES" .IX Header "NOTES" As of version 0.9.7, \s-1DSA_METHOD\s0 implementations are grouped together with other algorithmic APIs (eg. \s-1RSA_METHOD\s0, \s-1EVP_CIPHER\s0, etc) in \fB\s-1ENGINE\s0\fR modules. If a default \s-1ENGINE\s0 is specified for \s-1DSA\s0 functionality using an \s-1ENGINE\s0 \s-1API\s0 function, that will override any \s-1DSA\s0 defaults set using the \s-1DSA\s0 \s-1API\s0 (ie. \&\fIDSA_set_default_method()\fR). For this reason, the \s-1ENGINE\s0 \s-1API\s0 is the recommended way to control default implementations for use in \s-1DSA\s0 and other cryptographic algorithms. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIdsa\fR\|(3), \fIDSA_new\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDSA_set_default_method()\fR, \fIDSA_get_default_method()\fR, \fIDSA_set_method()\fR, \&\fIDSA_new_method()\fR and \fIDSA_OpenSSL()\fR were added in OpenSSL 0.9.4. .PP \&\fIDSA_set_default_openssl_method()\fR and \fIDSA_get_default_openssl_method()\fR replaced \&\fIDSA_set_default_method()\fR and \fIDSA_get_default_method()\fR respectively, and \&\fIDSA_set_method()\fR and \fIDSA_new_method()\fR were altered to use \fB\s-1ENGINE\s0\fRs rather than \&\fB\s-1DSA_METHOD\s0\fRs during development of the engine version of OpenSSL 0.9.6. For 0.9.7, the handling of defaults in the \s-1ENGINE\s0 \s-1API\s0 was restructured so that this change was reversed, and behaviour of the other functions resembled more closely the previous behaviour. The behaviour of defaults in the \s-1ENGINE\s0 \s-1API\s0 now transparently overrides the behaviour of defaults in the \s-1DSA\s0 \s-1API\s0 without requiring changing these function prototypes. 07070100048c54000081a40000000000000000000000015135961600001cda000000b600010002ffffffffffffffff0000003400000000root/usr/local/ssl/man/man3/PKCS7_sign_add_signer.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "PKCS7_sign_add_signer 3" .TH PKCS7_sign_add_signer 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" PKCS7_sign_add_signer \- add a signer PKCS7 signed data structure. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& PKCS7_SIGNER_INFO *PKCS7_sign_add_signer(PKCS7 *p7, X509 *signcert, EVP_PKEY *pkey, const EVP_MD *md, int flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIPKCS7_sign_add_signer()\fR adds a signer with certificate \fBsigncert\fR and private key \fBpkey\fR using message digest \fBmd\fR to a \s-1PKCS7\s0 signed data structure \&\fBp7\fR. .PP The \s-1PKCS7\s0 structure should be obtained from an initial call to \fIPKCS7_sign()\fR with the flag \fB\s-1PKCS7_PARTIAL\s0\fR set or in the case or re-signing a valid \s-1PKCS7\s0 signed data structure. .PP If the \fBmd\fR parameter is \fB\s-1NULL\s0\fR then the default digest for the public key algorithm will be used. .PP Unless the \fB\s-1PKCS7_REUSE_DIGEST\s0\fR flag is set the returned \s-1PKCS7\s0 structure is not complete and must be finalized either by streaming (if applicable) or a call to \fIPKCS7_final()\fR. .SH "NOTES" .IX Header "NOTES" The main purpose of this function is to provide finer control over a PKCS#7 signed data structure where the simpler \fIPKCS7_sign()\fR function defaults are not appropriate. For example if multiple signers or non default digest algorithms are needed. .PP Any of the following flags (ored together) can be passed in the \fBflags\fR parameter. .PP If \fB\s-1PKCS7_REUSE_DIGEST\s0\fR is set then an attempt is made to copy the content digest value from the \s-1PKCS7\s0 struture: to add a signer to an existing structure. An error occurs if a matching digest value cannot be found to copy. The returned \s-1PKCS7\s0 structure will be valid and finalized when this flag is set. .PP If \fB\s-1PKCS7_PARTIAL\s0\fR is set in addition to \fB\s-1PKCS7_REUSE_DIGEST\s0\fR then the \&\fB\s-1PKCS7_SIGNER_INO\s0\fR structure will not be finalized so additional attributes can be added. In this case an explicit call to \fIPKCS7_SIGNER_INFO_sign()\fR is needed to finalize it. .PP If \fB\s-1PKCS7_NOCERTS\s0\fR is set the signer's certificate will not be included in the \&\s-1PKCS7\s0 structure, the signer's certificate must still be supplied in the \&\fBsigncert\fR parameter though. This can reduce the size of the signature if the signers certificate can be obtained by other means: for example a previously signed message. .PP The signedData structure includes several PKCS#7 autenticatedAttributes including the signing time, the PKCS#7 content type and the supported list of ciphers in an SMIMECapabilities attribute. If \fB\s-1PKCS7_NOATTR\s0\fR is set then no authenticatedAttributes will be used. If \fB\s-1PKCS7_NOSMIMECAP\s0\fR is set then just the SMIMECapabilities are omitted. .PP If present the SMIMECapabilities attribute indicates support for the following algorithms: triple \s-1DES\s0, 128 bit \s-1RC2\s0, 64 bit \s-1RC2\s0, \s-1DES\s0 and 40 bit \s-1RC2\s0. If any of these algorithms is disabled then it will not be included. .PP \&\fIPKCS7_sign_add_signers()\fR returns an internal pointer to the \s-1PKCS7_SIGNER_INFO\s0 structure just added, this can be used to set additional attributes before it is finalized. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIPKCS7_sign_add_signers()\fR returns an internal pointer to the \s-1PKCS7_SIGNER_INFO\s0 structure just added or \s-1NULL\s0 if an error occurs. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fIPKCS7_sign\fR\|(3), \&\fIPKCS7_final\fR\|(3), .SH "HISTORY" .IX Header "HISTORY" \&\fIPPKCS7_sign_add_signer()\fR was added to OpenSSL 1.0.0 07070100048c13000081a4000000000000000000000001513596100000177f000000b600010002ffffffffffffffff0000003500000000root/usr/local/ssl/man/man3/CONF_modules_load_file.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "CONF_modules_load_file 3" .TH CONF_modules_load_file 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" .Vb 1 \& CONF_modules_load_file, CONF_modules_load \- OpenSSL configuration functions .Ve .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int CONF_modules_load_file(const char *filename, const char *appname, \& unsigned long flags); \& int CONF_modules_load(const CONF *cnf, const char *appname, \& unsigned long flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The function \fICONF_modules_load_file()\fR configures OpenSSL using file \&\fBfilename\fR and application name \fBappname\fR. If \fBfilename\fR is \s-1NULL\s0 the standard OpenSSL configuration file is used. If \fBappname\fR is \&\s-1NULL\s0 the standard OpenSSL application name \fBopenssl_conf\fR is used. The behaviour can be cutomized using \fBflags\fR. .PP \&\fICONF_modules_load()\fR is idential to \fICONF_modules_load_file()\fR except it read configuration information from \fBcnf\fR. .SH "NOTES" .IX Header "NOTES" The following \fBflags\fR are currently recognized: .PP \&\fB\s-1CONF_MFLAGS_IGNORE_ERRORS\s0\fR if set errors returned by individual configuration modules are ignored. If not set the first module error is considered fatal and no further modules are loads. .PP Normally any modules errors will add error information to the error queue. If \&\fB\s-1CONF_MFLAGS_SILENT\s0\fR is set no error information is added. .PP If \fB\s-1CONF_MFLAGS_NO_DSO\s0\fR is set configuration module loading from DSOs is disabled. .PP \&\fB\s-1CONF_MFLAGS_IGNORE_MISSING_FILE\s0\fR if set will make \fICONF_load_modules_file()\fR ignore missing configuration files. Normally a missing configuration file return an error. .SH "RETURN VALUE" .IX Header "RETURN VALUE" These functions return 1 for success and a zero or negative value for failure. If module errors are not ignored the return code will reflect the return value of the failing module (this will always be zero or negative). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIconf\fR\|(5), \fIOPENSSL_config\fR\|(3), \&\*(L"\fICONF_free\fR\|(3), \fICONF_free\fR\|(3)\*(R", \fIerr\fR\|(3),\fIerr\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" CONF_modules_load_file and CONF_modules_load first appeared in OpenSSL 0.9.7. 07070100048cac000081a4000000000000000000000001513596230000158c000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/SSL_library_init.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_library_init 3" .TH SSL_library_init 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_library_init, OpenSSL_add_ssl_algorithms, SSLeay_add_ssl_algorithms \&\- initialize SSL library by registering algorithms .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_library_init(void); \& #define OpenSSL_add_ssl_algorithms() SSL_library_init() \& #define SSLeay_add_ssl_algorithms() SSL_library_init() .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_library_init()\fR registers the available \s-1SSL/TLS\s0 ciphers and digests. .PP \&\fIOpenSSL_add_ssl_algorithms()\fR and \fISSLeay_add_ssl_algorithms()\fR are synonyms for \fISSL_library_init()\fR. .SH "NOTES" .IX Header "NOTES" \&\fISSL_library_init()\fR must be called before any other action takes place. \&\fISSL_library_init()\fR is not reentrant. .SH "WARNING" .IX Header "WARNING" \&\fISSL_library_init()\fR adds ciphers and digests used directly and indirectly by \&\s-1SSL/TLS\s0. .SH "EXAMPLES" .IX Header "EXAMPLES" A typical \s-1TLS/SSL\s0 application will start with the library initialization, and provide readable error messages. .PP .Vb 2 \& SSL_load_error_strings(); /* readable error messages */ \& SSL_library_init(); /* initialize library */ .Ve .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_library_init()\fR always returns \*(L"1\*(R", so it is safe to discard the return value. .SH "NOTES" .IX Header "NOTES" OpenSSL 0.9.8o and 1.0.0a and later added \s-1SHA2\s0 algorithms to \fISSL_library_init()\fR. Applications which need to use \s-1SHA2\s0 in earlier versions of OpenSSL should call \&\fIOpenSSL_add_all_algorithms()\fR as well. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_load_error_strings\fR\|(3), \&\fIRAND_add\fR\|(3) 07070100048c6a000081a4000000000000000000000001513596180000176e000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/SMIME_read_PKCS7.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SMIME_read_PKCS7 3" .TH SMIME_read_PKCS7 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SMIME_read_PKCS7 \- parse S/MIME message. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& PKCS7 *SMIME_read_PKCS7(BIO *in, BIO **bcont); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISMIME_read_PKCS7()\fR parses a message in S/MIME format. .PP \&\fBin\fR is a \s-1BIO\s0 to read the message from. .PP If cleartext signing is used then the content is saved in a memory bio which is written to \fB*bcont\fR, otherwise \&\fB*bcont\fR is set to \fB\s-1NULL\s0\fR. .PP The parsed PKCS#7 structure is returned or \fB\s-1NULL\s0\fR if an error occurred. .SH "NOTES" .IX Header "NOTES" If \fB*bcont\fR is not \fB\s-1NULL\s0\fR then the message is clear text signed. \fB*bcont\fR can then be passed to \fIPKCS7_verify()\fR with the \fB\s-1PKCS7_DETACHED\s0\fR flag set. .PP Otherwise the type of the returned structure can be determined using \fIPKCS7_type()\fR. .PP To support future functionality if \fBbcont\fR is not \fB\s-1NULL\s0\fR \&\fB*bcont\fR should be initialized to \fB\s-1NULL\s0\fR. For example: .PP .Vb 2 \& BIO *cont = NULL; \& PKCS7 *p7; \& \& p7 = SMIME_read_PKCS7(in, &cont); .Ve .SH "BUGS" .IX Header "BUGS" The \s-1MIME\s0 parser used by \fISMIME_read_PKCS7()\fR is somewhat primitive. While it will handle most S/MIME messages more complex compound formats may not work. .PP The parser assumes that the \s-1PKCS7\s0 structure is always base64 encoded and will not handle the case where it is in binary format or uses quoted printable format. .PP The use of a memory \s-1BIO\s0 to hold the signed content limits the size of message which can be processed due to memory restraints: a streaming single pass option should be available. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISMIME_read_PKCS7()\fR returns a valid \fB\s-1PKCS7\s0\fR structure or \fB\s-1NULL\s0\fR is an error occurred. The error can be obtained from \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fIPKCS7_type\fR\|(3) \&\fISMIME_read_PKCS7\fR\|(3), \fIPKCS7_sign\fR\|(3), \&\fIPKCS7_verify\fR\|(3), \fIPKCS7_encrypt\fR\|(3) \&\fIPKCS7_decrypt\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fISMIME_read_PKCS7()\fR was added to OpenSSL 0.9.5 07070100048cad000081a400000000000000000000000151359623000014be000000b600010002ffffffffffffffff0000003600000000root/usr/local/ssl/man/man3/SSL_load_client_CA_file.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_load_client_CA_file 3" .TH SSL_load_client_CA_file 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_load_client_CA_file \- load certificate names from file .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& STACK_OF(X509_NAME) *SSL_load_client_CA_file(const char *file); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_load_client_CA_file()\fR reads certificates from \fBfile\fR and returns a \s-1STACK_OF\s0(X509_NAME) with the subject names found. .SH "NOTES" .IX Header "NOTES" \&\fISSL_load_client_CA_file()\fR reads a file of \s-1PEM\s0 formatted certificates and extracts the X509_NAMES of the certificates found. While the name suggests the specific usage as support function for \&\fISSL_CTX_set_client_CA_list\fR\|(3), it is not limited to \s-1CA\s0 certificates. .SH "EXAMPLES" .IX Header "EXAMPLES" Load names of CAs from file and use it as a client \s-1CA\s0 list: .PP .Vb 2 \& SSL_CTX *ctx; \& STACK_OF(X509_NAME) *cert_names; \& \& ... \& cert_names = SSL_load_client_CA_file("/path/to/CAfile.pem"); \& if (cert_names != NULL) \& SSL_CTX_set_client_CA_list(ctx, cert_names); \& else \& error_handling(); \& ... .Ve .SH "RETURN VALUES" .IX Header "RETURN VALUES" The following return values can occur: .IP "\s-1NULL\s0" 4 .IX Item "NULL" The operation failed, check out the error stack for the reason. .IP "Pointer to \s-1STACK_OF\s0(X509_NAME)" 4 .IX Item "Pointer to STACK_OF(X509_NAME)" Pointer to the subject names of the successfully read certificates. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \&\fISSL_CTX_set_client_CA_list\fR\|(3) 07070100048cea000081a40000000000000000000000015135961d00002837000000b600010002ffffffffffffffff0000002300000000root/usr/local/ssl/man/man3/rand.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "rand 3" .TH rand 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" rand \- pseudo\-random number generator .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int RAND_set_rand_engine(ENGINE *engine); \& \& int RAND_bytes(unsigned char *buf, int num); \& int RAND_pseudo_bytes(unsigned char *buf, int num); \& \& void RAND_seed(const void *buf, int num); \& void RAND_add(const void *buf, int num, int entropy); \& int RAND_status(void); \& \& int RAND_load_file(const char *file, long max_bytes); \& int RAND_write_file(const char *file); \& const char *RAND_file_name(char *file, size_t num); \& \& int RAND_egd(const char *path); \& \& void RAND_set_rand_method(const RAND_METHOD *meth); \& const RAND_METHOD *RAND_get_rand_method(void); \& RAND_METHOD *RAND_SSLeay(void); \& \& void RAND_cleanup(void); \& \& /* For Win32 only */ \& void RAND_screen(void); \& int RAND_event(UINT, WPARAM, LPARAM); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Since the introduction of the \s-1ENGINE\s0 \s-1API\s0, the recommended way of controlling default implementations is by using the \s-1ENGINE\s0 \s-1API\s0 functions. The default \&\fB\s-1RAND_METHOD\s0\fR, as set by \fIRAND_set_rand_method()\fR and returned by \&\fIRAND_get_rand_method()\fR, is only used if no \s-1ENGINE\s0 has been set as the default \&\*(L"rand\*(R" implementation. Hence, these two functions are no longer the recommened way to control defaults. .PP If an alternative \fB\s-1RAND_METHOD\s0\fR implementation is being used (either set directly or as provided by an \s-1ENGINE\s0 module), then it is entirely responsible for the generation and management of a cryptographically secure \s-1PRNG\s0 stream. The mechanisms described below relate solely to the software \s-1PRNG\s0 implementation built in to OpenSSL and used by default. .PP These functions implement a cryptographically secure pseudo-random number generator (\s-1PRNG\s0). It is used by other library functions for example to generate random keys, and applications can use it when they need randomness. .PP A cryptographic \s-1PRNG\s0 must be seeded with unpredictable data such as mouse movements or keys pressed at random by the user. This is described in \fIRAND_add\fR\|(3). Its state can be saved in a seed file (see \fIRAND_load_file\fR\|(3)) to avoid having to go through the seeding process whenever the application is started. .PP \&\fIRAND_bytes\fR\|(3) describes how to obtain random data from the \&\s-1PRNG\s0. .SH "INTERNALS" .IX Header "INTERNALS" The \fIRAND_SSLeay()\fR method implements a \s-1PRNG\s0 based on a cryptographic hash function. .PP The following description of its design is based on the SSLeay documentation: .PP First up I will state the things I believe I need for a good \s-1RNG\s0. .IP "1." 4 A good hashing algorithm to mix things up and to convert the \s-1RNG\s0 'state' to random numbers. .IP "2." 4 An initial source of random 'state'. .IP "3." 4 The state should be very large. If the \s-1RNG\s0 is being used to generate 4096 bit \s-1RSA\s0 keys, 2 2048 bit random strings are required (at a minimum). If your \s-1RNG\s0 state only has 128 bits, you are obviously limiting the search space to 128 bits, not 2048. I'm probably getting a little carried away on this last point but it does indicate that it may not be a bad idea to keep quite a lot of \s-1RNG\s0 state. It should be easier to break a cipher than guess the \s-1RNG\s0 seed data. .IP "4." 4 Any \s-1RNG\s0 seed data should influence all subsequent random numbers generated. This implies that any random seed data entered will have an influence on all subsequent random numbers generated. .IP "5." 4 When using data to seed the \s-1RNG\s0 state, the data used should not be extractable from the \s-1RNG\s0 state. I believe this should be a requirement because one possible source of 'secret' semi random data would be a private key or a password. This data must not be disclosed by either subsequent random numbers or a \&'core' dump left by a program crash. .IP "6." 4 Given the same initial 'state', 2 systems should deviate in their \s-1RNG\s0 state (and hence the random numbers generated) over time if at all possible. .IP "7." 4 Given the random number output stream, it should not be possible to determine the \s-1RNG\s0 state or the next random number. .PP The algorithm is as follows. .PP There is global state made up of a 1023 byte buffer (the 'state'), a working hash value ('md'), and a counter ('count'). .PP Whenever seed data is added, it is inserted into the 'state' as follows. .PP The input is chopped up into units of 20 bytes (or less for the last block). Each of these blocks is run through the hash function as follows: The data passed to the hash function is the current 'md', the same number of bytes from the 'state' (the location determined by in incremented looping index) as the current 'block', the new key data 'block', and 'count' (which is incremented after each use). The result of this is kept in 'md' and also xored into the \&'state' at the same locations that were used as input into the hash function. I believe this system addresses points 1 (hash function; currently \&\s-1SHA\-1\s0), 3 (the 'state'), 4 (via the 'md'), 5 (by the use of a hash function and xor). .PP When bytes are extracted from the \s-1RNG\s0, the following process is used. For each group of 10 bytes (or less), we do the following: .PP Input into the hash function the local 'md' (which is initialized from the global 'md' before any bytes are generated), the bytes that are to be overwritten by the random bytes, and bytes from the 'state' (incrementing looping index). From this digest output (which is kept in 'md'), the top (up to) 10 bytes are returned to the caller and the bottom 10 bytes are xored into the 'state'. .PP Finally, after we have finished 'num' random bytes for the caller, \&'count' (which is incremented) and the local and global 'md' are fed into the hash function and the results are kept in the global 'md'. .PP I believe the above addressed points 1 (use of \s-1SHA\-1\s0), 6 (by hashing into the 'state' the 'old' data from the caller that is about to be overwritten) and 7 (by not using the 10 bytes given to the caller to update the 'state', but they are used to update 'md'). .PP So of the points raised, only 2 is not addressed (but see \&\fIRAND_add\fR\|(3)). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIBN_rand\fR\|(3), \fIRAND_add\fR\|(3), \&\fIRAND_load_file\fR\|(3), \fIRAND_egd\fR\|(3), \&\fIRAND_bytes\fR\|(3), \&\fIRAND_set_rand_method\fR\|(3), \&\fIRAND_cleanup\fR\|(3) 07070100048c5c000081a400000000000000000000000151359617000013a9000000b600010002ffffffffffffffff0000002e00000000root/usr/local/ssl/man/man3/RSA_blinding_on.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "RSA_blinding_on 3" .TH RSA_blinding_on 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" RSA_blinding_on, RSA_blinding_off \- protect the RSA operation from timing attacks .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int RSA_blinding_on(RSA *rsa, BN_CTX *ctx); \& \& void RSA_blinding_off(RSA *rsa); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\s-1RSA\s0 is vulnerable to timing attacks. In a setup where attackers can measure the time of \s-1RSA\s0 decryption or signature operations, blinding must be used to protect the \s-1RSA\s0 operation from that attack. .PP \&\fIRSA_blinding_on()\fR turns blinding on for key \fBrsa\fR and generates a random blinding factor. \fBctx\fR is \fB\s-1NULL\s0\fR or a pre-allocated and initialized \fB\s-1BN_CTX\s0\fR. The random number generator must be seeded prior to calling \fIRSA_blinding_on()\fR. .PP \&\fIRSA_blinding_off()\fR turns blinding off and frees the memory used for the blinding factor. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIRSA_blinding_on()\fR returns 1 on success, and 0 if an error occurred. .PP \&\fIRSA_blinding_off()\fR returns no value. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIrsa\fR\|(3), \fIrand\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIRSA_blinding_on()\fR and \fIRSA_blinding_off()\fR appeared in SSLeay 0.9.0. 07070100048cd3000081a40000000000000000000000015135961a00001719000000b600010002ffffffffffffffff0000002f00000000root/usr/local/ssl/man/man3/d2i_RSAPublicKey.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "d2i_RSAPublicKey 3" .TH d2i_RSAPublicKey 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" d2i_RSAPublicKey, i2d_RSAPublicKey, d2i_RSAPrivateKey, i2d_RSAPrivateKey, d2i_RSA_PUBKEY, i2d_RSA_PUBKEY, i2d_Netscape_RSA, d2i_Netscape_RSA \- RSA public and private key encoding functions. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 2 \& #include \& #include \& \& RSA * d2i_RSAPublicKey(RSA **a, const unsigned char **pp, long length); \& \& int i2d_RSAPublicKey(RSA *a, unsigned char **pp); \& \& RSA * d2i_RSA_PUBKEY(RSA **a, const unsigned char **pp, long length); \& \& int i2d_RSA_PUBKEY(RSA *a, unsigned char **pp); \& \& RSA * d2i_RSAPrivateKey(RSA **a, const unsigned char **pp, long length); \& \& int i2d_RSAPrivateKey(RSA *a, unsigned char **pp); \& \& int i2d_Netscape_RSA(RSA *a, unsigned char **pp, int (*cb)()); \& \& RSA * d2i_Netscape_RSA(RSA **a, const unsigned char **pp, long length, int (*cb)()); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fId2i_RSAPublicKey()\fR and \fIi2d_RSAPublicKey()\fR decode and encode a PKCS#1 RSAPublicKey structure. .PP \&\fId2i_RSA_PUBKEY()\fR and \fIi2d_RSA_PUBKEY()\fR decode and encode an \s-1RSA\s0 public key using a SubjectPublicKeyInfo (certificate public key) structure. .PP \&\fId2i_RSAPrivateKey()\fR, \fIi2d_RSAPrivateKey()\fR decode and encode a PKCS#1 RSAPrivateKey structure. .PP \&\fId2i_Netscape_RSA()\fR, \fIi2d_Netscape_RSA()\fR decode and encode an \s-1RSA\s0 private key in \&\s-1NET\s0 format. .PP The usage of all of these functions is similar to the \fId2i_X509()\fR and \&\fIi2d_X509()\fR described in the \fId2i_X509\fR\|(3) manual page. .SH "NOTES" .IX Header "NOTES" The \fB\s-1RSA\s0\fR structure passed to the private key encoding functions should have all the PKCS#1 private key components present. .PP The data encoded by the private key functions is unencrypted and therefore offers no private key security. .PP The \s-1NET\s0 format functions are present to provide compatibility with certain very old software. This format has some severe security weaknesses and should be avoided if possible. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fId2i_X509\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1TBA\s0 07070100048c67000081a40000000000000000000000015135961800001626000000b600010002ffffffffffffffff0000003900000000root/usr/local/ssl/man/man3/RSA_sign_ASN1_OCTET_STRING.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "RSA_sign_ASN1_OCTET_STRING 3" .TH RSA_sign_ASN1_OCTET_STRING 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" RSA_sign_ASN1_OCTET_STRING, RSA_verify_ASN1_OCTET_STRING \- RSA signatures .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int RSA_sign_ASN1_OCTET_STRING(int dummy, unsigned char *m, \& unsigned int m_len, unsigned char *sigret, unsigned int *siglen, \& RSA *rsa); \& \& int RSA_verify_ASN1_OCTET_STRING(int dummy, unsigned char *m, \& unsigned int m_len, unsigned char *sigbuf, unsigned int siglen, \& RSA *rsa); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIRSA_sign_ASN1_OCTET_STRING()\fR signs the octet string \fBm\fR of size \&\fBm_len\fR using the private key \fBrsa\fR represented in \s-1DER\s0 using \s-1PKCS\s0 #1 padding. It stores the signature in \fBsigret\fR and the signature size in \fBsiglen\fR. \fBsigret\fR must point to \fBRSA_size(rsa)\fR bytes of memory. .PP \&\fBdummy\fR is ignored. .PP The random number generator must be seeded prior to calling \fIRSA_sign_ASN1_OCTET_STRING()\fR. .PP \&\fIRSA_verify_ASN1_OCTET_STRING()\fR verifies that the signature \fBsigbuf\fR of size \fBsiglen\fR is the \s-1DER\s0 representation of a given octet string \&\fBm\fR of size \fBm_len\fR. \fBdummy\fR is ignored. \fBrsa\fR is the signer's public key. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIRSA_sign_ASN1_OCTET_STRING()\fR returns 1 on success, 0 otherwise. \&\fIRSA_verify_ASN1_OCTET_STRING()\fR returns 1 on successful verification, 0 otherwise. .PP The error codes can be obtained by \fIERR_get_error\fR\|(3). .SH "BUGS" .IX Header "BUGS" These functions serve no recognizable purpose. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fIobjects\fR\|(3), \&\fIrand\fR\|(3), \fIrsa\fR\|(3), \fIRSA_sign\fR\|(3), \&\fIRSA_verify\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIRSA_sign_ASN1_OCTET_STRING()\fR and \fIRSA_verify_ASN1_OCTET_STRING()\fR were added in SSLeay 0.8. 07070100048cce000081a40000000000000000000000015135961a000019bc000000b600010002ffffffffffffffff0000002500000000root/usr/local/ssl/man/man3/crypto.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "crypto 3" .TH crypto 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" crypto \- OpenSSL cryptographic library .SH "SYNOPSIS" .IX Header "SYNOPSIS" .SH "DESCRIPTION" .IX Header "DESCRIPTION" The OpenSSL \fBcrypto\fR library implements a wide range of cryptographic algorithms used in various Internet standards. The services provided by this library are used by the OpenSSL implementations of \s-1SSL\s0, \s-1TLS\s0 and S/MIME, and they have also been used to implement \s-1SSH\s0, OpenPGP, and other cryptographic standards. .SH "OVERVIEW" .IX Header "OVERVIEW" \&\fBlibcrypto\fR consists of a number of sub-libraries that implement the individual algorithms. .PP The functionality includes symmetric encryption, public key cryptography and key agreement, certificate handling, cryptographic hash functions and a cryptographic pseudo-random number generator. .IP "\s-1SYMMETRIC\s0 \s-1CIPHERS\s0" 4 .IX Item "SYMMETRIC CIPHERS" \&\fIblowfish\fR\|(3), \fIcast\fR\|(3), \fIdes\fR\|(3), \&\fIidea\fR\|(3), \fIrc2\fR\|(3), \fIrc4\fR\|(3), \fIrc5\fR\|(3) .IP "\s-1PUBLIC\s0 \s-1KEY\s0 \s-1CRYPTOGRAPHY\s0 \s-1AND\s0 \s-1KEY\s0 \s-1AGREEMENT\s0" 4 .IX Item "PUBLIC KEY CRYPTOGRAPHY AND KEY AGREEMENT" \&\fIdsa\fR\|(3), \fIdh\fR\|(3), \fIrsa\fR\|(3) .IP "\s-1CERTIFICATES\s0" 4 .IX Item "CERTIFICATES" \&\fIx509\fR\|(3), \fIx509v3\fR\|(3) .IP "\s-1AUTHENTICATION\s0 \s-1CODES\s0, \s-1HASH\s0 \s-1FUNCTIONS\s0" 4 .IX Item "AUTHENTICATION CODES, HASH FUNCTIONS" \&\fIhmac\fR\|(3), \fImd2\fR\|(3), \fImd4\fR\|(3), \&\fImd5\fR\|(3), \fImdc2\fR\|(3), \fIripemd\fR\|(3), \&\fIsha\fR\|(3) .IP "\s-1AUXILIARY\s0 \s-1FUNCTIONS\s0" 4 .IX Item "AUXILIARY FUNCTIONS" \&\fIerr\fR\|(3), \fIthreads\fR\|(3), \fIrand\fR\|(3), \&\s-1\fIOPENSSL_VERSION_NUMBER\s0\fR\|(3) .IP "\s-1INPUT/OUTPUT\s0, \s-1DATA\s0 \s-1ENCODING\s0" 4 .IX Item "INPUT/OUTPUT, DATA ENCODING" \&\fIasn1\fR\|(3), \fIbio\fR\|(3), \fIevp\fR\|(3), \fIpem\fR\|(3), \&\fIpkcs7\fR\|(3), \fIpkcs12\fR\|(3) .IP "\s-1INTERNAL\s0 \s-1FUNCTIONS\s0" 4 .IX Item "INTERNAL FUNCTIONS" \&\fIbn\fR\|(3), \fIbuffer\fR\|(3), \fIlhash\fR\|(3), \&\fIobjects\fR\|(3), \fIstack\fR\|(3), \&\fItxt_db\fR\|(3) .SH "NOTES" .IX Header "NOTES" Some of the newer functions follow a naming convention using the numbers \&\fB0\fR and \fB1\fR. For example the functions: .PP .Vb 2 \& int X509_CRL_add0_revoked(X509_CRL *crl, X509_REVOKED *rev); \& int X509_add1_trust_object(X509 *x, ASN1_OBJECT *obj); .Ve .PP The \fB0\fR version uses the supplied structure pointer directly in the parent and it will be freed up when the parent is freed. In the above example \fBcrl\fR would be freed but \fBrev\fR would not. .PP The \fB1\fR function uses a copy of the supplied structure pointer (or in some cases increases its link count) in the parent and so both (\fBx\fR and \fBobj\fR above) should be freed up. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIopenssl\fR\|(1), \fIssl\fR\|(3) 07070100048c20000081a400000000000000000000000151359611000012b7000000b600010002ffffffffffffffff0000003300000000root/usr/local/ssl/man/man3/DSA_get_ex_new_index.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "DSA_get_ex_new_index 3" .TH DSA_get_ex_new_index 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" DSA_get_ex_new_index, DSA_set_ex_data, DSA_get_ex_data \- add application specific data to DSA structures .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int DSA_get_ex_new_index(long argl, void *argp, \& CRYPTO_EX_new *new_func, \& CRYPTO_EX_dup *dup_func, \& CRYPTO_EX_free *free_func); \& \& int DSA_set_ex_data(DSA *d, int idx, void *arg); \& \& char *DSA_get_ex_data(DSA *d, int idx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions handle application specific data in \s-1DSA\s0 structures. Their usage is identical to that of \&\fIRSA_get_ex_new_index()\fR, \fIRSA_set_ex_data()\fR and \fIRSA_get_ex_data()\fR as described in \fIRSA_get_ex_new_index\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIRSA_get_ex_new_index\fR\|(3), \fIdsa\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIDSA_get_ex_new_index()\fR, \fIDSA_set_ex_data()\fR and \fIDSA_get_ex_data()\fR are available since OpenSSL 0.9.5. 07070100048cd0000081a40000000000000000000000015135961a0000114a000000b600010002ffffffffffffffff0000002b00000000root/usr/local/ssl/man/man3/d2i_DHparams.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "d2i_DHparams 3" .TH d2i_DHparams 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" d2i_DHparams, i2d_DHparams \- PKCS#3 DH parameter functions. .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& DH *d2i_DHparams(DH **a, unsigned char **pp, long length); \& int i2d_DHparams(DH *a, unsigned char **pp); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions decode and encode PKCS#3 \s-1DH\s0 parameters using the DHparameter structure described in PKCS#3. .PP Othewise these behave in a similar way to \fId2i_X509()\fR and \fIi2d_X509()\fR described in the \fId2i_X509\fR\|(3) manual page. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fId2i_X509\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\s-1TBA\s0 07070100048c35000081a400000000000000000000000151359614000026d4000000b600010002ffffffffffffffff0000003000000000root/usr/local/ssl/man/man3/EVP_PKEY_CTX_ctrl.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "EVP_PKEY_CTX_ctrl 3" .TH EVP_PKEY_CTX_ctrl 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" EVP_PKEY_ctrl, EVP_PKEY_ctrl_str \- algorithm specific control operations .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int EVP_PKEY_CTX_ctrl(EVP_PKEY_CTX *ctx, int keytype, int optype, \& int cmd, int p1, void *p2); \& int EVP_PKEY_CTX_ctrl_str(EVP_PKEY_CTX *ctx, const char *type, \& const char *value); \& \& int EVP_PKEY_get_default_digest_nid(EVP_PKEY *pkey, int *pnid); \& \& #include \& \& int EVP_PKEY_CTX_set_signature_md(EVP_PKEY_CTX *ctx, const EVP_MD *md); \& \& int EVP_PKEY_CTX_set_rsa_padding(EVP_PKEY_CTX *ctx, int pad); \& int EVP_PKEY_CTX_set_rsa_pss_saltlen(EVP_PKEY_CTX *ctx, int len); \& int EVP_PKEY_CTX_set_rsa_rsa_keygen_bits(EVP_PKEY_CTX *ctx, int mbits); \& int EVP_PKEY_CTX_set_rsa_keygen_pubexp(EVP_PKEY_CTX *ctx, BIGNUM *pubexp); \& \& #include \& int EVP_PKEY_CTX_set_dsa_paramgen_bits(EVP_PKEY_CTX *ctx, int nbits); \& \& #include \& int EVP_PKEY_CTX_set_dh_paramgen_prime_len(EVP_PKEY_CTX *ctx, int len); \& int EVP_PKEY_CTX_set_dh_paramgen_generator(EVP_PKEY_CTX *ctx, int gen); \& \& #include \& int EVP_PKEY_CTX_set_ec_paramgen_curve_nid(EVP_PKEY_CTX *ctx, int nid); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" The function \fIEVP_PKEY_CTX_ctrl()\fR sends a control operation to the context \&\fBctx\fR. The key type used must match \fBkeytype\fR if it is not \-1. The parameter \&\fBoptype\fR is a mask indicating which operations the control can be applied to. The control command is indicated in \fBcmd\fR and any additional arguments in \&\fBp1\fR and \fBp2\fR. .PP Applications will not normally call \fIEVP_PKEY_CTX_ctrl()\fR directly but will instead call one of the algorithm specific macros below. .PP The function \fIEVP_PKEY_ctrl_str()\fR allows an application to send an algorithm specific control operation to a context \fBctx\fR in string form. This is intended to be used for options specified on the command line or in text files. The commands supported are documented in the openssl utility command line pages for the option \fB\-pkeyopt\fR which is supported by the \&\fBpkeyutl\fR, \fBgenpkey\fR and \fBreq\fR commands. .PP All the remaining \*(L"functions\*(R" are implemented as macros. .PP The \fIEVP_PKEY_CTX_set_signature_md()\fR macro sets the message digest type used in a signature. It can be used with any public key algorithm supporting signature operations. .PP The macro \fIEVP_PKEY_CTX_set_rsa_padding()\fR sets the \s-1RSA\s0 padding mode for \fBctx\fR. The \fBpad\fR parameter can take the value \s-1RSA_PKCS1_PADDING\s0 for PKCS#1 padding, \&\s-1RSA_SSLV23_PADDING\s0 for SSLv23 padding, \s-1RSA_NO_PADDING\s0 for no padding, \&\s-1RSA_PKCS1_OAEP_PADDING\s0 for \s-1OAEP\s0 padding (encrypt and decrypt only), \&\s-1RSA_X931_PADDING\s0 for X9.31 padding (signature operations only) and \&\s-1RSA_PKCS1_PSS_PADDING\s0 (sign and verify only). .PP Two \s-1RSA\s0 padding modes behave differently if \fIEVP_PKEY_CTX_set_signature_md()\fR is used. If this macro is called for PKCS#1 padding the plaintext buffer is an actual digest value and is encapsulated in a DigestInfo structure according to PKCS#1 when signing and this structure is expected (and stripped off) when verifying. If this control is not used with \s-1RSA\s0 and PKCS#1 padding then the supplied data is used directly and not encapsulated. In the case of X9.31 padding for \s-1RSA\s0 the algorithm identifier byte is added or checked and removed if this control is called. If it is not called then the first byte of the plaintext buffer is expected to be the algorithm identifier byte. .PP The \fIEVP_PKEY_CTX_set_rsa_pss_saltlen()\fR macro sets the \s-1RSA\s0 \s-1PSS\s0 salt length to \&\fBlen\fR as its name implies it is only supported for \s-1PSS\s0 padding. Two special values are supported: \-1 sets the salt length to the digest length. When signing \-2 sets the salt length to the maximum permissible value. When verifying \-2 causes the salt length to be automatically determined based on the \&\fB\s-1PSS\s0\fR block structure. If this macro is not called a salt length value of \-2 is used by default. .PP The \fIEVP_PKEY_CTX_set_rsa_rsa_keygen_bits()\fR macro sets the \s-1RSA\s0 key length for \&\s-1RSA\s0 key genration to \fBbits\fR. If not specified 1024 bits is used. .PP The \fIEVP_PKEY_CTX_set_rsa_keygen_pubexp()\fR macro sets the public exponent value for \s-1RSA\s0 key generation to \fBpubexp\fR currently it should be an odd integer. The \&\fBpubexp\fR pointer is used internally by this function so it should not be modified or free after the call. If this macro is not called then 65537 is used. .PP The macro \fIEVP_PKEY_CTX_set_dsa_paramgen_bits()\fR sets the number of bits used for \s-1DSA\s0 parameter generation to \fBbits\fR. If not specified 1024 is used. .PP The macro \fIEVP_PKEY_CTX_set_dh_paramgen_prime_len()\fR sets the length of the \s-1DH\s0 prime parameter \fBp\fR for \s-1DH\s0 parameter generation. If this macro is not called then 1024 is used. .PP The \fIEVP_PKEY_CTX_set_dh_paramgen_generator()\fR macro sets \s-1DH\s0 generator to \fBgen\fR for \s-1DH\s0 parameter generation. If not specified 2 is used. .PP The \fIEVP_PKEY_CTX_set_ec_paramgen_curve_nid()\fR sets the \s-1EC\s0 curve for \s-1EC\s0 parameter generation to \fBnid\fR. For \s-1EC\s0 parameter generation this macro must be called or an error occurs because there is no default curve. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIEVP_PKEY_CTX_ctrl()\fR and its macros return a positive value for success and 0 or a negative value for failure. In particular a return value of \-2 indicates the operation is not supported by the public key algorithm. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIEVP_PKEY_CTX_new\fR\|(3), \&\fIEVP_PKEY_encrypt\fR\|(3), \&\fIEVP_PKEY_decrypt\fR\|(3), \&\fIEVP_PKEY_sign\fR\|(3), \&\fIEVP_PKEY_verify\fR\|(3), \&\fIEVP_PKEY_verify_recover\fR\|(3), \&\fIEVP_PKEY_derive\fR\|(3) \&\fIEVP_PKEY_keygen\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" These functions were first added to OpenSSL 1.0.0. 07070100048c59000081a40000000000000000000000015135961700001d1c000000b600010002ffffffffffffffff0000002700000000root/usr/local/ssl/man/man3/RAND_egd.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "RAND_egd 3" .TH RAND_egd 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" RAND_egd \- query entropy gathering daemon .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int RAND_egd(const char *path); \& int RAND_egd_bytes(const char *path, int bytes); \& \& int RAND_query_egd_bytes(const char *path, unsigned char *buf, int bytes); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIRAND_egd()\fR queries the entropy gathering daemon \s-1EGD\s0 on socket \fBpath\fR. It queries 255 bytes and uses \fIRAND_add\fR\|(3) to seed the OpenSSL built-in \s-1PRNG\s0. RAND_egd(path) is a wrapper for RAND_egd_bytes(path, 255); .PP \&\fIRAND_egd_bytes()\fR queries the entropy gathering daemon \s-1EGD\s0 on socket \fBpath\fR. It queries \fBbytes\fR bytes and uses \fIRAND_add\fR\|(3) to seed the OpenSSL built-in \s-1PRNG\s0. This function is more flexible than \fIRAND_egd()\fR. When only one secret key must be generated, it is not necessary to request the full amount 255 bytes from the \s-1EGD\s0 socket. This can be advantageous, since the amount of entropy that can be retrieved from \s-1EGD\s0 over time is limited. .PP \&\fIRAND_query_egd_bytes()\fR performs the actual query of the \s-1EGD\s0 daemon on socket \&\fBpath\fR. If \fBbuf\fR is given, \fBbytes\fR bytes are queried and written into \&\fBbuf\fR. If \fBbuf\fR is \s-1NULL\s0, \fBbytes\fR bytes are queried and used to seed the OpenSSL built-in \s-1PRNG\s0 using \fIRAND_add\fR\|(3). .SH "NOTES" .IX Header "NOTES" On systems without /dev/*random devices providing entropy from the kernel, the \s-1EGD\s0 entropy gathering daemon can be used to collect entropy. It provides a socket interface through which entropy can be gathered in chunks up to 255 bytes. Several chunks can be queried during one connection. .PP \&\s-1EGD\s0 is available from http://www.lothar.com/tech/crypto/ (\f(CW\*(C`perl Makefile.PL; make; make install\*(C'\fR to install). It is run as \fBegd\fR \&\fIpath\fR, where \fIpath\fR is an absolute path designating a socket. When \&\fIRAND_egd()\fR is called with that path as an argument, it tries to read random bytes that \s-1EGD\s0 has collected. \fIRAND_egd()\fR retrieves entropy from the daemon using the daemon's \*(L"non-blocking read\*(R" command which shall be answered immediately by the daemon without waiting for additional entropy to be collected. The write and read socket operations in the communication are blocking. .PP Alternatively, the EGD-interface compatible daemon \s-1PRNGD\s0 can be used. It is available from http://prngd.sourceforge.net/ . \&\s-1PRNGD\s0 does employ an internal \s-1PRNG\s0 itself and can therefore never run out of entropy. .PP OpenSSL automatically queries \s-1EGD\s0 when entropy is requested via \fIRAND_bytes()\fR or the status is checked via \fIRAND_status()\fR for the first time, if the socket is located at /var/run/egd\-pool, /dev/egd\-pool or /etc/egd\-pool. .SH "RETURN VALUE" .IX Header "RETURN VALUE" \&\fIRAND_egd()\fR and \fIRAND_egd_bytes()\fR return the number of bytes read from the daemon on success, and \-1 if the connection failed or the daemon did not return enough data to fully seed the \s-1PRNG\s0. .PP \&\fIRAND_query_egd_bytes()\fR returns the number of bytes read from the daemon on success, and \-1 if the connection failed. The \s-1PRNG\s0 state is not considered. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIrand\fR\|(3), \fIRAND_add\fR\|(3), \&\fIRAND_cleanup\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIRAND_egd()\fR is available since OpenSSL 0.9.5. .PP \&\fIRAND_egd_bytes()\fR is available since OpenSSL 0.9.6. .PP \&\fIRAND_query_egd_bytes()\fR is available since OpenSSL 0.9.7. .PP The automatic query of /var/run/egd\-pool et al was added in OpenSSL 0.9.7. 07070100048ca2000081a40000000000000000000000015135962300001658000000b600010002ffffffffffffffff0000004100000000root/usr/local/ssl/man/man3/SSL_get_ex_data_X509_STORE_CTX_idx.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_get_ex_data_X509_STORE_CTX_idx 3" .TH SSL_get_ex_data_X509_STORE_CTX_idx 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_get_ex_data_X509_STORE_CTX_idx \- get ex_data index to access SSL structure from X509_STORE_CTX .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_get_ex_data_X509_STORE_CTX_idx(void); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_get_ex_data_X509_STORE_CTX_idx()\fR returns the index number under which the pointer to the \s-1SSL\s0 object is stored into the X509_STORE_CTX object. .SH "NOTES" .IX Header "NOTES" Whenever a X509_STORE_CTX object is created for the verification of the peers certificate during a handshake, a pointer to the \s-1SSL\s0 object is stored into the X509_STORE_CTX object to identify the connection affected. To retrieve this pointer the \fIX509_STORE_CTX_get_ex_data()\fR function can be used with the correct index. This index is globally the same for all X509_STORE_CTX objects and can be retrieved using \&\fISSL_get_ex_data_X509_STORE_CTX_idx()\fR. The index value is set when \&\fISSL_get_ex_data_X509_STORE_CTX_idx()\fR is first called either by the application program directly or indirectly during other \s-1SSL\s0 setup functions or during the handshake. .PP The value depends on other index values defined for X509_STORE_CTX objects before the \s-1SSL\s0 index is created. .SH "RETURN VALUES" .IX Header "RETURN VALUES" .IP ">=0" 4 .IX Item ">=0" The index value to access the pointer. .IP "<0" 4 .IX Item "<0" An error occurred, check the error stack for a detailed error message. .SH "EXAMPLES" .IX Header "EXAMPLES" The index returned from \fISSL_get_ex_data_X509_STORE_CTX_idx()\fR allows to access the \s-1SSL\s0 object for the connection to be accessed during the \&\fIverify_callback()\fR when checking the peers certificate. Please check the example in \fISSL_CTX_set_verify\fR\|(3), .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_CTX_set_verify\fR\|(3), \&\fICRYPTO_set_ex_data\fR\|(3) 07070100048c53000081a400000000000000000000000151359616000022ac000000b600010002ffffffffffffffff0000002900000000root/usr/local/ssl/man/man3/PKCS7_sign.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "PKCS7_sign 3" .TH PKCS7_sign 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" PKCS7_sign \- create a PKCS#7 signedData structure .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& PKCS7 *PKCS7_sign(X509 *signcert, EVP_PKEY *pkey, STACK_OF(X509) *certs, BIO *data, int flags); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fIPKCS7_sign()\fR creates and returns a PKCS#7 signedData structure. \fBsigncert\fR is the certificate to sign with, \fBpkey\fR is the corresponsding private key. \&\fBcerts\fR is an optional additional set of certificates to include in the PKCS#7 structure (for example any intermediate CAs in the chain). .PP The data to be signed is read from \s-1BIO\s0 \fBdata\fR. .PP \&\fBflags\fR is an optional set of flags. .SH "NOTES" .IX Header "NOTES" Any of the following flags (ored together) can be passed in the \fBflags\fR parameter. .PP Many S/MIME clients expect the signed content to include valid \s-1MIME\s0 headers. If the \fB\s-1PKCS7_TEXT\s0\fR flag is set \s-1MIME\s0 headers for type \fBtext/plain\fR are prepended to the data. .PP If \fB\s-1PKCS7_NOCERTS\s0\fR is set the signer's certificate will not be included in the \&\s-1PKCS7\s0 structure, the signer's certificate must still be supplied in the \&\fBsigncert\fR parameter though. This can reduce the size of the signature if the signers certificate can be obtained by other means: for example a previously signed message. .PP The data being signed is included in the \s-1PKCS7\s0 structure, unless \&\fB\s-1PKCS7_DETACHED\s0\fR is set in which case it is omitted. This is used for \s-1PKCS7\s0 detached signatures which are used in S/MIME plaintext signed messages for example. .PP Normally the supplied content is translated into \s-1MIME\s0 canonical format (as required by the S/MIME specifications) if \fB\s-1PKCS7_BINARY\s0\fR is set no translation occurs. This option should be used if the supplied data is in binary format otherwise the translation will corrupt it. .PP The signedData structure includes several PKCS#7 autenticatedAttributes including the signing time, the PKCS#7 content type and the supported list of ciphers in an SMIMECapabilities attribute. If \fB\s-1PKCS7_NOATTR\s0\fR is set then no authenticatedAttributes will be used. If \fB\s-1PKCS7_NOSMIMECAP\s0\fR is set then just the SMIMECapabilities are omitted. .PP If present the SMIMECapabilities attribute indicates support for the following algorithms: triple \s-1DES\s0, 128 bit \s-1RC2\s0, 64 bit \s-1RC2\s0, \s-1DES\s0 and 40 bit \s-1RC2\s0. If any of these algorithms is disabled then it will not be included. .PP If the flags \fB\s-1PKCS7_STREAM\s0\fR is set then the returned \fB\s-1PKCS7\s0\fR structure is just initialized ready to perform the signing operation. The signing is however \&\fBnot\fR performed and the data to be signed is not read from the \fBdata\fR parameter. Signing is deferred until after the data has been written. In this way data can be signed in a single pass. .PP If the \fB\s-1PKCS7_PARTIAL\s0\fR flag is set a partial \fB\s-1PKCS7\s0\fR structure is output to which additional signers and capabilities can be added before finalization. .SH "NOTES" .IX Header "NOTES" If the flag \fB\s-1PKCS7_STREAM\s0\fR is set the returned \fB\s-1PKCS7\s0\fR structure is \fBnot\fR complete and outputting its contents via a function that does not properly finalize the \fB\s-1PKCS7\s0\fR structure will give unpredictable results. .PP Several functions including \fISMIME_write_PKCS7()\fR, \fIi2d_PKCS7_bio_stream()\fR, \&\fIPEM_write_bio_PKCS7_stream()\fR finalize the structure. Alternatively finalization can be performed by obtaining the streaming \s-1ASN1\s0 \fB\s-1BIO\s0\fR directly using \&\fIBIO_new_PKCS7()\fR. .PP If a signer is specified it will use the default digest for the signing algorithm. This is \fB\s-1SHA1\s0\fR for both \s-1RSA\s0 and \s-1DSA\s0 keys. .PP In OpenSSL 1.0.0 the \fBcerts\fR, \fBsigncert\fR and \fBpkey\fR parameters can all be \&\fB\s-1NULL\s0\fR if the \fB\s-1PKCS7_PARTIAL\s0\fR flag is set. One or more signers can be added using the function \fB\f(BIPKCS7_sign_add_signer()\fB\fR. \fB\f(BIPKCS7_final()\fB\fR must also be called to finalize the structure if streaming is not enabled. Alternative signing digests can also be specified using this method. .PP In OpenSSL 1.0.0 if \fBsigncert\fR and \fBpkey\fR are \s-1NULL\s0 then a certificates only PKCS#7 structure is output. .PP In versions of OpenSSL before 1.0.0 the \fBsigncert\fR and \fBpkey\fR parameters must \&\fB\s-1NOT\s0\fR be \s-1NULL\s0. .SH "BUGS" .IX Header "BUGS" Some advanced attributes such as counter signatures are not supported. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIPKCS7_sign()\fR returns either a valid \s-1PKCS7\s0 structure or \s-1NULL\s0 if an error occurred. The error can be obtained from \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIERR_get_error\fR\|(3), \fIPKCS7_verify\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIPKCS7_sign()\fR was added to OpenSSL 0.9.5 .PP The \fB\s-1PKCS7_PARTIAL\s0\fR flag was added in OpenSSL 1.0.0 .PP The \fB\s-1PKCS7_STREAM\s0\fR flag was added in OpenSSL 1.0.0 07070100048c7e000081a40000000000000000000000015135961f00001a30000000b600010002ffffffffffffffff0000003600000000root/usr/local/ssl/man/man3/SSL_CTX_set_cipher_list.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_set_cipher_list 3" .TH SSL_CTX_set_cipher_list 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_set_cipher_list, SSL_set_cipher_list \- choose list of available SSL_CIPHERs .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& int SSL_CTX_set_cipher_list(SSL_CTX *ctx, const char *str); \& int SSL_set_cipher_list(SSL *ssl, const char *str); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" \&\fISSL_CTX_set_cipher_list()\fR sets the list of available ciphers for \fBctx\fR using the control string \fBstr\fR. The format of the string is described in \fIciphers\fR\|(1). The list of ciphers is inherited by all \&\fBssl\fR objects created from \fBctx\fR. .PP \&\fISSL_set_cipher_list()\fR sets the list of ciphers only for \fBssl\fR. .SH "NOTES" .IX Header "NOTES" The control string \fBstr\fR should be universally usable and not depend on details of the library configuration (ciphers compiled in). Thus no syntax checking takes place. Items that are not recognized, because the corresponding ciphers are not compiled in or because they are mistyped, are simply ignored. Failure is only flagged if no ciphers could be collected at all. .PP It should be noted, that inclusion of a cipher to be used into the list is a necessary condition. On the client side, the inclusion into the list is also sufficient. On the server side, additional restrictions apply. All ciphers have additional requirements. \s-1ADH\s0 ciphers don't need a certificate, but DH-parameters must have been set. All other ciphers need a corresponding certificate and key. .PP A \s-1RSA\s0 cipher can only be chosen, when a \s-1RSA\s0 certificate is available. \&\s-1RSA\s0 export ciphers with a keylength of 512 bits for the \s-1RSA\s0 key require a temporary 512 bit \s-1RSA\s0 key, as typically the supplied key has a length of 1024 bit (see \&\fISSL_CTX_set_tmp_rsa_callback\fR\|(3)). \&\s-1RSA\s0 ciphers using \s-1EDH\s0 need a certificate and key and additional DH-parameters (see \fISSL_CTX_set_tmp_dh_callback\fR\|(3)). .PP A \s-1DSA\s0 cipher can only be chosen, when a \s-1DSA\s0 certificate is available. \&\s-1DSA\s0 ciphers always use \s-1DH\s0 key exchange and therefore need DH-parameters (see \fISSL_CTX_set_tmp_dh_callback\fR\|(3)). .PP When these conditions are not met for any cipher in the list (e.g. a client only supports export \s-1RSA\s0 ciphers with a asymmetric key length of 512 bits and the server is not configured to use temporary \s-1RSA\s0 keys), the \*(L"no shared cipher\*(R" (\s-1SSL_R_NO_SHARED_CIPHER\s0) error is generated and the handshake will fail. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fISSL_CTX_set_cipher_list()\fR and \fISSL_set_cipher_list()\fR return 1 if any cipher could be selected and 0 on complete failure. .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIssl\fR\|(3), \fISSL_get_ciphers\fR\|(3), \&\fISSL_CTX_use_certificate\fR\|(3), \&\fISSL_CTX_set_tmp_rsa_callback\fR\|(3), \&\fISSL_CTX_set_tmp_dh_callback\fR\|(3), \&\fIciphers\fR\|(1) 07070100048bf2000081a40000000000000000000000015135960d0000158d000000b600010002ffffffffffffffff0000002b00000000root/usr/local/ssl/man/man3/BN_CTX_start.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "BN_CTX_start 3" .TH BN_CTX_start 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" BN_CTX_start, BN_CTX_get, BN_CTX_end \- use temporary BIGNUM variables .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& void BN_CTX_start(BN_CTX *ctx); \& \& BIGNUM *BN_CTX_get(BN_CTX *ctx); \& \& void BN_CTX_end(BN_CTX *ctx); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" These functions are used to obtain temporary \fB\s-1BIGNUM\s0\fR variables from a \fB\s-1BN_CTX\s0\fR (which can been created by using \fIBN_CTX_new\fR\|(3)) in order to save the overhead of repeatedly creating and freeing \fB\s-1BIGNUM\s0\fRs in functions that are called from inside a loop. .PP A function must call \fIBN_CTX_start()\fR first. Then, \fIBN_CTX_get()\fR may be called repeatedly to obtain temporary \fB\s-1BIGNUM\s0\fRs. All \fIBN_CTX_get()\fR calls must be made before calling any other functions that use the \&\fBctx\fR as an argument. .PP Finally, \fIBN_CTX_end()\fR must be called before returning from the function. When \fIBN_CTX_end()\fR is called, the \fB\s-1BIGNUM\s0\fR pointers obtained from \&\fIBN_CTX_get()\fR become invalid. .SH "RETURN VALUES" .IX Header "RETURN VALUES" \&\fIBN_CTX_start()\fR and \fIBN_CTX_end()\fR return no values. .PP \&\fIBN_CTX_get()\fR returns a pointer to the \fB\s-1BIGNUM\s0\fR, or \fB\s-1NULL\s0\fR on error. Once \fIBN_CTX_get()\fR has failed, the subsequent calls will return \fB\s-1NULL\s0\fR as well, so it is sufficient to check the return value of the last \&\fIBN_CTX_get()\fR call. In case of an error, an error code is set, which can be obtained by \fIERR_get_error\fR\|(3). .SH "SEE ALSO" .IX Header "SEE ALSO" \&\fIBN_CTX_new\fR\|(3) .SH "HISTORY" .IX Header "HISTORY" \&\fIBN_CTX_start()\fR, \fIBN_CTX_get()\fR and \fIBN_CTX_end()\fR were added in OpenSSL 0.9.5. 07070100048c87000081a4000000000000000000000001513596200000472f000000b600010002ffffffffffffffff0000003200000000root/usr/local/ssl/man/man3/SSL_CTX_set_options.3.\" Automatically generated by Pod::Man 2.23 (Pod::Simple 3.14) .\" .\" Standard preamble: .\" ======================================================================== .de Sp \" Vertical space (when we can't use .PP) .if t .sp .5v .if n .sp .. .de Vb \" Begin verbatim text .ft CW .nf .ne \\$1 .. .de Ve \" End verbatim text .ft R .fi .. .\" Set up some character translations and predefined strings. \*(-- will .\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left .\" double quote, and \*(R" will give a right double quote. \*(C+ will .\" give a nicer C++. Capital omega is used to do unbreakable dashes and .\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff, .\" nothing in troff, for use with C<>. .tr \(*W- .ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p' .ie n \{\ . ds -- \(*W- . ds PI pi . if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch . if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch . ds L" "" . ds R" "" . ds C` "" . ds C' "" 'br\} .el\{\ . ds -- \|\(em\| . ds PI \(*p . ds L" `` . ds R" '' 'br\} .\" .\" Escape single quotes in literal strings from groff's Unicode transform. .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" .\" If the F register is turned on, we'll generate index entries on stderr for .\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index .\" entries marked with X<> in POD. Of course, you'll have to process the .\" output yourself in some meaningful fashion. .ie \nF \{\ . de IX . tm Index:\\$1\t\\n%\t"\\$2" .. . nr % 0 . rr F .\} .el \{\ . de IX .. .\} .\" .\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2). .\" Fear. Run. Save yourself. No user-serviceable parts. . \" fudge factors for nroff and troff .if n \{\ . ds #H 0 . ds #V .8m . ds #F .3m . ds #[ \f1 . ds #] \fP .\} .if t \{\ . ds #H ((1u-(\\\\n(.fu%2u))*.13m) . ds #V .6m . ds #F 0 . ds #[ \& . ds #] \& .\} . \" simple accents for nroff and troff .if n \{\ . ds ' \& . ds ` \& . ds ^ \& . ds , \& . ds ~ ~ . ds / .\} .if t \{\ . ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u" . ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u' . ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u' . ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u' . ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u' . ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u' .\} . \" troff and (daisy-wheel) nroff accents .ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V' .ds 8 \h'\*(#H'\(*b\h'-\*(#H' .ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#] .ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H' .ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u' .ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#] .ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#] .ds ae a\h'-(\w'a'u*4/10)'e .ds Ae A\h'-(\w'A'u*4/10)'E . \" corrections for vroff .if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u' .if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u' . \" for low resolution devices (crt and lpr) .if \n(.H>23 .if \n(.V>19 \ \{\ . ds : e . ds 8 ss . ds o a . ds d- d\h'-1'\(ga . ds D- D\h'-1'\(hy . ds th \o'bp' . ds Th \o'LP' . ds ae ae . ds Ae AE .\} .rm #[ #] #H #V #F C .\" ======================================================================== .\" .IX Title "SSL_CTX_set_options 3" .TH SSL_CTX_set_options 3 "2013-02-12" "1.0.1e" "OpenSSL" .\" For nroff, turn off justification. Always turn off hyphenation; it makes .\" way too many mistakes in technical documents. .if n .ad l .nh .SH "NAME" SSL_CTX_set_options, SSL_set_options, SSL_CTX_clear_options, SSL_clear_options, SSL_CTX_get_options, SSL_get_options, SSL_get_secure_renegotiation_support \- manipulate SSL options .SH "SYNOPSIS" .IX Header "SYNOPSIS" .Vb 1 \& #include \& \& long SSL_CTX_set_options(SSL_CTX *ctx, long options); \& long SSL_set_options(SSL *ssl, long options); \& \& long SSL_CTX_clear_options(SSL_CTX *ctx, long options); \& long SSL_clear_options(SSL *ssl, long options); \& \& long SSL_CTX_get_options(SSL_CTX *ctx); \& long SSL_get_options(SSL *ssl); \& \& long SSL_get_secure_renegotiation_support(SSL *ssl); .Ve .SH "DESCRIPTION" .IX Header "DESCRIPTION" Note: all these functions are implemented using macros. .PP \&\fISSL_CTX_set_options()\fR adds the options set via bitmask in \fBoptions\fR to \fBctx\fR. Options already set before are not cleared! .PP \&\fISSL_set_options()\fR adds the options set via bitmask in \fBoptions\fR to \fBssl\fR. Options already set before are not cleared! .PP \&\fISSL_CTX_clear_options()\fR clears the options set via bitmask in \fBoptions\fR to \fBctx\fR. .PP \&\fISSL_clear_options()\fR clears the options set via bitmask in \fBoptions\fR to \fBssl\fR. .PP \&\fISSL_CTX_get_options()\fR returns the options set for \fBctx\fR. .PP \&\fISSL_get_options()\fR returns the options set for \fBssl\fR. .PP \&\fISSL_get_secure_renegotiation_support()\fR indicates whether the peer supports secure renegotiation. .SH "NOTES" .IX Header "NOTES" The behaviour of the \s-1SSL\s0 library can be changed by setting several options. The options are coded as bitmasks and can be combined by a logical \fBor\fR operation (|). .PP \&\fISSL_CTX_set_options()\fR and \fISSL_set_options()\fR affect the (external) protocol behaviour of the \s-1SSL\s0 library. The (internal) behaviour of the \s-1API\s0 can be changed by using the similar \&\fISSL_CTX_set_mode\fR\|(3) and \fISSL_set_mode()\fR functions. .PP During a handshake, the option settings of the \s-1SSL\s0 object are used. When a new \s-1SSL\s0 object is created from a context using \fISSL_new()\fR, the current option setting is copied. Changes to \fBctx\fR do not affect already created \&\s-1SSL\s0 objects. \fISSL_clear()\fR does not affect the settings. .PP The following \fBbug workaround\fR options are available: .IP "\s-1SSL_OP_MICROSOFT_SESS_ID_BUG\s0" 4 .IX Item "SSL_OP_MICROSOFT_SESS_ID_BUG" www.microsoft.com \- when talking SSLv2, if session-id reuse is performed, the session-id passed back in the server-finished message is different from the one decided upon. .IP "\s-1SSL_OP_NETSCAPE_CHALLENGE_BUG\s0" 4 .IX Item "SSL_OP_NETSCAPE_CHALLENGE_BUG" Netscape\-Commerce/1.12, when talking SSLv2, accepts a 32 byte challenge but then appears to only use 16 bytes when generating the encryption keys. Using 16 bytes is ok but it should be ok to use 32. According to the SSLv3 spec, one should use 32 bytes for the challenge when operating in SSLv2/v3 compatibility mode, but as mentioned above, this breaks this server so 16 bytes is the way to go. .IP "\s-1SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG\s0" 4 .IX Item "SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG" As of OpenSSL 0.9.8q and 1.0.0c, this option has no effect. .IP "\s-1SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG\s0" 4 .IX Item "SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG" \&... .IP "\s-1SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER\s0" 4 .IX Item "SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER" \&... .IP "\s-1SSL_OP_MSIE_SSLV2_RSA_PADDING\s0" 4 .IX Item "SSL_OP_MSIE_SSLV2_RSA_PADDING" As of OpenSSL 0.9.7h and 0.9.8a, this option has no effect. .IP "\s-1SSL_OP_SSLEAY_080_CLIENT_DH_BUG\s0" 4 .IX Item "SSL_OP_SSLEAY_080_CLIENT_DH_BUG" \&... .IP "\s-1SSL_OP_TLS_D5_BUG\s0" 4 .IX Item "SSL_OP_TLS_D5_BUG" \&... .IP "\s-1SSL_OP_TLS_BLOCK_PADDING_BUG\s0" 4 .IX Item "SSL_OP_TLS_BLOCK_PADDING_BUG" \&... .IP "\s-1SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS\s0" 4 .IX Item "SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS" Disables a countermeasure against a \s-1SSL\s0 3.0/TLS 1.0 protocol vulnerability affecting \s-1CBC\s0 ciphers, which cannot be handled by some broken \s-1SSL\s0 implementations. This option has no effect for connections using other ciphers. .IP "\s-1SSL_OP_ALL\s0" 4 .IX Item "SSL_OP_ALL" All of the above bug workarounds. .PP It is usually safe to use \fB\s-1SSL_OP_ALL\s0\fR to enable the bug workaround options if compatibility with somewhat broken implementations is desired. .PP The following \fBmodifying\fR options are available: .IP "\s-1SSL_OP_TLS_ROLLBACK_BUG\s0" 4 .IX Item "SSL_OP_TLS_ROLLBACK_BUG" Disable version rollback attack detection. .Sp During the client key exchange, the client must send the same information about acceptable \s-1SSL/TLS\s0 protocol levels as during the first hello. Some clients violate this rule by adapting to the server's answer. (Example: the client sends a SSLv2 hello and accepts up to SSLv3.1=TLSv1, the server only understands up to SSLv3. In this case the client must still use the same SSLv3.1=TLSv1 announcement. Some clients step down to SSLv3 with respect to the server's answer and violate the version rollback protection.) .IP "\s-1SSL_OP_SINGLE_DH_USE\s0" 4 .IX Item "SSL_OP_SINGLE_DH_USE" Always create a new key when using temporary/ephemeral \s-1DH\s0 parameters (see \fISSL_CTX_set_tmp_dh_callback\fR\|(3)). This option must be used to prevent small subgroup attacks, when the \s-1DH\s0 parameters were not generated using \*(L"strong\*(R" primes (e.g. when using DSA-parameters, see \fIdhparam\fR\|(1)). If \*(L"strong\*(R" primes were used, it is not strictly necessary to generate a new \s-1DH\s0 key during each handshake but it is also recommended. \&\fB\s-1SSL_OP_SINGLE_DH_USE\s0\fR should therefore be enabled whenever temporary/ephemeral \s-1DH\s0 parameters are used. .IP "\s-1SSL_OP_EPHEMERAL_RSA\s0" 4 .IX Item "SSL_OP_EPHEMERAL_RSA" Always use ephemeral (temporary) \s-1RSA\s0 key when doing \s-1RSA\s0 operations (see \fISSL_CTX_set_tmp_rsa_callback\fR\|(3)). According to the specifications this is only done, when a \s-1RSA\s0 key can only be used for signature operations (namely under export ciphers with restricted \s-1RSA\s0 keylength). By setting this option, ephemeral \&\s-1RSA\s0 keys are always used. This option breaks compatibility with the \&\s-1SSL/TLS\s0 specifications and may lead to interoperability problems with clients and should therefore never be used. Ciphers with \s-1EDH\s0 (ephemeral Diffie-Hellman) key exchange should be used instead. .IP "\s-1SSL_OP_CIPHER_SERVER_PREFERENCE\s0" 4 .IX Item "SSL_OP_CIPHER_SERVER_PREFERENCE" When choosing a cipher, use the server's preferences instead of the client preferences. When not set, the \s-1SSL\s0 server will always follow the clients preferences. When set, the SSLv3/TLSv1 server will choose following its own preferences. Because of the different protocol, for SSLv2 the server will send its list of preferences to the client and the client chooses. .IP "\s-1SSL_OP_PKCS1_CHECK_1\s0" 4 .IX Item "SSL_OP_PKCS1_CHECK_1" \&... .IP "\s-1SSL_OP_PKCS1_CHECK_2\s0" 4 .IX Item "SSL_OP_PKCS1_CHECK_2" \&... .IP "\s-1SSL_OP_NETSCAPE_CA_DN_BUG\s0" 4 .IX Item "SSL_OP_NETSCAPE_CA_DN_BUG" If we accept a netscape connection, demand a client cert, have a non-self-signed \s-1CA\s0 which does not have its \s-1CA\s0 in netscape, and the browser has a cert, it will crash/hang. Works for 3.x and 4.xbeta .IP "\s-1SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG\s0" 4 .IX Item "SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG" \&... .IP "SSL_OP_NO_SSLv2" 4 .IX Item "SSL_OP_NO_SSLv2" Do not use the SSLv2 protocol. .IP "SSL_OP_NO_SSLv3" 4 .IX Item "SSL_OP_NO_SSLv3" Do not use the SSLv3 protocol. .IP "SSL_OP_NO_TLSv1" 4 .IX Item "SSL_OP_NO_TLSv1" Do not use the TLSv1 protocol. .IP "\s-1SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION\s0" 4 .IX Item "SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION" When performing renegotiation as a server, always start a new session (i.e., session resumption requests are only accepted in the initial handshake). This option is not needed for clients. .IP "\s-1SSL_OP_NO_TICKET\s0" 4 .IX Item "SSL_OP_NO_TICKET" Normally clients and servers will, where possible, transparently make use of RFC4507bis tickets for stateless session resumption. .Sp If this option is set this functionality is disabled and tickets will not be used by clients or servers. .IP "\s-1SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION\s0" 4 .IX Item "SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION" Allow legacy insecure renegotiation between OpenSSL and unpatched clients or servers. See the \fB\s-1SECURE\s0 \s-1RENEGOTIATION\s0\fR section for more details. .IP "\s-1SSL_OP_LEGACY_SERVER_CONNECT\s0" 4 .IX Item "SSL_OP_LEGACY_SERVER_CONNECT" Allow legacy insecure renegotiation between OpenSSL and unpatched servers \&\fBonly\fR: this option is currently set by default. See the \&\fB\s-1SECURE\s0 \s-1RENEGOTIATION\s0\fR section for more details. .SH "SECURE RENEGOTIATION" .IX Header "SECURE RENEGOTIATION" OpenSSL 0.9.8m and later always attempts to use secure renegotiation as described in \s-1RFC5746\s0. This counters the prefix attack described in \&\s-1CVE\-2009\-3555\s0 and elsewhere. .PP The deprecated and highly broken SSLv2 protocol does not support renegotiation at all: its use is \fBstrongly\fR discouraged. .PP This attack has far reaching consequences which application writers should be aware of. In the description below an implementation supporting secure renegotiation is referred to as \fIpatched\fR. A server not supporting secure renegotiation is referred to as \fIunpatched\fR. .PP The following sections describe the operations permitted by OpenSSL's secure renegotiation implementation. .SS "Patched client and server" .IX Subsection "Patched client and server" Connections and renegotiation are always permitted by OpenSSL implementations. .SS "Unpatched client and patched OpenSSL server" .IX Subsection "Unpatched client and patched OpenSSL server" The initial connection suceeds but client renegotiation is denied by the server with a \fBno_renegotiation\fR warning alert if \s-1TLS\s0 v1.0 is used or a fatal \&\fBhandshak