2876 Commits

Author SHA1 Message Date
Roland C. Dowdeswell df73c96b74 Populate creds in get_new_tickets before actually using it.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2012-01-29 20:58:12 -08:00
Nicolas Williams 9323ca9341 Fix krb5_kuserok() ~/.k5login check for luser==root 2012-01-18 23:24:22 -06:00
Nicolas Williams 6dd66df594 Make master build on Windows
Add strtoll()/strtoull() to lib/roken
    Add stdint.h to lib/roken (Windows only)
    Add logic to detect whether to use lib/roken's stdint.h based on
        Visual Studio version
    Add include of stdint.h in generated ASN.1 code
    Export missing symbols for 64-bit integers in lib/asn1
    Export missing symbols for FAST
    Add missing sources to kdc/NTMakefile
    Fix issue in kuserok
    Fix bsearch issues
2012-01-17 12:10:14 -06:00
Patrik Lundin 10bca3892d Add missing "Debugging Kerberos problems" to menu.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2012-01-15 21:56:37 +01:00
Nicolas Williams 11763aecc7 There's no HEIM_BOOL_TRUE; use heim_bool_create(1) instead 2012-01-13 16:18:50 -06:00
Roland C. Dowdeswell 74db6a120f Change #elseif to #elif.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2012-01-10 22:54:50 +01:00
Love Hornquist Astrand 0f9f9d3ab6 add strtoll.c 2012-01-10 22:54:16 +01:00
Love Hornquist Astrand 07a88f4b5a use no-store 2012-01-10 22:54:16 +01:00
Love Hornquist Astrand 9b0bc022f1 support kgetcred 2012-01-10 22:54:16 +01:00
Love Hornquist Astrand a372712fd0 test tgs-req too 2012-01-10 22:54:16 +01:00
Love Hornquist Astrand 0d7d3e4ab5 allow overriding default krb5_config_file 2012-01-10 22:54:16 +01:00
Andrew Bartlett 7a89f14aa5 Revert "make paranoia check less paranoid" - check that key types strictly match
This reverts commit c25af51232 because
otherwise we could attempt to check a CKSUMTYPE_HMAC_SHA1_96_AES_256 key with a
KRB5_ENCTYPE_ARCFOUR_HMAC_MD5 key.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2012-01-10 22:54:16 +01:00
Andrew Bartlett cdc04ce0ff make hmac-md5 the keyed checksum type for arcfour-hmac-md5
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2012-01-10 22:54:16 +01:00
Andrew Bartlett 5ce504c1fb use ETYPE_DES3_CBC_SHA1 for the verify step in verify_mic_des3
This allows a strict link between checksum types and key types to be
enforced.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2012-01-10 22:54:16 +01:00
Jeffrey Altman 81db1ebce2 Correct d68aee90ed
in any case.  Both EAI_NODATA and WSANO_DATA can exist at the
same time.

Change-Id: I4378d8d3a5471a472a9b32632b0c70a1d717b951
2012-01-10 10:19:27 -05:00
Jeffrey Altman d68aee90ed Windows: translate WSANO_DATA to HEIM_EAI_NODAT
Change-Id: I9116ab68b1f2ac4417577125df1efc5a1b42c89e
2012-01-08 17:10:01 -05:00
Nicolas Williams 7d7624f7f7 Fix CVE-2011-4862 Buffer overflow in libtelnet/encrypt.c in telnetd
http://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2011-4862
    http://security.freebsd.org/advisories/FreeBSD-SA-11:08.telnetd.asc
    http://security.freebsd.org/patches/SA-11:08/telnetd.patch
2011-12-28 17:50:30 -06:00
Russ Allbery 5ca056969a Close memory leak in the client kadmin library
kadm5_c_destroy was not freeing the kadm5_client_context, just its
contents.  Also free the context itself.

Signed-off-by: Nicolas Williams <nico@cryptonector.com>
2011-12-22 18:36:17 -06:00
Nicolas Williams d769eced7b Plugin symbols can't have '-' in them... Also add example to krb5-plugin.7 2011-12-22 17:44:47 -06:00
Russ Allbery 911c993757 Fix reauthentication after password change in init_creds_password
When retrying authentication after a password change of an expired
password, use the new password instead of the original one.  Also,
pass in the correct length for the new password buffer to
change_password and zero the buffer that holds the new password on
function exit.

Signed-off-by: Russ Allbery <rra@stanford.edu>
Signed-off-by: Nicolas Williams <nico@cryptonector.com>
2011-12-22 14:53:08 -06:00
Russ Allbery 0f81a468a3 Link kdc-tester with libheimbase directly
It directly uses symbols provided by that library.

Signed-off-by: Nicolas Williams <nico@cryptonector.com>
2011-12-22 14:52:58 -06:00
Nicolas Williams 223af60018 Oops, forgot to actually add krb5-plugin.7
I use a shell alias that expands to git add -uv ..., and the -u
    means new files don't get added :(
2011-12-22 14:42:05 -06:00
Nicolas Williams 25e623a957 Fix doxygen comment in krb5_aname_to_lname() 2011-12-22 11:17:42 -06:00
Nicolas Williams 672f6285ce Add doxygen docs for some plugin structs 2011-12-22 11:17:21 -06:00
Nicolas Williams 8aa248370f Make the build system make and install section 7 manpages 2011-12-21 15:43:56 -06:00
Nicolas Williams 06974f27cb Add a krb5-plugin.7 manpage to document the plugin system 2011-12-21 13:59:37 -06:00
Love Hornquist Astrand a66a23bb45 Apply old patch from me that handles client's behind NAT
Tested by Harald Barth and bugfix by Ragnar Sundblad
2011-12-15 22:00:00 -08:00
Love Hornquist Astrand b6f3ca6712 add heim_show, sort lines 2011-12-15 21:51:06 -08:00
Love Hornquist Astrand 8e1b58e923 move function pointer to last argument 2011-12-15 21:48:33 -08:00
Love Hornquist Astrand b780dddb9b add show 2011-12-15 21:48:20 -08:00
Love Hornquist Astrand d05e64b967 move function pointer to last argument 2011-12-15 21:48:09 -08:00
Love Hornquist Astrand 8deda7a299 add show, move function pointer to last argument 2011-12-15 21:47:56 -08:00
Love Hornquist Astrand 9cfc014a66 name KRB5_PLUGIN_KUSEROK "kuserok-plugin" 2011-12-15 21:46:43 -08:00
Nicolas Williams dd05873d0c Fix regression in ASN.1 int type generation
The 64-bit integer support changed the logic for deciding when an
    INTEGER should map to a signed or unsigned 32- or 64-bit integer
    type.  The upshot is that two places where we had {0, INT_MAX}
    ranges needed to be changed to be {0, UINT_MAX}.

    We need to tweak the integer type mapping logic to have a bias for
    unsigned integer types.  Unsigned is better.
2011-12-15 14:37:09 -06:00
Nicolas Williams 4630ef1bdc Fix kuserok.c:check_owner_file(), make tests/kdc/check-authz run 2011-12-14 18:01:35 -06:00
Love Hornquist Astrand fb26e41d06 to utf8 2011-12-14 08:46:05 -08:00
Love Hornquist Astrand 477738a80d try w/o FAST if the KDC doesnt seem to handle it 2011-12-14 08:46:05 -08:00
Love Hörnquist Åstrand 2be0f1a1a4 check that we don't use negative size for arrays 2011-12-13 21:52:05 -08:00
Love Hörnquist Åstrand 2a551314a6 don't use negative size 2011-12-13 21:51:48 -08:00
Nicolas Williams a222521e68 64-bit build fixes for ASN.1 compiler 64-bit integer support 2011-12-13 13:03:57 -06:00
Love Hornquist Astrand 449fb4775e check length of TESTuint64 2011-12-12 23:13:56 -08:00
Love Hornquist Astrand 80fd2959b9 check length of TESTuint64 2011-12-12 23:13:47 -08:00
Love Hornquist Astrand 9a4f8c3da7 add missing dependency 2011-12-12 23:11:21 -08:00
Love Hornquist Astrand b91258ccdc better naming 2011-12-12 22:49:25 -08:00
Love Hornquist Astrand a11ca3cb1b add rk_getpwnam_r 2011-12-12 21:55:06 -08:00
Love Hornquist Astrand d453899462 split user and dir, use rk_getpwnam_r 2011-12-12 21:53:41 -08:00
Love Hornquist Astrand 167084b3e7 ident 2011-12-12 21:28:52 -08:00
Love Hornquist Astrand 54ce0a776c re-encode as utf8 2011-12-12 21:26:52 -08:00
Nicolas Williams 19d378f44d Add 64-bit integer support to ASN.1 compiler
ASN.1 INTEGERs will now compile to C int64_t or uint64_t, depending
    on whether the constraint ranges include numbers that cannot be
    represented in 32-bit ints and whether they include negative
    numbers.

    Template backend support included.  check-template is now built with
    --template, so we know we're testing it.

    Tests included.
2011-12-12 20:01:20 -06:00
Andrew Bartlett 0e7437ba2e HEIMDAL: Supply krb5_context to _krb5_internal_hmac to allow logging
Without this, log messages from any abort are not printed to
the samba logs.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-12-11 21:45:15 -08:00
Love Hornquist Astrand c4d97ae93e encode result code with right length, pointed out by Rangar Sundblad, thanks! 2011-12-11 18:22:29 -08:00
Love Hornquist Astrand 2eb0d6ec82 dont entrust sprintf to encode binary packets 2011-12-11 18:08:05 -08:00
Nicolas Williams 35e28dcd5d Fix incomplete sentence in krb5.conf.5 2011-12-10 14:27:46 -06:00
Nicolas Williams 27ba7a5982 Address code review comments (use .Xr and .Pa macros in krb5.conf.5) 2011-12-10 14:06:16 -06:00
Nicolas Williams e00b43a94b Address code review comments (k5login/foo in EXTRA_DIST) 2011-12-10 14:06:15 -06:00
Nicolas Williams 3109770484 Address code review comments (use _krb5_homedir_access()) 2011-12-10 14:06:09 -06:00
Nicolas Williams 8e04b6dce2 Address code review comments (use krb5_enomem()) 2011-12-10 14:05:35 -06:00
Nicolas Williams abd065be02 Add a test for krb5_kuserok() 2011-12-08 13:34:02 -06:00
Nicolas Williams b9f8e6d956 Add DENY rule for krb5_kuserok() and update manpage 2011-12-08 13:34:02 -06:00
Nicolas Williams 8e63cff2cc Document krb5_kuserok() configuration parameters 2011-12-08 13:34:01 -06:00
Nicolas Williams ad7e54d698 Generalize token expansion to allow for context-specific tokens 2011-12-08 13:33:37 -06:00
Nicolas Williams 6aec02f979 Make krb5_kuserok() pluggable and add features (including MIT config compat) 2011-12-08 13:33:36 -06:00
Nicolas Williams cfe7f6312a Improve _krb5_plugin_run_f() 2011-12-08 13:33:36 -06:00
Love Hörnquist Åstrand b8c710a130 some more status 2011-12-03 13:36:39 -08:00
Love Hörnquist Åstrand 0e6bd29e44 use right directory 2011-12-03 13:36:32 -08:00
Love Hörnquist Åstrand 01884ebf2f fix argument order 2011-12-03 13:24:15 -08:00
Love Hörnquist Åstrand fdeb7b2318 fix sizeof 2011-12-03 13:02:28 -08:00
Nicolas Williams 89bae59b49 Fix error clobbering bug and code review comments 2011-12-02 01:04:22 -06:00
Nicolas Williams da14596f0e Add a test for aname2lname 2011-12-02 01:03:31 -06:00
Nicolas Williams f468ed4759 Make krb5_aname_to_localname() use the libheimbase binary search functions 2011-12-02 01:03:08 -06:00
Nicolas Williams 659c761213 Add private text file binary search API to libheimbase 2011-12-02 01:02:44 -06:00
Nicolas Williams aea02876e7 Initial aname2lname plugin patch based on code from Love
Included is a default plugin that searches a sorted text file where
    every line is of the form:
	<unparsed-principal>[<whitespace><username>]
    If the username is missing in a matching line then an error is
    returned.  If a matching line is not found then the next plugin will
    be allowed to run, if any.
2011-12-02 00:58:26 -06:00
Nicolas Williams d0abcebf80 Make _krb5_plugin_run_f() use krb5_plugin_register()ed plugins too 2011-12-02 00:58:26 -06:00
Love Hörnquist Åstrand 58329bc1a0 __HEIM_OCTET_STRING__ 2011-11-30 00:35:51 -08:00
Love Hörnquist Åstrand 32aef60c6c __HEIM_OCTET_STRING__ 2011-11-30 00:34:50 -08:00
Love Hörnquist Åstrand 206b22c9f5 add data object 2011-11-29 23:40:28 -08:00
Nicolas Williams 417dff03ba Fix trailing whitespace 2011-11-29 14:50:44 -06:00
Roland C. Dowdeswell af011f57fc Provide server side kadm5_chpass_principal_3() with ks_tuple implementation.
We enable kadm5_chpass_principal_3() in the server side of the
library.  The client kadm5 library calls will still return the
error KAMD5_KS_TUPLE_NO_SUPP.

Signed-off-by: Nicolas Williams <nico@cryptonector.com>
2011-11-29 14:47:37 -06:00
Roland C. Dowdeswell 00bea41dcb Fix hdb_generate_key_set() to honour ks_tuple, n_ks_tuple.
The code was generating a char ** of string representations of the
ks_tuple() array but it was not using it.  We modify the code to:

	1.  extend the array returned by ks_tuple2str() to include
	    enough space for the trailing NULL and ensure that there
	    is a NULL at the end,

	2.  not free the array before exiting ks_tuple2str() as we
	    intend to use it in the caller,

	3.  re-organise the pointers in hdb_generate_key_set() to
	    make it more clear how we are to free things that have
	    been allocated.

	4.  free the char ** given us by ks_tuple2str() if it has
	    been allocated.

Signed-off-by: Nicolas Williams <nico@cryptonector.com>
2011-11-29 14:47:37 -06:00
Roland C. Dowdeswell 2f6ad56c46 Reverse order of n_ks_tuple and ks_tuple in hdb_generate_key_set().
Signed-off-by: Nicolas Williams <nico@cryptonector.com>
2011-11-29 14:47:37 -06:00
Luke Howard 21173f98dc add fast.c to dist sources 2011-11-29 12:52:32 +11:00
Luke Howard c18d1a804e add fast.c to Windows build 2011-11-29 12:51:07 +11:00
Nicolas Williams 265d9ba5ca Error/warning cleanups for clang (LLVM) 2011-11-28 14:42:06 -06:00
Nicolas Williams c757eb7fb0 Rename and fix as/tgs-use-strongest-key config parameters
Different ticket session key enctype selection options should
    distinguish between target principal type (krbtgt vs. not), not
    between KDC request types.
2011-11-25 17:21:04 -06:00
Nicolas Williams c930853dd1 Export heim_bool_val from libheimbase 2011-11-24 00:00:50 -06:00
Love Hörnquist Åstrand fa304162db test rsa mode too 2011-11-23 09:43:56 -08:00
Love Hörnquist Åstrand 04895ee955 extract out perf number code 2011-11-23 07:10:35 -08:00
Love Hörnquist Åstrand b69246d766 use pre-generated certs/keys 2011-11-22 19:11:26 -08:00
Love Hörnquist Åstrand a8e4c393ee use pre-generated certs/keys 2011-11-22 19:11:16 -08:00
Love Hörnquist Åstrand c376e869a0 kdc-tester4.json is in objdir 2011-11-22 19:01:56 -08:00
Love Hörnquist Åstrand 8242b14eb9 add kdc-tester3.json 2011-11-22 18:59:38 -08:00
Nicolas Williams 0dd9982cb7 Forgot tests/kdc/kdc-tester4.json.in 2011-11-22 20:45:19 -06:00
Love Hörnquist Åstrand 2e37f67e6f handle new syntax for ccache's 2011-11-22 17:57:49 -08:00
Love Hörnquist Åstrand dce7b990ed handle writing credential into ccache, use them in as fast-ccache and then destory them 2011-11-22 17:57:05 -08:00
Love Hörnquist Åstrand f53199ba53 pretty printing 2011-11-22 17:56:25 -08:00
Nicolas Williams 35f4032381 Add PKINIT support in kdc-tester and check-tester 2011-11-22 18:48:41 -06:00
Nicolas Williams b02365d714 Forgot to add kdc-tester3.json 2011-11-22 17:47:29 -06:00
Nicolas Williams 7d04b50398 Merge branch 'kdc-tester' 2011-11-22 17:08:33 -06:00
Nicolas Williams d630567f70 Add performance measurements for FAST (with host key and user keys, not password) 2011-11-22 17:05:06 -06:00
Nicolas Williams 81293d9334 krb5_get_init_creds*() should not krb5_cc_close() the FAST ccache! 2011-11-22 17:04:35 -06:00
Nicolas Williams ad60b236a0 Add missing symbols to export list 2011-11-22 17:04:03 -06:00
Love Hornquist Astrand 35848f5869 use low match distance for helping, or use ask user to use "help" 2011-11-22 13:58:41 -08:00
Love Hornquist Astrand 00494ac136 use sl_did_you_mean 2011-11-22 12:21:15 -08:00
Love Hornquist Astrand e0613d6aa6 use ? 2011-11-22 12:19:04 -08:00
Love Hornquist Astrand 623bd64f0c use sl_did_you_mean 2011-11-22 12:18:48 -08:00
Love Hornquist Astrand d26df6ba7f export sl_did_you_mean that uses OptimalStringAlignmentDistance to propose an alternative 2011-11-22 12:18:37 -08:00
Love Hornquist Astrand 791c70eaa2 reopen logfile every request 2011-11-22 11:41:40 -08:00
Love Hornquist Astrand 8b351e5eb2 keep file open when we care about performance (which we do now) 2011-11-22 11:10:41 -08:00
Love Hornquist Astrand 118f99e308 tell if keytab is missing principal 2011-11-22 11:00:51 -08:00
Love Hornquist Astrand 72e88209f8 support keytab testing (and use it) 2011-11-22 11:00:51 -08:00
Love Hornquist Astrand f2319c2458 better help on unknown command 2011-11-22 11:00:51 -08:00
Nicolas Williams 121ab46bb6 Add missing symbols needed for make check in base 2011-11-22 11:49:26 -06:00
Nicolas Williams 1572b762b6 Fix missing symbols. 2011-11-22 00:32:52 -06:00
Love Hörnquist Åstrand e037054e8d disable printer 2011-11-21 21:50:23 -08:00
Love Hörnquist Åstrand a82fb8ae3e perf counter 2011-11-21 20:57:17 -08:00
Love Hörnquist Åstrand af7f0eb746 less verbose 2011-11-21 20:34:36 -08:00
Love Hörnquist Åstrand 3f1d903a85 add kinit test to kdc-tester 2011-11-21 20:34:36 -08:00
Love Hörnquist Åstrand 6af6e27c50 glue in send_to_kdc 2011-11-21 20:34:36 -08:00
Love Hörnquist Åstrand c4721dd1d0 add basic support for pkinit 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 503266c4a3 use json to drive kdc-tester 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 354ef711f3 restructure 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 1d7c483db2 use get and set 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 3b38640e4b quoted string tests 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 5a744a9ca6 add heim_string_create_with_bytes 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 6ace66345b use get and set 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 40b0d518af use get and set, add json 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 58ea7f5b0c use get and set 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 9bb4b5aec8 basic handing of quoted strings 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 6a6bb430e7 test test_base 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand a56e097ae4 include json 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 3d1dbbfbc0 test json 2011-11-21 20:34:35 -08:00
Love Hörnquist Åstrand 43ac50913b handle quotes 2011-11-21 20:34:35 -08:00
Love Hornquist Astrand 8a0e0f9472 do m-r on more then one prime 2011-11-21 20:33:53 -08:00
Love Hörnquist Åstrand 376181632b handle &&, from Jaideep Padhye 2011-11-20 09:55:15 -08:00
Love Hörnquist Åstrand 660d996dbf set compile-et to no if its not found, try to not use it 2011-11-20 09:55:15 -08:00
Love Hornquist Astrand 3489110db0 fixup rule for krb5-hdb-mitdb.conf 2011-11-19 10:57:51 -08:00
Stefan Metzmacher 7ecbac23f6 lib/krb5: add utf8 support to build_logon_name() for the PAC
Pair-Programmed-With: Arvid Requate <requate@univention.de>

metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-11-16 19:42:45 -08:00
Stefan Metzmacher 55d66f2aff lib/wind: export wind_ucs2write()
Pair-Programmed-With: Arvid Requate <requate@univention.de>

metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-11-16 19:42:45 -08:00
Stefan Metzmacher 805304d3f8 lib/winbd: fix wind_ucs2write with WIND_RW_LE
Pair-Programmed-With: Arvid Requate <requate@univention.de>

metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-11-16 19:42:44 -08:00
Stefan Metzmacher dcd34e5967 lib/wind: fix wind_ucs4utf8() and wind_ucs2utf8()
Pair-Programmed-With: Arvid Requate <requate@univention.de>

metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-11-16 19:42:44 -08:00
Nicolas Williams 124eccf014 Make this work with kvno 0 and no kvno 2011-11-15 21:53:34 -06:00
Nicolas Williams 38f726d8b4 Fix bug in key rollover code in TGS, make check-kdc test what we can
We can't test the key rollover support in the TGS in the x-realm
    path using just Heimdal because the krb5_get_creds() path will try a
    referral, which will produce a cross-realm TGT that has the
    enc_part.kvno set.  But we can test this for the plain TGT case.
2011-11-15 21:53:34 -06:00
Nicolas Williams 349609ed20 Initial test of x-realm TGT w/ kvno 0 and key rollover
NOTE: The test runs and succeeds, but the client seems to be getting
	  a new x-realm TGT after we set the kvno to 0 or remove the
	  kvno from the tickets.  This means we're not really testing
	  the TGS paths!  So this test is not yet ready.
2011-11-15 21:53:34 -06:00
Nicolas Williams c9609cdb37 Initial patch for dealing with AD x-realm key rollover
AD issues x-realm TGTs with kvno 0.  On key x-realm trust key change
    we need to be able to try current and previous keys for trust, else
    we will have some failures.
2011-11-15 21:53:33 -06:00
Love Hörnquist Åstrand b26fc106de fix typo, from Robert Simmons 2011-11-13 10:01:41 -08:00
Love Hörnquist Åstrand 0ae0dcba85 database is in srcdir 2011-11-13 10:01:41 -08:00
Love Hörnquist Åstrand 1a562410c9 dup of ok for the fast cookie 2011-11-13 10:01:41 -08:00
Love Hörnquist Åstrand 01ddeee37f use heim_verbose 2011-11-13 10:01:40 -08:00
Love Hörnquist Åstrand d576ee3866 add glue for silent-rules 2011-11-13 10:01:40 -08:00
Love Hornquist Astrand 84caf5bbd8 jgssapi_server is a java file 2011-11-09 08:04:52 -08:00
Nicolas Williams 0e852b330f Make sure we always allow weak enctypes in MIT HDB test
Also, we still try to create the version key in the MIT HDB, so we
    might as well update the test DB to have the version key already
    there.  (But really, we should just never write to the MIT HDB.)
2011-11-09 00:59:51 -06:00
Nicolas Williams 19b6c47f72 Handle 1DES enctype similarity in MIT HDB
We have some cross-realm principals in an MIT KDB with one kind of
    1DES enctype, but the other realm's KDCs issue x-realm TGTs where
    the ticket encpart key enctype is a different 1DES enctype.  We need
    this to work if we use Heimdal with the MIT HDB backend.

    An alternative would be to check for similar (or, rather,
    compatible) enctypes in the KDC (and elsewhere?).  This patch avoids
    the need to make such ugly changes elsewhere.
2011-11-09 00:59:15 -06:00
Nicolas Williams 8586d9f88e Fix enctype selection issues for PAC and other authz-data signatures
We were using the enctype from the PA-TGS-REQ's AP-REQ's Ticket to
    decide what key from the service's realm's krbtgt principal to use.
    This breaks when: a) we're doing cross-realm, b) the service's
    realm's krbtgt principal doesn't have keys for the enctype used in
    the cross-realm TGT.

    The fix is to pick the correct key (strongest or first, per-config)
    from the service's realm's krbtgt principal.
2011-11-09 00:32:38 -06:00
Nicolas Williams 40a7d4b62f More fixes for -Werror (GCC 4.6 catches more stuff) 2011-11-02 23:20:55 -05:00
Nicolas Williams 3bebbe5323 Fixes to make Heimdal -Wall -Werror clean
These fixes make developer mode build, at least on Ubuntu.
2011-11-02 21:42:08 -05:00
Love Hörnquist Åstrand 9c830f5237 indent 2011-10-31 22:10:09 -07:00
Love Hörnquist Åstrand 877df213eb make sure we don't use stack content, don't count on that unsigned value can be negative 2011-10-31 22:05:42 -07:00
Love Hörnquist Åstrand 2e2b5daf7a send output to /dev/null 2011-10-31 21:27:51 -07:00
Love Hornquist Astrand f3709535ea make make rules silent 2011-10-31 09:49:56 -07:00
Love Hornquist Astrand 5835c81e6c make the test tell what they do, disable LOCALDOMAIN tests 2011-10-31 09:06:10 -07:00
Nicolas Williams c353962428 Oops, mismerge in principal.c 2011-10-31 00:29:36 -05:00
Nicolas Williams 104bb8ef53 Fix unitialized HDB_extension problem (specifically the mandatory field) 2011-10-31 00:20:05 -05:00
Nicolas Williams 7da9d7d75f Fix memory leak in name canon rule iterator 2011-10-31 00:15:07 -05:00
Love Hörnquist Åstrand c8f1a6f0a0 don't install hcrypto unless we build them 2011-10-30 19:51:59 -07:00
Love Hornquist Astrand 483afb3390 avoid compile warning 2011-10-29 19:14:14 -07:00
Love Hornquist Astrand 6436cd99b7 remove lex_classic_input(void) prototype 2011-10-29 19:13:04 -07:00
Love Hornquist Astrand 42e6fb794d avoid const warning 2011-10-29 19:10:20 -07:00
Nicolas Williams 1192120b86 Fix 64-bit warnings in name canon rules code 2011-10-29 16:48:56 -05:00
Love Hörnquist Åstrand 1fe4d77846 remove getprogname.c 2011-10-28 20:36:40 -07:00
Love Hörnquist Åstrand a57988153e indent 2011-10-28 20:08:08 -07:00
Love Hörnquist Åstrand f06e684ece recover lost check-kdc.in 2011-10-28 20:03:20 -07:00
Love Hörnquist Åstrand f1e7d2ccba allow checksum type NULL since des3-cbc-null uses it (gss-api mech) 2011-10-28 19:54:02 -07:00
Love Hörnquist Åstrand f0fb8b1bef merge error 2011-10-28 19:34:35 -07:00
Love Hörnquist Åstrand b4972bd4f0 no longer need getprogname() 2011-10-28 19:31:05 -07:00
Love Hörnquist Åstrand 3570802d59 use getprogname if we have, otherwise punt, remove roken dependency 2011-10-28 19:30:55 -07:00
Love Hörnquist Åstrand 1a1bd736c0 merge support for FAST in as-req codepath 2011-10-28 19:25:48 -07:00
Nicolas Williams 3a393427e9 krb5_principal_compare() can't return errors... 2011-10-27 22:57:02 -05:00
Nicolas Williams c433fefb23 Fix contributewd by Roland Dowdeswell for 64-bit bug in name canon patches 2011-10-27 17:34:57 -05:00
Nicolas Williams 0b6639dcce Fix makefile bug for name canon testing 2011-10-22 14:55:48 -05:00
Nicolas Williams 612e5c2a12 Test name canon rules via GSS and put kdc tests last
Put kdc last in tests/Makefile.am.  There's two tests in tests/kdc
    that have been failing for a long time, and that causes the
    remaining tests to not be run.  By putting kdc last those tests do
    run.
2011-10-22 14:54:27 -05:00
Nicolas Williams ce04492b36 Fix silly bug in krb5_get_credentials_with_flags() 2011-10-22 14:54:27 -05:00
Nicolas Williams 9c8ceada75 Fix test bug, add test of DNS resolver searchlist name canon rule 2011-10-22 14:54:26 -05:00
Nicolas Williams 8fde93e3fb Initial name canon rules tests (just kgetcred) 2011-10-22 14:54:26 -05:00
Nicolas Williams 5c54736678 Removed "weak" option and implemented use-referrals/no-referrals 2011-10-22 14:54:26 -05:00
Nicolas Williams c764ad95e5 Document name canonicalization rules 2011-10-22 14:54:26 -05:00
Nicolas Williams e1be4482ac Improve kgetcred support for name canon rules and document 2011-10-22 14:54:26 -05:00
Nicolas Williams f4471b11d6 Call krb5_set_error_message() and don't clobber ret in debug code 2011-10-22 14:54:25 -05:00
Nicolas Williams 248e1eb772 Cleanups: s/\<assert\>/heim_assert/ 2011-10-22 14:54:25 -05:00
Nicolas Williams 9f5a43084c Cleanups: s/ENOMEM/krb5_enomem(context)/ 2011-10-22 14:54:25 -05:00
Nicolas Williams 2f03603d6b Cleanups: s/krb5int_/_krb5_/ and moved priv stuff from krb5.h 2011-10-22 14:54:25 -05:00
Nicolas Williams 001fc24102 Removed vestiges of no-reverse-lookup/reverse-lookup option that was never implemented 2011-10-22 14:54:24 -05:00
Nicolas Williams a5e77c578e Deferred hostname canon using name canon rules 2011-10-22 14:54:13 -05:00
Love Hornquist Astrand 587cf45846 add @anchor 2011-10-20 22:09:40 +02:00
Love Hornquist Astrand b1012edee3 add
krb5_auth_con_getsendsubkey
2011-10-19 21:11:12 +02:00
Love Hornquist Astrand fed3050bc0 use ` instead of $( to please legacy solaris /bin/sh 2011-10-19 11:36:18 +02:00
Love Hornquist Astrand 33f717edb2 Only set msg in case we have one, from Rangar Sundblad 2011-10-19 10:38:59 +02:00
Nicolas Williams 6bcdba3a38 Fix autogen.sh to be portable and fail when autoreconf fails 2011-10-17 16:27:58 -05:00
Nicolas Williams d56bb35a50 Fix autogen.sh to be more portable and to fail when autoreconf fails 2011-10-17 15:47:50 -05:00
Love Hornquist Astrand f7efe9516f more references 2011-10-14 14:58:29 +02:00
Love Hornquist Astrand 7b77de50a0 kadmin modify --pkinit-acl example 2011-10-14 14:53:50 +02:00
Love Hornquist Astrand 28563373a8 more documentation about pkinit 2011-10-14 14:49:00 +02:00
Love Hornquist Astrand 1b88a3b6c7 Only does implicit matching for first component, reported by Harry Coin 2011-10-14 00:33:57 +02:00
Love Hornquist Astrand d6474982e5 document kdc options 2011-10-12 15:37:24 +02:00
Love Hornquist Astrand c2be6a8580 we have @subsection Configure the KDC, let remove the XXX 2011-10-12 15:29:59 +02:00
Love Hornquist Astrand f574312ce1 remove kaserver ref 2011-10-12 12:41:00 +02:00
Love Hornquist Astrand a061e7b22f remove kaserver ref 2011-10-12 12:40:59 +02:00
Love Hornquist Astrand 8192b9ed35 remove refernces to kerberos 4 and kaserver 2011-10-12 12:40:59 +02:00
Nicolas Williams 4c6976a6bd Fix check-des
The previous fix was incomplete.  But it also finally uncovered an
    old check-des problem that I'd had once and which may have gotten
    papered over by changing the default of one of the *strongest* KDC
    parameters.  The old problem is that we were passing the wrong
    enctype to _kdc_encode_reply(): we were passing the session key
    enctype where the ticket enc-part key's enctype was expected.

    The whole enctype being passed in is superfluous anyways.  Let's
    clean that up next.
2011-10-12 01:17:54 -05:00
Nicolas Williams 12cd2c9cbd Fix TGS ticket enc-part key selection
When I added support for configuring how the KDC selects session,
    reply, and ticket enc-part keys I accidentally had the KDC use the
    session key selection algorithm for selecting the ticket enc-part
    key.  This becomes a problem when using a Heimdal KDC with an MIT
    KDB as the HDB backend and when the krbtgt keys are not in
    strongest-to-weakest order, in which case forwardable tickets minted
    by the Heimdal KDC will not be accepted by MIT KDCs with the same
    KDB.
2011-10-11 23:57:58 -05:00
Love Hornquist Astrand 8aceafc430 moved to lib/gssapi/oid.txt 2011-10-11 20:28:29 +02:00
Luke Howard f48061bda7 check localname attr authenticated 2011-10-08 12:23:25 +11:00
Luke Howard 07777511d1 implement gss_localname 2011-10-08 12:15:09 +11:00
Nicolas Williams 1b03abb250 This should be the final fix for enctype 0 issues (tested)
But how to build an MIT KDB with enctype 0 keys for testing in
    Heimdal?  Hmmm...
2011-10-06 00:55:54 -05:00
Nicolas Williams e15cabe10a Fix for enctype 0 / length 0 keys in MIT HDB backend was incomplete 2011-10-05 17:50:26 -05:00
Nicolas Williams 3d6f86af27 Fix segfault in hdb-mitdb when princ have salt 2011-10-02 23:08:37 -05:00
Love Hornquist Astrand ee7340860a remove classic input 2011-10-02 17:23:26 +02:00
Love Hornquist Astrand 391bce7ca2 lets try classic input() too 2011-10-02 13:46:28 +02:00
Love Hornquist Astrand 49b471f1a2 Heimdal 1.5.1 2011-10-02 13:26:37 +02:00
Love Hornquist Astrand 923f3a434f free krb5_storage when dne 2011-09-30 12:44:34 +02:00
Love Hornquist Astrand 3c0e9b8fd1 dont use bool since its c99 2011-09-30 11:49:01 +02:00
Love Hornquist Astrand b76f6f1e93 add more people 2011-09-29 13:58:23 +02:00
Love Hornquist Astrand a1738def66 solaris want's _XOPEN_SOURCE set to 600, From Ragnar Sundblad 2011-09-29 13:57:24 +02:00
Love Hornquist Astrand 240b298e61 Simplify base/section rules, patch from David R Boldt 2011-09-29 13:52:06 +02:00
Nicolas Williams 1de3db5678 Make getpwnam_r() check work on Ubuntu
NULL is not defined w/o including stddefs.h, so the test program
    fails to compile.  A simple s/NULL/0/ fixes it.
2011-09-27 17:32:11 -05:00
Nicolas Williams 4ae39ce0b3 Added one more export to libheimbase -- needed by tests 2011-09-27 16:29:11 -05:00
Nicolas Williams cdceea1b3e Revert "A simple (but wrong?) fix for Solaris build issues"
This reverts commit 6a7f2a5b2e.
2011-09-27 16:05:34 -05:00
Nicolas Williams e927695a5d Better fix for the Solaris getpwnam_r() build issue 2011-09-27 16:05:03 -05:00
Jeffrey Altman cbf126bede Permit NULL context to krb5_get_error_message()
Application developers have a tendency to use krb5_get_error_message()
as a drop in replacement for error_message() and under various
circumstances they pass in a NULL context.  This method works fine
for MIT's implementation which ignores the context but in Heimdal
passing in a NULL context would dump core.

This patch set modifies krb5_get_error_message() in order to
permit the passing of a NULL context.  First, if the context
is NULL, an attempt will be made to allocate one locally for
the purpose of evaluating the error code.  Second, if a local
context cannot be allocated, fall back on calling error_message().
If error_message() fails to return a string, then generate an
"unknown error" response.

Only if all of the above fails is NULL returned.

Change-Id: If4baf7d6c428cf0baf11c044b8dfd5c2b3cdf7e4
2011-09-27 14:26:26 -04:00
Love Hornquist Astrand 03df77d491 link with heimbase 2011-09-27 19:40:10 +02:00
Nicolas Williams 6a7f2a5b2e A simple (but wrong?) fix for Solaris build issues 2011-09-27 01:59:44 -05:00
Nicolas Williams c3936f72c3 Test for hdb-mitdb, including an MIT KDB file. 2011-09-26 17:08:33 -05:00
Love Hornquist Astrand 308be3a9e2 Don't export tests from library, reported in bug from Tom Payeire 2011-09-26 17:53:13 +02:00
Love Hornquist Astrand f1df66341e quote to make solaris sh apply, patch from Tom Payeire 2011-09-26 17:50:45 +02:00
Love Hornquist Astrand 0595af118e document KRB5_CONFIG 2011-09-26 14:59:30 +02:00
Love Hornquist Astrand e138bed4c7 export error functions 2011-09-26 09:29:14 +02:00
Love Hornquist Astrand 777b24fbb5 add krb5_is_enctype_weak 2011-09-26 08:47:37 +02:00
Jeffrey Altman 9a127beb26 Windows: set default ccache to registry
Add _krb5_set_default_cc_name_to_registry() function and
call use it on Windows to set the user's default credential cache.

Change-Id: Ib59ff218a098a841bc61846abf873736380b5c6c
2011-09-26 02:00:13 -04:00
Jeffrey Altman 132693df5a Add _krb5_store_string_to_reg_value() for Windows
The new _krb5_store_string_to_reg_value() function permits
the caller to create REG_SZ, REG_EXPAND_SZ, REG_DWORD, and
REG_MULTI_SZ entries in the registry.

Change-Id: Ib5740ad07209618d8ea4c0bf3c75615f27e98b4e
2011-09-26 01:58:29 -04:00
Jeffrey Altman d6bff3199d add cache type column to kswitch output
Change-Id: I6b27ba6f7c853da56f81b45b312ef06e13f2dbb0
2011-09-26 01:56:14 -04:00
Jeffrey Altman 91a9a11b75 avoid use of vasnprintf in base/error.c
commit c94f299fc8 uses vasnprintf
which was previously removed from the libheimbase directory in
order to prevent a dependency on libroken.

Replace vasnprintf with snprintf and malloc to avoid the
dependency.

Change-Id: I029e7e6883406ca7311490a3dab4b65cad3ba70b
2011-09-26 01:53:25 -04:00
Jeffrey Altman 3854e64a4a include weak etypes in default etype list if allow_weak_crypto
commit 0ed83cebd3 removed the
weak enctypes from the default enctype list.  This is a change
in behavior from 1.5.x which permitted the use of weak enctypes
if "allow_weak_crypto" is set to true.  This patchset creates
two default enctype lists.  One with weak enctypes and the other
without.  The weak version is used if "allow_weak_crypto" is set
to true.

Change-Id: Ide5cce0645836249031350bfaf619d970635e579
2011-09-26 01:44:16 -04:00
Love Hornquist Astrand 00773b4119 test verify_mic is both directions 2011-09-25 20:38:17 +02:00
Love Hornquist Astrand f910d2174b Disable java gssapi tests because of 7077640 and 7077646 2011-09-25 20:24:26 +02:00
Love Hornquist Astrand d9dc7c9761 try read message in java code too 2011-09-25 19:40:02 +02:00
Love Hornquist Astrand c94f299fc8 add heim_error_t 2011-09-25 19:03:23 +02:00
Love Hornquist Astrand d3f85af92c move deprecated function to deprecated.c 2011-09-25 19:03:11 +02:00
Love Hornquist Astrand 0793246e99 use heim_error_t 2011-09-25 19:00:01 +02:00
Love Hornquist Astrand 7e36705ee3 use heim_error_t 2011-09-25 18:59:42 +02:00
Love Hornquist Astrand 9f46874cfb add heimbase.la 2011-09-25 18:59:10 +02:00
Love Hornquist Astrand 0b02f05a19 error_buf is gone 2011-09-25 17:49:06 +02:00
Love Hornquist Astrand d64eb50f72 filter out kvno 2011-09-25 16:44:49 +02:00
Love Hornquist Astrand 8fc7fa27d1 include <stdlib.h> 2011-09-25 16:44:49 +02:00
Jeffrey Altman 949f427488 Windows: do not set USE_32BIT_TIME_T for Heimdal
Heimdal does not have any backward compatibility issues unlike
MIT.  There is no reason to restrict out interfaces to using
32-bit time of 32-bit Windows.  Our supported compilers default
to 64-bit time_t.  Use it.

Change-Id: I931c547841c17897d7d55a61459519cb99973385
2011-09-23 17:09:21 -04:00
Jeffrey Altman 15796ce63d Add missing export
Patchset 0c893d3980 left
out the export of hdb_change_kvno for Windows.

Change-Id: Ie41a867054465994249a651725c72fcec333f19d
2011-09-23 15:26:32 -04:00
Jeffrey Altman bad61548dd Windows: Version mgmt for assemblies and thirdparty
Breakout the version data from windows/NTMakefile.config
and move it to windows/NTMakefile.version.  This new file
contains only version data.  This permits version data to
be safely referenced by third party components.

In addition, add version range information for those versions
of Heimdal for which this release is a compatible upgrade.  If
there is a forward incompatible change to the assembly ABI, it
is not a compatible upgrade.  This version data is used to specify
the Windows assembly redirect range.

Change-Id: Ic9f156212599cc4277e2be812f29a6497801046c
2011-09-23 09:48:42 -04:00
Jeffrey Altman 269cf69f42 roken: posix errnos for windows
Several additional posix errnos are now used within Heimdal.
Add definitions for them.

With the introduction of VS2010 VC errno.h now includes definitions
for the full posix error number list.  Instead of mapping errno values
to Winsock errors, use the new VS2010 assignments.

Change-Id: Ieb7c5efbcbedb1c10d56e5c8a63ddd58a15df9b1
2011-09-23 09:06:02 -04:00
Love Hornquist Astrand 69ead071e9 upgrade to 3.7.8 2011-09-23 13:27:21 +02:00
Love Hornquist Astrand f6dbc98081 drop ndbm since no longer have write support 2011-09-23 13:18:40 +02:00
Love Hornquist Astrand 6b5cc16d5d use -r instead of -e to please solaris test 2011-09-23 13:17:05 +02:00
Love Hornquist Astrand d92ade5be9 don't use errx() since that require libroken 2011-09-23 13:15:50 +02:00
Love Hornquist Astrand df1e4c388a send output to /dev/null from cmp since the output should always be different 2011-09-23 13:08:54 +02:00
Love Hornquist Astrand 2daeea4feb handle error code from size_too_large more correct 2011-09-22 16:36:52 +02:00
Love Hornquist Astrand aabe9f0f4a let client do unwrap, handle keytab for gss 2011-09-22 16:10:06 +02:00
Nicolas Williams b6f4094cfe Add kvno for all keys to kadmin's get command's output
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-09-22 15:13:27 +02:00
Nicolas Williams 901e6ff816 Fix incorrect memmove() size expr in ASN.1 seq remove_*() functions
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-09-22 15:13:21 +02:00
Nicolas Williams 0c893d3980 Fixed booboos from kadm5 key history patch set
Also: add support for ignoring null enctype / zero-length keys,
    which *can* be found in MIT DB entries created in pre-historic
    times.

    Also: make the mitdb HDB backend more elegant (e.g., use the ASN.1
    compiler's generated sequence/array utility functions.

    Also: add a utility function needed for kadm5 kvno change
    improvements and make kadmin's mod --kvno work correctly and
    naturally.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-09-22 15:13:13 +02:00
Love Hornquist Astrand 8e455dc774 dont use initstate/setstate 2011-09-21 17:38:21 +02:00
Love Hornquist Astrand 8badb652c6 drop __restrict to please old compilers 2011-09-21 17:34:51 +02:00
Jeffrey Altman 63b3cb9749 Windows: fallback to PROV_RNG if no PROV_RSA_FULL
Heimdal can be executed in environments in which the user
account profile is not loaded.  In such environments it is
not possible to use PROV_RSA_FULL as it stores required
data within the profile.  Instead, fallback to PROV_RNG which
does not store data within the profile and can be used to access
secure random number generator routines.

Change-Id: If600246f39645ed6bf5af0dd237f5adfddcf6c0c
2011-09-20 16:17:42 -04:00
Jeffrey Altman 9081ab775f Windows: include KAFS when building kuser
if NO_AFS is not defined include the KAFS library when
building kuser.   the KAFS library does not yet build on
Windows but will in the future.

Change-Id: If2a6c7279d6166cc0f4c49d36f3fa54ad7d19d87
2011-09-20 16:16:09 -04:00
Love Hornquist Astrand 6272abb227 sleep some extra time before killing java pid so it will have a chance
write it's stdout to disk
2011-09-19 11:10:51 +02:00
Love Hornquist Astrand a2256e00d8 use __deprecated__ 2011-09-19 11:10:51 +02:00
Luke Howard 46d89ed0f4 small build fix for 2010 VC compiler 2011-09-12 20:41:29 +10:00
Luke Howard 775a452313 some Windows build fixes 2011-09-12 20:11:36 +10:00
Love Hornquist Astrand 57d468518f fix __has_extension macro to take an argument 2011-09-11 18:30:45 +02:00
Love Hornquist Astrand 4b0087fd4a use __has_extension(attribute_deprecated_with_message) if it exists 2011-09-09 14:16:48 +02:00
Love Hornquist Astrand 977227fc29 update (c) 2011-09-09 11:17:08 +02:00
Love Hornquist Astrand b94080696a indent 2011-09-09 10:31:46 +02:00
Andrew Bartlett 714d166d04 heimdal: Try to handle the PAC checking when we are in a cross-realm environment
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-09-09 10:20:52 +02:00
chas williams - CONTRACTOR b118610a9c hcrypto: var name current conflicts with linux kernel
on a big endian machine, usage of this file in the kernel
is somewhat troublesome since the linux kernel already has
a well known global/#define called current.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-09-09 10:08:34 +02:00
Love Hornquist Astrand c63d6e516f use __sync_swap if we have it 2011-09-09 10:03:28 +02:00
Love Hornquist Astrand f1a6f9a9fa remove warning, remove forward declaration by moving the function up, ident 2011-09-02 05:20:47 -07:00
Harald Barth 38df403d45 Move common code to krb5_unsupported_enctype() and make error message contain string instead of error number
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-09-02 05:15:47 -07:00
Love Hornquist Astrand d931fd0a22 Free handle when done so that we don't leak memory
Memory leak reported by Craig Ruff
2011-08-31 11:46:37 -07:00
Love Hornquist Astrand 8861329d81 loop so that we can capture memory leaks 2011-08-31 11:45:47 -07:00
Love Hornquist Astrand e5ce363778 list both des-cbc-crc and des-cbc-md5 entries 2011-08-31 09:13:37 -07:00
Love Hornquist Astrand f7821b793d also check for des-cbc-md5 while at it 2011-08-30 23:20:04 -07:00
Love Hörnquist Åstrand 5c262dd3d3 set COMPILE_ET to the found binary at the end if we are using it 2011-08-28 16:19:19 -07:00
Love Hörnquist Åstrand d500ee7ef2 compile_et is uppercase 2011-08-28 16:08:44 -07:00
Love Hornquist Astrand 3b11e03327 also override compile_et program with using --with-cross-tools 2011-08-27 13:37:12 -07:00
Love Hornquist Astrand 885e53c51a acceptor glue 2011-08-10 17:25:25 -07:00
Love Hornquist Astrand d3b5bc36fe support ipv6 and don't use channelbindings 2011-08-10 17:25:09 -07:00
Love Hornquist Astrand 960b5d4c5b include jgssapi_server.c 2011-08-10 17:24:20 -07:00
Love Hornquist Astrand ed573ce9fa test java gssapi server 2011-08-10 17:24:01 -07:00
Love Hornquist Astrand 86243ab19f more java (server) tests 2011-08-10 17:23:35 -07:00
Love Hörnquist Åstrand d8ae7b5a35 drop krb4 2011-08-10 09:28:16 -07:00
Love Hörnquist Åstrand 4c639408e6 drop krb4 2011-08-10 09:27:48 -07:00
Love Hörnquist Åstrand 308d15615e drop krb4 2011-08-10 09:27:14 -07:00
Love Hörnquist Åstrand 47fee3d056 drop krb4 2011-08-10 09:26:31 -07:00
Love Hörnquist Åstrand 1828443089 drop krb4 2011-08-10 09:26:20 -07:00
Love Hörnquist Åstrand 9fa3112645 drop krb4 2011-08-10 09:25:29 -07:00
Love Hörnquist Åstrand 7cb8e7f742 no more krb4 2011-08-10 09:24:43 -07:00
Love Hörnquist Åstrand 24332f87a0 no more krb4 2011-08-10 09:22:52 -07:00
Love Hörnquist Åstrand 11ac82ecf2 no more krb4 2011-08-10 09:21:32 -07:00
Love Hörnquist Åstrand ee58c256f4 remove krb4 bits 2011-08-10 09:16:51 -07:00
Love Hörnquist Åstrand c9e37efbe1 try get spelling right 2011-07-30 14:27:32 -07:00
Love Hörnquist Åstrand 51ccb02b82 some more stuff 2011-07-30 14:19:45 -07:00
Love Hörnquist Åstrand fc3b4fcd3e drop unused KRB4 bits 2011-07-30 14:17:09 -07:00
Love Hörnquist Åstrand 646906538b drop unused KRB4 bits 2011-07-30 14:15:14 -07:00
Love Hörnquist Åstrand 4a43975270 drop unused KRB4 bits 2011-07-30 14:14:52 -07:00
Love Hörnquist Åstrand 378f34b4be Always to CANON for tgs 2011-07-30 13:43:00 -07:00
Love Hörnquist Åstrand 63672067ea add nob for [kadmin]allow_self_change_password 2011-07-30 12:34:40 -07:00
Love Hörnquist Åstrand 0ed83cebd3 disable old deprecated enctypes 2011-07-30 12:11:08 -07:00
Stefan Metzmacher c98d9f4387 kdc: fix comparision between krb5uint32 and (unsigned int)
We don't need a cast in that case.

Before commit 1124c4872d
(KVNOs are krb5uint32 in RFC4120, make it so),
we compared krb5int32 casted to size_t with unsigned int,
which resulted in the following problem:

Casting krb5int32 to (size_t) is wrong, as sizeof(int)==4 != sizeof(size_t)== 8.

If you cast negative int values to size_t you'll get this:

int ival = -5000; // 0xFFFFEC78
size_t sval = (size_t)ival; // this will be 0xFFFFFFFFFFFFEC78

So we better compare while casting to (unsigned int).

This is important for Active Directory RODC support,
which adds a random number into the higher 16-bits of the
32-bit kvno value.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-30 11:57:01 -07:00
Stefan Metzmacher 57300e1482 kuser/kinit: make it possible to use --windows option on its own
metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-30 11:56:46 -07:00
Andrew Bartlett 880a98df1a kdc: Build ticket with the canonical server name
We need to use the name that the HDB entry returned, otherwise we
will not canonicalise the reply if requested.

Andrew Bartlett

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-30 11:56:46 -07:00
Stefan Metzmacher 83a22ce18f kdc: pass down HDB_F_FOR_AS_REQ and HDB_F_FOR_TGS_REQ to the hdb layer
metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-30 11:56:46 -07:00
Stefan Metzmacher 272d7511ca lib/hdb: add HDB_F_FOR_AS_REQ and HDB_F_FOR_TGS_REQ flags
This will be used to indicate to the backend if a fetch is for
an AS REQ or TGS REQ. Samba needs to take some action in the
HDB_F_FOR_TGS_REQ case and always canonicalize the principal
names, even without HDB_F_CANON.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-30 11:56:46 -07:00
Stefan Metzmacher 7995bbcb24 kdc: only pass HDB_F_CANON if the client specified b->kdc_options.canonicalize
metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-30 11:56:46 -07:00
Jeffrey Altman c9d24dffde Windows: 1.5.99 Pre-release
Change-Id: Ie0d307888b68e19ffd46041729a27c4be2ed27fb
2011-07-27 20:04:31 -04:00
Jeffrey Altman c2426d56c1 Windows: install kswitch.exe and klist.exe
kswitch.exe and klist.exe are kcc.exe installed and copied
under the alternate names.  The installer script was missing
the required DestinationProperty to specify where the
destination files were to be placed.

Change-Id: Ia1e826a038459b1631f8452f8d7ef6f7ca02abac
2011-07-27 19:55:28 -04:00
Jeffrey Altman c3f6a65da2 slc: correct 'min_args' and 'max_args' processing
The 'min_args' and 'max_args' values were ignored whenever
an 'argument' value was not present as a child of the 'command'.
'argument' values are often specified as children of the 'option'
value when more than one 'option' is an argument.

This patchset counts the number of 'argument' values specified
under a 'command' regardless of the level at which it appears.
If there are any 'argument' values, the 'min_args' and 'max_args'
are used to generate validation code for the 'command'.

Change-Id: Idc6129b4ff29914ac990f693b4dba51a30bdc971
2011-07-27 19:55:28 -04:00
Love Hörnquist Åstrand 5fc3d6fffa spelling 2011-07-27 08:28:44 -07:00
Love Hörnquist Åstrand 13341e4276 generate sequence for HDB-Ext-KeySet and Keys 2011-07-26 20:19:21 -07:00
Love Hörnquist Åstrand 5732d85e29 generate sequence for HDB-Ext-KeySet and Keys 2011-07-26 20:18:57 -07:00
Love Hörnquist Åstrand 8b7e31c301 plug memory leak 2011-07-26 20:15:33 -07:00
Love Hörnquist Åstrand 80f0f6fa11 plug memory leak 2011-07-26 20:14:53 -07:00
Love Hörnquist Åstrand 990e1f30e7 add KDCFastState.expected-pa-types 2011-07-24 22:49:40 -07:00
Love Hörnquist Åstrand 7dac559e8c kdc bits 2011-07-24 22:45:55 -07:00
Love Hörnquist Åstrand 263157903a kcm bits 2011-07-24 22:44:21 -07:00
Love Hörnquist Åstrand 6fefb328e3 x 2011-07-24 22:39:48 -07:00
Love Hörnquist Åstrand 61f69ea5b1 spelling 2011-07-24 22:36:27 -07:00
Love Hörnquist Åstrand 5a31cf1a52 spelling 2011-07-24 22:36:21 -07:00
Love Hörnquist Åstrand a48768fc26 sprinkle more comments 2011-07-24 22:33:49 -07:00
Love Hörnquist Åstrand b6fc70019e better error message 2011-07-24 22:33:39 -07:00
Love Hörnquist Åstrand 086477a9b5 disable operation ofn fast cookie principal 2011-07-24 21:31:48 -07:00
Love Hörnquist Åstrand 0941d6dbce add constant for WELLKNOWN:ORG.H5L realm 2011-07-24 21:29:27 -07:00
Love Hörnquist Åstrand fb5e32e0f6 goto out 2011-07-24 21:23:53 -07:00
Love Hörnquist Åstrand f0371bb2ee fast cookie expiration 2011-07-24 21:21:39 -07:00
Love Hörnquist Åstrand 46f285bcc9 encode fast state in the fast cookie 2011-07-24 21:16:42 -07:00
Love Hörnquist Åstrand 7f6f4206c6 make compile after rebase 2011-07-24 20:24:40 -07:00
Love Hörnquist Åstrand 721c5634d5 make compile after rebase 2011-07-24 20:24:39 -07:00
Linus Nordberg 12203f0fab s/krb5_decode_EncryptedData/krb5_decrypt_EncryptedData/1.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-24 20:24:39 -07:00
Linus Nordberg bebb50797f Add krb5_init_creds symbols needed by kinit.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-24 20:24:39 -07:00
Love Hörnquist Åstrand 888780c9e7 add fast symbols 2011-07-24 20:24:39 -07:00
Linus Nordberg 294c2786fa Fix typo.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-24 20:24:39 -07:00
Love Hörnquist Åstrand e9053800f1 add Fast cookie 2011-07-24 20:24:39 -07:00
Love Hörnquist Åstrand 1a8f7caf86 add Fast cookie 2011-07-24 20:24:39 -07:00
Love Hörnquist Åstrand 6b942e6ec2 free fast cookie 2011-07-24 20:24:39 -07:00
Love Hörnquist Åstrand 72308645a2 fast cookie 2011-07-24 20:24:39 -07:00
Love Hörnquist Åstrand e5c66a70cd parse fast cookie 2011-07-24 20:24:39 -07:00
Love Hörnquist Åstrand d99c2eda40 use else if 2011-07-24 20:24:39 -07:00
Love Hörnquist Åstrand eaa23ce96f proxy request if needed 2011-07-24 20:24:39 -07:00
Love Hörnquist Åstrand 407fcf35fc update client_access 2011-07-24 20:24:39 -07:00
Love Hornquist Astrand b00f1ceeb9 should use hide_client_names 2011-07-24 20:24:39 -07:00
Love Hornquist Astrand 242d7e1602 comment 2011-07-24 20:24:39 -07:00
Love Hornquist Astrand 5d1ae998f9 "better" error codes 2011-07-24 20:24:39 -07:00
Love Hornquist Astrand 067072f81e complete KrbFastFinished message work 2011-07-24 20:24:39 -07:00
Love Hornquist Astrand b6d5637b61 fill in more bits 2011-07-24 20:24:39 -07:00
Love Hornquist Astrand 7635eee8c4 simplify 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 7e1468ca52 new call order too _krb5_fast_armor_key 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 04c7dd7cee start completion of KrbFastFinished 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 91df0a8120 add _krb5_fast_cf2 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 19e572db60 add krb5_process_last_request 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand b73d402a47 export process last request 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 8a5c96e680 process last request and pass in server name 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 01993e8d76 remove to strict usage 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 03e73522a3 better status message 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand a01520cb50 validate KRB5_PADATA_REQ_ENC_PA_REP 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand adf772865c new use of _krb5_extract_ticket 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand aaf9594429 new use of _krb5_extract_ticket 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand f76cf44d82 add KRB5_ANON_REALM 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 102d4f5762 export KrbFastArmor 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 57b96a269e different logging 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand d9b36b3155 add fast.c 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 7b398263da Partial FAST 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 0ca5e44955 shared key for _krb5_fast_armor_key 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 99ed826f7f use _krb5_fast_armor_key() 2011-07-24 20:24:38 -07:00
Love Hornquist Astrand 204166e001 Name the choice enum type. 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 8e65528f84 disable none 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 2e8b550e7b punt if caller passed us a crypto object, we didn't find a keyed checksum type 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 2991ed7e77 check for FAST 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 7c55029060 Add fast armor bits 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 3f0a3c4795 Add fast armor bits 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand b6e56322f3 Check if message too large 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 035afb17db use et, ek from r-> 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 4d63c98125 Break out PAC generation 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 94157d4410 dont pass req buffer to _kdc_encode_reply 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 333471097d break out fast unwrap 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand b8c168e565 check return length 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 9a21fddb70 use kdc_request_t for add_enc_pa_req 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 6319f31ecf break out KRB5_PADATA_REQ_ENC_PA_REP 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 1e048065c1 switch to _kdc_r_log 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 68bd6f63e8 move PKINIT to a preauth mech too 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 07342aa138 Add and use _kdc_set_e_text() 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand 13eeb30a1d Create a request structure 2011-07-24 20:24:37 -07:00
Love Hornquist Astrand ca060554fb x 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 0332787e0f Hide client name of privacy reasons 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 65254713a2 log if we have FAST PA or not 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 17d5f8d19e make AS work with FAST 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 6c31f5a95f free ac after its used 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand a2bcf8bbdd break out mk_error 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 16d16588d2 move back init_as_req when building packet 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 4f3d3723f4 fail if kinit failes 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 04983dfd94 Preserve outer error 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 4561012998 fix up to update kdc_db_fetch 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 79703dc3cc memory management 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 7bc5fe72fb more keyusage 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 8eb256ea00 send enc challange in KDC reply 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 7151d4e66c partial handling of ENC-CHALLANGE 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 7d1a059f9e comment why we add cookie 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 1fac725de4 send cookie on error and send right error message 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 30cca73765 more fast bits 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 78bef36409 include fast.c 2011-07-24 20:24:36 -07:00
Love Hornquist Astrand 91fce795af add more key usage for fast 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand deed0642d0 Handle ticket checksum 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand bcbcc67ab7 try handle finished message, ticket processing missing 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand a4a42a4bd3 Only ticket checksum in FastFinished 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 2f5d801156 change client access message 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand dfd7a43e44 change client access message 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 35d4b23a22 start error codes finish message 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 580b370e08 make pa-data optional 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand c6a9bdb140 spelling 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 5edb5d0275 move out generic fast packet building into fast.c 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 6a74bba8f9 move out generic fast packet building into fast.c 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand e372cc6b8a re-shuffle to make c90 compatible 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 1af9487bff got fetch armor key 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand a1feab396e more ticket bits 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand d04289855e more bits 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 96299ac2bb no warnings 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand c148c2b432 unused key 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 60c713221d match draft-preauth-framework-14 better 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 7d30fc38d7 use METHOD-DATA for type compat in kdc/kerberos5.c 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 3b034b231d more bits 2011-07-24 20:24:35 -07:00
Love Hornquist Astrand 22cb2c1a1a export one more 2011-07-24 20:24:34 -07:00
Love Hornquist Astrand 86c4089df1 export more 2011-07-24 20:24:34 -07:00
Love Hornquist Astrand 7802e24170 first drop of the AS-REQ FAST + krb-error FAST codepath 2011-07-24 20:24:34 -07:00
Love Hornquist Astrand f2c7370609 announce fx-fast 2011-07-24 20:24:34 -07:00
Love Hornquist Astrand 580ba6aa72 KU bits for fast 2011-07-24 20:24:34 -07:00
Love Hornquist Astrand a41439d52b spelling 2011-07-24 20:24:34 -07:00
Love Hörnquist Åstrand 1879af9e43 Break out fast state, shuffle around state so that as-req is inited earlier 2011-07-24 20:24:34 -07:00
Love Hörnquist Åstrand 04128ac081 Use reply_key from fast layer. 2011-07-24 20:24:34 -07:00
Love Hörnquist Åstrand fd7c870550 add reply reply_key 2011-07-24 20:24:34 -07:00
Love Hörnquist Åstrand a5e342f8ba Add fast_state. 2011-07-24 20:24:34 -07:00
Love Hörnquist Åstrand 74ec640500 Only free ext on replace 2011-07-24 20:23:30 -07:00
Love Hörnquist Åstrand f1c1e1bc6e remove used variables 2011-07-24 20:05:05 -07:00
Love Hörnquist Åstrand 2ae9bbb915 update (c) 2011-07-24 20:04:02 -07:00
Love Hörnquist Åstrand 1a6195153f start to use KRB5_ENCTYPE_ 2011-07-24 20:02:10 -07:00
Love Hörnquist Åstrand f102ee7831 compiler warning 2011-07-24 19:56:09 -07:00
Love Hörnquist Åstrand f9afd37eed use add_HDB_Ext_KeySet and plug memory leak 2011-07-24 18:14:25 -07:00
Love Hörnquist Åstrand c204f3c5ce drop dependency 2011-07-24 18:08:52 -07:00
Love Hörnquist Åstrand c26da364e8 drop dependency since we need the autoconf to overwrite this 2011-07-24 18:06:33 -07:00
Love Hörnquist Åstrand e32186d9de expore more 2011-07-24 16:15:06 -07:00
Love Hörnquist Åstrand 8060a561db switch to KRB5_ENCTYPE 2011-07-24 16:02:22 -07:00
Love Hörnquist Åstrand c97322adf2 fix compile warning 2011-07-24 15:46:11 -07:00
Love Hörnquist Åstrand 8fccb51d49 Merge pull request #12 from nicowilliams/krb5_admin_patches_2nd
Krb5 admin patches 2nd

This has all the patches needed for krb5_admind to build and pass most tests, that includes:
- more kadm5 API compatibility (including very basic profile functionality)
- multi-kvno support (useful for key rollovers) (a test for this is included in tests/db/check-kdc)

Unfinished:
- password history (currently uses key history, needs to be separated and use digests)
- policies (only default policy allowed)
- mit kdb changes not tested yet


Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-24 15:41:36 -07:00
Love Hörnquist Åstrand 1124c4872d KVNOs are krb5uint32 in RFC4120, make it so 2011-07-24 14:23:45 -07:00
Love Hörnquist Åstrand 671e231d75 fix warning 2011-07-24 14:09:23 -07:00
Linus Nordberg 2e35198908 Add version-script.map to _DEPENDENCIES.
Added to 11 out of 14 directories with map files.  Not lib/ntlm,
lib/hcrypto and kdc which have the map file as an explicit dependency
to _OBBJECTS.

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-24 14:07:59 -07:00
Love Hörnquist Åstrand f60ec15834 partly unify enctype/keytype since there is only enctypes 2011-07-24 14:03:08 -07:00
Love Hörnquist Åstrand 16eabf8e4c add an invalid protection level to the enum 2011-07-24 14:00:23 -07:00
Love Hörnquist Åstrand af4aea85ae cast to avoid size_t vs int issue 2011-07-24 13:07:07 -07:00
Love Hörnquist Åstrand 8f2294e1f9 switch order of type and GSSAPI_LIB_VARIABLE 2011-07-24 13:00:36 -07:00
Love Hörnquist Åstrand 052c5767fd fixup type for GSS_C_ATTR_LOCAL_LOGIN_USER 2011-07-24 12:47:55 -07:00
Love Hörnquist Åstrand d434bda588 make sure keylen is a multiple of 2 2011-07-24 12:34:51 -07:00
Andrew Bartlett 84bc108d8f lib/krb5: Allow any kvno to match when searching the keytab.
Windows does not use a KVNO when it checks it's passwords, and MIT
doesn't check the KVNO when no acceptor identity is specified (looping
over all keys in the keytab).

Andrew Bartlett

Signed-off-by: Stefan Metzmacher <metze@samba.org>
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-24 10:37:40 -07:00
Love Hörnquist Åstrand c5db78a3c2 switch to use use_strongest_server_key
use the same behavior as 1.4 release.
2011-07-24 10:33:28 -07:00
Marc Balmer ae9ac01f3f Typo
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-24 10:29:47 -07:00
Nicolas Williams a7717ae4f9 Use heim_assert() instead of assert() 2011-07-24 11:10:37 -05:00
Nicolas Williams 11c54cd6c8 Protect against negative n_ks_tuple values and against randkey returning negative n_keys 2011-07-24 11:08:58 -05:00
Nicolas Williams 95262936c7 s/assert/heim_assert/ and remove dead code 2011-07-24 11:07:27 -05:00
Love Hörnquist Åstrand 6372a13b47 1.5.99 2011-07-23 12:08:37 -07:00
Love Hörnquist Åstrand 4bff0fbb31 check for NULL as argument to krb5_{prepend,set}_error_message functions 2011-07-23 12:06:01 -07:00
Love Hörnquist Åstrand 75987ebbae update to match plugin abi 2011-07-23 11:59:06 -07:00
Stefan Metzmacher 296548d34a kdc: pass down the delegated_proxy_principal to the verify_pac() function
This is needed in order to add the S4U_DELEGATION_INFO to the pac.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-23 11:48:11 -07:00
Stefan Metzmacher 626d2607d5 kdc/windc_plugin.h: KRB5_WINDC_PLUGIN_MINOR 4 => 5
commit "heimdal Add support for extracting a particular KVNO from the database"
(f469fc6d49 in heimdal/master
 and 9b5e304ccedc8f0f7ce2342e4d9c621417dd1c1e in samba/master)
changed the windc_plugin interface, so we need to change the
version number.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-23 11:48:11 -07:00
Stefan Metzmacher aabb937b46 kdc: don't allow self delegation if a backend check_constrained_delegation() hook is given
A service should use S4U2Self instead of S4U2Proxy.

Windows servers allow S4U2Proxy only to explicitly configured
target principals.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-23 11:48:11 -07:00
Stefan Metzmacher 6cb0e81760 kdc: pass down the server hdb_entry_ex to check_constrained_delegation()
This way we can compare the already canonicalized principals,
while still passing the client specified target principal down
to the backend specific constrained_delegation() hook.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-23 11:48:11 -07:00
Stefan Metzmacher d6a56b847b kdc: use the correct client realm in the EncTicketPart
With S4U2Proxy tgt->crealm might be different from tgt_name->realm.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-23 11:48:11 -07:00
Love Hörnquist Åstrand fb8c65a8c2 better logging 2011-07-23 11:44:42 -07:00
Love Hörnquist Åstrand 12403a31ce sprinkle more windows files 2011-07-23 11:18:21 -07:00
Jelmer Vernooij 0b3c720c01 cf: Also enable pthreads on Linux 3.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-07-23 09:22:51 -07:00
Nicolas Williams dfc7ec92fa Make kadm5_lock() and unlock work, and add kadmin commands for them.
The libkadm5 functions hdb_open() and close around all HDB ops.  This
meant the previous implementation of kadm5_lock() and unlock would
always result in a core dump.  Now we hdb_open() for write in
kadm5_lock() and hdb_close() in kadm5_unlock(), with all kadm5_s_*()
functions now not opening nor closing the HDB when the server context
keep_open flag is set.

Also, there's now kadmin(8) lock and unlock commands.  These are there
primarily as a way to test the kadm5_lock()/unlock() operations, but
MIT's kadmin.local also has lock/unlock commands, and these can be
useful for scripting (though they require much care).
2011-07-22 21:07:48 -05:00
Nicolas Williams 43c5244ecc Fix from Roland Dowdeswell -- kadm5_setkey_principal() has to rev kvno earlier 2011-07-22 16:18:44 -05:00
Nicolas Williams e23a1efdc9 Fixes for updates of KADM5_KVNO but not KEY_DATA and vice-versa.
It turns out that updates of kvno but not key data and vice-versa are
both, allowed and actually done (e.g, in kadmin's ank).  Doing the right
thing in these cases turns out to be a bit tricky, but this commit ought
to do it.
2011-07-22 16:07:10 -05:00
Nicolas Williams dae01950a2 add_enctype needs to set the kvno of the keys it adds!
add_enctype() was not fetching the kvno of the principal it was
modifying, and it was not setting the kvno of the new keys (instead it
set it to 0).  This worked fine before multi-kvno, but broke then.  The
fix is to fetch the kvno and set the new keys' kvno to that.

I'm thinking of adding a new kadmin command to prune old kvnos by date
or kvno differential...
2011-07-22 16:07:10 -05:00
Nicolas Williams 1edc2cee45 Test multi-kvno support in kadmin and KDC (part 1). 2011-07-22 16:07:10 -05:00
Nicolas Williams 1e14951592 Preserve set_time on historic keysets in kadm5_s_modify_principal() path. 2011-07-22 16:07:10 -05:00
Nicolas Williams 0f53687346 Two mods from Roland to make kadm5_setkey_principal_3() work. 2011-07-22 16:07:09 -05:00
Nicolas Williams 4f5dbf2f81 Two patches from Roland Dowdeswell to make n_keys/new_keys args optional. 2011-07-22 16:07:09 -05:00
Nicolas Williams c818890dd7 Re-write _kadm5_set_keys2() to handle key history. 2011-07-22 16:07:08 -05:00
Nicolas Williams 1eb56edd86 Introduce Keys ::= SEQUENCE OF Key in hdb.asn1 so we can get convenience utils. 2011-07-22 16:07:08 -05:00
Nicolas Williams 689d4f4dd9 Another HDB_F_DECRYPT-isn't-critical fix. 2011-07-22 16:07:08 -05:00
Nicolas Williams 5335559845 Oops, HDB_F_DECRYPT isn't critical; making it so breaks tests. 2011-07-22 16:07:08 -05:00
Nicolas Williams a246c394d2 Fix warnings. 2011-07-22 16:07:08 -05:00
Nicolas Williams e020dc25b8 Fix a double free in ank.c. 2011-07-22 16:07:08 -05:00
Nicolas Williams f2897efd09 Make the KDC path work. 2011-07-22 16:07:08 -05:00
Nicolas Williams e23c7a7daf How on earth did this build breaking thinko get through? 2011-07-22 16:07:07 -05:00
Nicolas Williams 9d6d3ee5f3 Fixed a likely bug in modify_principal() where the memset() of ent happens after early error checking. 2011-07-22 16:07:07 -05:00
Nicolas Williams 07370612bd Remove policy name checking against krb5.conf code. 2011-07-22 16:07:07 -05:00
Nicolas Williams 87742e8118 Add missing KADM5_AUTH_GET_KEYS error and use it. 2011-07-22 16:07:07 -05:00
Nicolas Williams ed511e06f9 Updated kadmind.8 and kadmin.8. 2011-07-22 16:07:07 -05:00
Nicolas Williams 909653e50f Add comment and assert about key history to kadm5_log_replay_modify() 2011-07-22 16:07:07 -05:00
Nicolas Williams b16ca34642 Fix incorrect key history check optimization. (NOT TESTED) 2011-07-22 16:07:07 -05:00
Nicolas Williams 784e6a69df Avoid useless work related to keepold. 2011-07-22 16:07:07 -05:00
Nicolas Williams 9adb40a06e Forgot to export the kadm5 policy functions. 2011-07-22 16:07:06 -05:00
Nicolas Williams 31974aa24c More s/int/size_t/ for iterators. Also fixed a stupid bug. 2011-07-22 16:07:06 -05:00
Nicolas Williams f2bb83c088 Add default to policy prompt and fix harmless bug in edit_policy() 2011-07-22 16:07:06 -05:00
Nicolas Williams a1203a703d Re-fix an earlier mistake that fell out in a branch switcheroo. 2011-07-22 16:07:06 -05:00
Nicolas Williams 0d90e0c4d0 Complete --keepold support and fix crasher in kadmin cpw -r --keepold. 2011-07-22 16:07:06 -05:00
Nicolas Williams 2510d2d8fc Oops, reverse sense of get-keys check... 2011-07-22 16:07:06 -05:00
Nicolas Williams f15745c60c Forgot to save edits to kadmin/server.c to use the new get-keys authorization. 2011-07-22 16:07:06 -05:00
Nicolas Williams 558a8d05a6 Forgot to export kadm5_store_principal_ent_nokeys(). 2011-07-22 16:07:06 -05:00
Nicolas Williams fad463bbd9 Fix policy validation bug (parse_policy() should return success when the policy name is OK!) 2011-07-22 16:07:06 -05:00
Nicolas Williams a35ea4955a create_principal() must memset(ent, 0, ...) before ever returning (fixes core dump) 2011-07-22 16:07:06 -05:00
Nicolas Williams cf1c898e95 Undo a s/size_t/int/. Iterators must be unsigned. 2011-07-22 16:07:05 -05:00
Nicolas Williams 0674e4b13a Ooops! Mind those tags when re-ordering ASN.1 SEQUENCEs! (hdb_keyset) 2011-07-22 16:07:05 -05:00
Nicolas Williams 4b0245d096 Export the new kadm5 functions. 2011-07-22 16:07:05 -05:00
Nicolas Williams e16360e2db Add --keepold option to cpw. 2011-07-22 16:07:05 -05:00
Nicolas Williams acc8cd4b22 Duh, act on keepold in randkey! 2011-07-22 16:06:25 -05:00
Nicolas Williams af23757829 Trivial policy bug fix. 2011-07-22 16:06:01 -05:00
Nicolas Williams e7ea698366 Fixed dumb bug that caused keys to not accumulate in history. 2011-07-22 16:06:01 -05:00
Nicolas Williams 53ea8ac59b Make changes to hdb_keyset type be backward-compatible. 2011-07-22 16:06:01 -05:00
Nicolas Williams a280ed4d4c Forgot a file for the hdb_keyset backwards-compat extention. 2011-07-22 16:06:01 -05:00
Nicolas Williams fac34871be More kadmin support for kvno diff policy. 2011-07-22 16:06:01 -05:00
Nicolas Williams 3794d8b37b Changed lib/hdb/Makefile.am to use --sequence=HDB-Ext-KeySet 2011-07-22 16:06:01 -05:00
Nicolas Williams 355ae357eb Moved set_time field of hdb_keyset to end and add extensibility marker. 2011-07-22 16:06:01 -05:00
Nicolas Williams c2ec368c36 Add HDB extension for storing policy regarding what historic keys may be used for 2011-07-22 16:06:00 -05:00
Nicolas Williams 308e53a4a8 Initial support for filtering out "dead" historical keys. 2011-07-22 16:05:21 -05:00
Nicolas Williams 7e0a801e28 Changed decrypt key history logic and added HDB_F_ALL_KVNOS. 2011-07-22 16:05:21 -05:00
Nicolas Williams 1f349a6aba kadmin support for policies. 2011-07-22 16:05:21 -05:00
Nicolas Williams a04721b737 Added basic policy support, w/ policy names listed in krb5.conf 2011-07-22 16:05:21 -05:00
Nicolas Williams c338446ede More kadm5 policy stub stuff. 2011-07-22 16:04:53 -05:00
Nicolas Williams 26f9924bb3 Added stubs for the kadm5 policy functions. 2011-07-22 16:04:53 -05:00
Nicolas Williams 56259efbac Added dummy kadm5_get_policies() 2011-07-22 16:04:52 -05:00
Nicolas Williams abd94953e2 Fixes to lock nesting code. 2011-07-22 16:04:52 -05:00
Nicolas Williams 58d72035f1 Added kadm5_lock() and unlock. 2011-07-22 16:04:52 -05:00
Nicolas Williams 109607a355 Fix uninitialized variable. 2011-07-22 16:04:52 -05:00
Nicolas Williams 45294a93a7 Added a disting get-keys authorization for kadmind. 2011-07-22 16:04:52 -05:00
Nicolas Williams 3d0019d3ce Added kadm5_setkey_principal*() and kadm5_decrypt_key(). 2011-07-22 16:04:52 -05:00
Nicolas Williams e8e314bbb1 Beginning of another new kadm5 function. Need to switch branches for a bit. 2011-07-22 16:04:52 -05:00
Nicolas Williams 6e04b05e9d Initial support for kadm5_randkey_principal_3(), needed by krb5_admin.
NOT TESTED YET.
2011-07-22 16:04:52 -05:00
Nicolas Williams 51e9da4a66 Fixed (preemptively) a double free and added password history based on key history. 2011-07-22 16:04:52 -05:00
Nicolas Williams 34189a23fe Added a flag to ensure that we don't mod/store hdb entries fetched with specified kvno. 2011-07-22 16:04:51 -05:00
Nicolas Williams e7f385ad0d Initial patch to make the MIT KDB backend for HDB handle multiple kvnos. 2011-07-22 16:04:51 -05:00
Nicolas Williams 34bb7ae363 Fix double free. 2011-07-22 16:04:51 -05:00
Nicolas Williams a095933ee0 We want the time that a keyset was set, not the time it was replaced. 2011-07-22 16:04:51 -05:00
Nicolas Williams b45ac85b65 Add support for fetching old keys via kadm5 API. 2011-07-22 16:04:51 -05:00
Nicolas Williams 08650b573b Also encrypt the history when storing the entry. 2011-07-22 16:04:51 -05:00
Nicolas Williams fca53990e4 Initial commit for second approach for multiple kvno. NOT TESTED! 2011-07-22 16:04:51 -05:00
Love Hornquist Astrand ed91d4c9e3 Mac compat 2011-07-22 11:50:30 -07:00
Love Hörnquist Åstrand fe10979669 Merge pull request #9 from lha/master
gss names
2011-07-22 11:41:49 -07:00
Jeffrey Altman c13deafcce Synchronize Windows export list with Unix
Change-Id: Ic0ee3d1f4b49761fbd2676f4f9562f1bf906e382
2011-07-21 11:50:45 -04:00
Jeffrey Altman 27cc30d38e GSS_C_ATTR_LOCAL_LOGIN_USER
Be consistent with other GSSAPI global variables.  GSS_C_ATTR_LOCAL_LOGIN_USER
becomes a macro in gssapi.h that refers to an exported variable
__gss_c_attr_local_login_user

Change-Id: I2661d74cd0f760780f75b35f92d6b4f9112080dc
2011-07-21 11:46:15 -04:00
Jeffrey Altman b7df4f8bb3 dirent: fix filespec_from_dir_path
If the path does not begin with a separator, do not advance
skip the first character in the component referred to by 'comp'.

Change-Id: Ide184ba2065bd8b2075be27b8e1f4cae11026fdd
2011-07-21 11:40:04 -04:00
Jeffrey Altman b8ce309acb Permit TESTMechType array to initialize on Windows (C89)
Change-Id: I3c006b9c45f29b129ad6f5102792c1e912bd9c8e
2011-07-21 11:36:31 -04:00
Love Hörnquist Åstrand f79183821f sprinkle doxygen and kode more like the rest of the code base 2011-07-19 21:29:19 -07:00
Roland C. Dowdeswell 77c8ef2c06 krb5_free_default_realm() from mit_glue.c needs to be exported to be useful.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-19 21:25:47 -07:00
Roland C. Dowdeswell 3ef06de67b Fix a couple of bugs in krb5_c_valid_enctype():
1.  on errors, it appears to core dump, and

      2.  the sense of the return code is inverted from the
          MIT implementation.

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-07-19 21:25:15 -07:00
Love Hörnquist Åstrand 7aaba443bc add NTMakefile and windows directories 2011-07-17 12:16:59 -07:00
Love Hörnquist Åstrand 9bff431435 sizeof is used incorrectly in DES3_random_to_key()
from OpenBSD via Jonathan Gray <jsg@goblin.cx>
2011-07-13 23:16:06 -07:00
Jeffrey Altman 49cead6a58 Merge pull request #11 from asankah/master
Updates from Asanka to complete the Heimdal on Windows install package.  Plugins in Software/Heimdal; customizable 32-bit tools directory in multi-platform installer; Feature Tree view; and updated version number.
2011-06-20 13:26:52 -07:00
Love Hörnquist Åstrand d756ad019a make tests pass again 2011-06-19 11:49:33 -07:00
Love Hörnquist Åstrand e73a5a9c54 remove stray klist 2011-06-19 11:39:39 -07:00
Love Hörnquist Åstrand 45b9139cc4 if we are using db1 or db3 (really 3,4,5), when we will need LIB_db_create, otherwise use LIB_NDBM 2011-06-19 11:20:48 -07:00
Love Hörnquist Åstrand 5a25df7851 set HEIMDAL_LOCALEDIR for librfc3961.la too 2011-06-19 11:02:27 -07:00
Love Hörnquist Åstrand 09b07e9ef4 fix ifdef 2011-06-19 10:58:50 -07:00
Love Hörnquist Åstrand 625d29fc3e remove unused ifdef 2011-06-19 10:58:35 -07:00
Love Hörnquist Åstrand 749c112c31 only set IP_TOS on IPv4 sockets 2011-06-19 10:58:22 -07:00
Love Hörnquist Åstrand e5eb401fcd simplify checking and start to use __has_extension 2011-06-19 10:43:12 -07:00
Love Hörnquist Åstrand 4337582a64 add missing break, quiet clang analyzer 2011-06-19 10:28:51 -07:00
Stefan Metzmacher e54d07a9b6 kdc: check and regenerate the PAC in the s4u2proxy case
TODO: we need to add a S4U_DELEGATION_INFO to the PAC later.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-19 10:26:11 -07:00
Stefan Metzmacher 9ab4070800 kdc: pass the correct principal name for the resulting service ticket
Depending on S4U2Proxy the principal name for the resulting
ticket is not the principal of the client ticket.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-19 10:26:11 -07:00
Stefan Metzmacher 2c031ca78c kdc: let check_PAC() to verify the incoming server and krbtgt cheksums
For a normal TGS-REQ they're both signed with krbtgt key.
But for S4U2Proxy requests which ask for contrained delegation,
the keys differ.

metze

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-19 10:26:11 -07:00
Asanka C. Herath adb8cba7ee Windows: Version 1.4.9930.630 2011-06-15 12:38:56 -04:00
Asanka C. Herath 8f51d5a8dc Windows: Use WixUI_FeatureTree for installer. 2011-06-15 01:55:21 -04:00
Asanka C. Herath 7236505bf0 Windows: Multiplatform installer should have a different name. 2011-06-15 01:55:21 -04:00
Asanka C. Herath 8aaf3183ca Windows: Make the 32-bit tools install directory customizable. 2011-06-15 01:55:20 -04:00
Asanka C. Herath 3048545de3 Windows: Use Software/Heimdal registry key for Heimdal specific configuration
The 'plugin_dir' value is Heimdal specific.  So keep it in the
Software/Heimdal registry key.  The Software/Kerberos registry key
will also be loaded and will contain generic Kerberos configuration.
2011-06-15 01:55:19 -04:00
Love Hörnquist Åstrand b8ddbe73c4 quite down clang analyzer warnings for the generate asn1 code 2011-06-14 22:29:49 -07:00
Love Hörnquist Åstrand e9e4f99f01 add missing space in log message 2011-06-14 22:00:25 -07:00
Love Hörnquist Åstrand 63565137d3 don't set i = 0, its never read 2011-06-14 21:57:34 -07:00
Love Hörnquist Åstrand 7dccddc6fb count number of enctypes too 2011-06-14 21:44:23 -07:00
Love Hörnquist Åstrand 0f489b7b28 unexport krb5_init_etype, remove duplicate code 2011-06-14 21:08:52 -07:00
Nicolas Williams f93a56f931 Set improved enctypes parameter defaults to better match the RFC.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-14 20:35:19 -07:00
Nicolas Williams 016193ac6a Added manpage documentation for krb5_{as, tgs}_enctypes.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-14 20:35:19 -07:00
Nicolas Williams 2fbad6432b Initial support for default_{as, tgs}_etypes.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-14 20:35:19 -07:00
Nicolas Williams c06d5ebfda Fixes to patches that add *use-strong* parameters.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-14 20:35:19 -07:00
Nicolas Williams 8ada355954 Forgot to default use_strongest_server_key...
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-14 20:35:19 -07:00
Nicolas Williams 76a192b906 Forgot to default preauth_use_strongest_session_key...
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-14 20:35:19 -07:00
Nicolas Williams 256cf6ea12 This patch adds support for a use-strongest-server-key krb5.conf kdc parameter that controls how the KDC (AS and TGS) selects a long-term key from a service principal's HDB entry. If TRUE the KDC picks the strongest supported key from the service principal's current keyset. If FALSE the KDC picks the first supported key from the service principal's current keyset.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-14 20:35:19 -07:00
Nicolas Williams 481fe133b2 Also added preauth-use-strongest-session-key krb5.conf kdc parameter, similar to {as, tgs}-use-strongest-session-key. The latter two control ticket session key enctype selection in the AS and TGS cases, respectively, while the former controls PA-ETYPE-INFO2 enctype selection in the AS case.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-14 20:35:19 -07:00
Nicolas Williams a7a8a7e95c Initial patch to add as-use-strongest-session-key and same for tgs krb5.conf parameters for the KDC. These control the session key enctype selection algorithm for the AS and TGS respectively: if TRUE then they prefer the strongest enctype supported by the client, the KDC and the target principal, else they prefer the first enctype fromt he client's list that is also supported by the KDC and the target principal.
Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-14 20:35:19 -07:00
Love Hörnquist Åstrand ec35b8d4a2 add option to disable --disable-heimdal-documentation 2011-06-14 20:33:44 -07:00
Love Hörnquist Åstrand 4a6fa9a979 distribute version-script.map 2011-06-14 07:18:32 -07:00
Love Hörnquist Åstrand 277bec06e7 simplify error printing, context contains error 2011-06-14 07:11:43 -07:00
Love Hörnquist Åstrand 40a53bae5f Don't build ppc any more, don't have a compiler for that any more 2011-06-13 21:23:23 -07:00
Love Hörnquist Åstrand e72940c962 more frameworks for test_name 2011-06-13 21:19:10 -07:00
ghudson@MIT.EDU 3c725a465e Initialize zero before using it in unwrap_des().
Heimdal since fc702a97f5 (August 2009)
can't process DES wrap tokens unless the stack garbage in the zero
array happens to be all zeros.

Signed-off-by: Love Hörnquist Åstrand <lha@h5l.org>
2011-06-13 21:18:07 -07:00
Love Hörnquist Åstrand 9c040227a5 1.5pre2 2011-06-13 20:29:47 -07:00
Love Hörnquist Åstrand afd8627f61 GSS names 2011-05-31 20:25:33 -07:00
Love Hornquist Astrand ade3d65e73 more limits 2011-05-22 20:57:30 -07:00
Love Hornquist Astrand 9d4addf9c1 fix preferences 2011-05-22 20:47:32 -07:00
Love Hornquist Astrand 8b1b47035d Switch to krb5_enomem 2011-05-22 20:43:31 -07:00
Love Hörnquist Åstrand 5829bfe476 add LIB_heimbase 2011-05-22 17:28:24 -07:00
Love Hörnquist Åstrand 27f3d822cf Maybe include <sys/types.h> and <sys/select.h> 2011-05-22 17:14:29 -07:00
Love Hörnquist Åstrand b019c085bd handle leaks excluded 2011-05-22 14:26:59 -07:00
Love Hörnquist Åstrand 48a91b7fc5 change prefix ETYPE_ to KRB5_ENCTYPE_ and provide compat symbols 2011-05-22 14:06:40 -07:00
Love Hornquist Astrand 3564726537 support NT_USER_NAME for real 2011-05-22 13:02:08 -07:00
Love Hornquist Astrand 9dc505a721 cred is no longer a name, handle that 2011-05-22 13:01:32 -07:00
Love Hornquist Astrand 12c3c12160 pass in client name 2011-05-22 13:01:00 -07:00
Love Hornquist Astrand 9a5019156c remove debug and don't check targetname since it doesn't really matter 2011-05-21 13:27:57 -07:00
Love Hornquist Astrand 5564106268 use client-amel 2011-05-21 13:25:51 -07:00
Love Hornquist Astrand 26085dfbc0 allocate enough memory 2011-05-21 13:25:24 -07:00
Love Hornquist Astrand 58ffee93b7 allow GSS_C_NT_USER_NAME too 2011-05-21 13:07:22 -07:00
Love Hornquist Astrand cb7cbbb906 add more people that have contributed 2011-05-21 12:23:47 -07:00
Love Hornquist Astrand 58ea513056 fix error message 2011-05-21 12:11:04 -07:00
Love Hornquist Astrand 0879b9831a remove trailing whitespace 2011-05-21 11:57:31 -07:00
Love Hornquist Astrand 25e86d6f4d check for execinfo.h and backtrace() 2011-05-21 11:55:21 -07:00
Thomas Klausner 97df66c0a0 Put Nd argument after Nd macro.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-05-21 11:54:27 -07:00
Thomas Klausner 3772533acd Convert to UTF-8.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-05-21 11:54:21 -07:00
Thomas Klausner db8e287e41 Use "Fl Fl" for long options.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-05-21 11:54:14 -07:00
Love Hornquist Astrand 05a432aaed let try to exclude __CFInitialize 2011-05-20 08:42:29 -07:00
Luke Howard 79ff133ae9 make gss_acquire_cred_ext private 2011-05-20 14:31:08 +02:00
Love Hornquist Astrand 9cf61bc762 add mech/compat.h for distribution 2011-05-19 00:02:06 -07:00
Love Hornquist Astrand 72fe85c267 fix enum vs int warning 2011-05-18 22:30:46 -07:00
Love Hornquist Astrand 1745da3636 fix const warning 2011-05-18 22:28:54 -07:00
Love Hornquist Astrand c7c22aef44 clean slc-lex.c 2011-05-18 22:15:49 -07:00
Love Hornquist Astrand e4580fe4cc add glue for krb5_einval 2011-05-18 22:00:37 -07:00
Love Hornquist Astrand 4c063f2955 quite const warning 2011-05-18 22:00:20 -07:00
Love Hornquist Astrand c6c32a431f provide _krb5_einval and _krb5_debug_backtrace that will ease figuring out when it happens 2011-05-18 21:59:56 -07:00
Love Hornquist Astrand 492492e42a use new function krb5_einval instead of returning EINVAL directly 2011-05-18 21:59:23 -07:00
Love Hornquist Astrand 3ada607635 Final fixes from Christos Zoulas 2011-05-18 21:58:57 -07:00
Love Hornquist Astrand 9af798f09f sort, add Roland and Christos. 2011-05-18 21:57:46 -07:00
Jeffrey Altman 5523e33a9f windows: update README
provide additional details about the windows build system

Change-Id: I5196b8e743f3cc969e02f5954bdc6ff91c45e7f1
2011-05-19 00:32:54 -04:00
Jeffrey Altman c591fb466f windows: merge module directory selection
permit an alternative location for the merge module
directory to be specified.

Change-Id: I911aca232132111c8378a75ff1f4ed63c59e9044
2011-05-19 00:32:53 -04:00
Jeffrey Altman f51c82c245 link gssapi to heimbase.dll on windows
Change-Id: I4635dcdfd0a50353b27d1a4c22f09931ae6b6117
2011-05-19 00:32:53 -04:00
Love Hornquist Astrand 7da5085f07 introduce heim_builtin_expect 2011-05-18 21:23:47 -07:00
Jeffrey Altman 18b76b6236 fcache: prevent null pointer dereference
Validate krb5_ccache and krb5_cc_cursor inputs
before use.  Avoid null pointer dereference which
can occur if an application fails to properly check
return codes.

Change-Id: I8023808936e60cc7b8e57a062106cfcdc51ee7d7
2011-05-18 10:20:09 -04:00
Love Hornquist Astrand 305596d9ad Rename subsystem_DEPRECATED to subsystem_DEPRECATED_FUNCTION(X)
Start to explain what the replacement function is.
Generate the #define/#undef logic in generated header files.
Use gcc style where the deprecation warning is after the prototype.
2011-05-17 23:12:51 -07:00
Love Hornquist Astrand 9ed040da38 fix compile warning 2011-05-17 23:01:40 -07:00
Love Hornquist Astrand 5774dcfbd8 actually return datum with real content 2011-05-17 21:54:32 -07:00
Love Hornquist Astrand 553ad48e38 remove label no longer used 2011-05-17 21:49:40 -07:00
Love Hornquist Astrand f78cb2ca4b Only include myflags if we use HAVE_DB3 2011-05-17 21:48:33 -07:00
Love Hornquist Astrand 01f0a1f509 move tsearch.c to autodetection for libroken.la 2011-05-17 21:47:02 -07:00
Love Hornquist Astrand 4c7ba73439 Default to false(?), at least default to something. 2011-05-17 21:22:45 -07:00
Love Hornquist Astrand 1c10632690 Add define for ret 2011-05-17 21:21:20 -07:00
Love Hornquist Astrand 9b07f0e847 Include <heimbase.h>. 2011-05-17 21:21:07 -07:00
Love Hornquist Astrand b01fe66069 Use right variable with comparing lengths. Patch orignally from Jaideep Padhye 2011-05-17 21:17:59 -07:00
Jeffrey Altman aaa4400942 Apply missing function modifiers
GSSAPI_CALLCONV, GSSAPI_LIB_FUNC, GSSAPI_LIB_CALL as appropriate

Change-Id: I5198cfc7dd665bdc064aa0e613dac7db7465e2b9
2011-05-17 14:02:49 -04:00
Jeffrey Altman 87aad6a13a Add NO_LOCALNAME
The pname to uid functionality at present assumes there is
an implementation of getpwnam() and that the local user
identifier is an integer.  On Windows, the local user identifier
is a SId.  Add NO_LOCALNAME as a build option so that Windows
(for now) can build without providing a getpwnam() implementation.

Change-Id: I04cfd6d2cd52e6228733f1da1dab420b453e6566
2011-05-17 13:56:37 -04:00
Jeffrey Altman dbbf89bccf Add Luke's new gss functionality to Windows
Change-Id: I0109e0e5a3d819428ac0a81aafa26b812c8a9206
2011-05-17 13:52:35 -04:00
Jeffrey Altman 217ada7a06 use const consistently for acquire_cred
Change-Id: I000d954267efa16439e19b0604c660f3c5be791c
2011-05-17 13:51:12 -04:00
Jeffrey Altman 771f29a451 remove extra initializers to krb5_mech
Change-Id: Iee4d7dfd668a6e6da251b93dfd6ca3a7f7bcb062
2011-05-17 13:44:04 -04:00
Jeffrey Altman 13f63decb6 conditionally export kcm functions on windows
Change-Id: I3d11595e690467afccc4f82f4eafee1cb2736757
2011-05-17 13:40:58 -04:00
Jeffrey Altman 6c1ad560ea no C99 named struct initializers on Windows
commit f5f9014c90 added the
first use of C99 named struct initializers which are not
supported on Windows.  Remove their use in external.c and
in ks_dir.c.

Change-Id: Ibb6b2d5b3dbd4041cb638d2c7a9bd6f916fd45d7
2011-05-17 12:02:16 -04:00
Jeffrey Altman 6850d6a65f avoid uninit variable and unreachable code warnings
most of these warnings are not problems because of ample
use of abort() calls.  However, the large number of warnings
makes it difficult to identify real problems.  Initialize
the variables to shut up the compilers.

Change-Id: I8477c11b17c7b6a7d9074c721fdd2d7303b186a8
2011-05-17 12:02:16 -04:00
Jeffrey Altman 36dcd37cc7 use %p printf format spec for pointers
do not cast to unsigned long since a 64-bit pointer
and 32-bit long will truncate the value.

Change-Id: Ibeda98171ccbab4b55950bb02c858773e1028cbf
2011-05-17 12:02:15 -04:00
Jeffrey Altman 844fa0ad5a avoid calling hx509_free_cert() twice
in krb5_pk_enterprise_cert() pkinit.c, hx509_free_cert()
could be called twice.

Change-Id: I9911d38f1f926721dca2753c6296f26c66c474ad
2011-05-17 12:02:14 -04:00
Jeffrey Altman 52556b1b74 fix uninitialized vars in pkinit.c find_cert()
'start' must be initialized to '1'

'ret' to HX509_CERT_NOT_FOUND

Change-Id: I748bd9856f70b7d627082f73a3a22f1395a604ba
2011-05-17 12:02:14 -04:00
Jeffrey Altman 9bf311fc3c export krb5_kt_have_content() on windows
Change-Id: Iee6615e6e6d14d36546fadee5b3b374d750202cb
2011-05-17 12:02:13 -04:00
Jeffrey Altman 0a36d16131 add KRB5_LIB_FUNCTION/KRB5_LIB_CALL to kcm.c
Change-Id: I7bc2f54b968843c05aabf03afa556a3d31b696c0
2011-05-17 12:02:13 -04:00
Jeffrey Altman 0fa2edf620 install kcm.h on windows
Windows does not yet support the kcm.  However, the header
is now required for building lib/gssapi/ntlm so install it.

Change-Id: I9949794d1159797e11c3e6fdd5675ae857cf04a1
2011-05-17 12:02:12 -04:00
Jeffrey Altman 34748acc8f update libhx509-exports.def for renamed functions
Change-Id: I13bcc8501f62bb6cd5bc036f2a660b2ebd55af4f
2011-05-17 12:02:12 -04:00
Jeffrey Altman 75959422e1 update gssapi/ntlm for windows build
NTMakefile:
  replace ntlm/inquire_cred.c with ntlm/creds.c
  add ntlm/inquire_sec_context_by_oid.c
  add ntlm/iter_cred.c

add missing GSSAPI_CALLCONV function descriptors

conditionalize use of kcm functions with HAVE_KCM

Change-Id: Ia693f67304405bd540c57db8858c13314cd60322
2011-05-17 12:02:11 -04:00
Jeffrey Altman 31de117576 avoid C99 %z printf format spec in asn1 gen_decode
Windows does not support the %z printf format specification
indicating the variable is of size_t.  In gen_decode the
variable 'depth' does not need to be of 'size_t'.  'unsigned int'
will suffice.

Change-Id: Ic56290ba702f7681d5e11f9d23bfa3eb7274dbbe
2011-05-17 12:02:11 -04:00
Jeffrey Altman 9fb0ba53c5 windows: do not build lib/editline
lib/editline has been replaced in the tree by lib/libedit.
However, neither readline() implementation is required by
the Windows build at the present time.

Change-Id: I7d0390d1f03a1d25c3f79ad76206872b388d1d53
2011-05-17 12:02:10 -04:00
Jeffrey Altman e5bc391f2e roken: declare IN_LOOPBACKNET if necessary
Not all platforms provide a definition of
IN_LOOPBACKNET.  Let roken define it if it is otherwise
undeclared.

Change-Id: Ibbac2fc4045671237fae23119746b37afb3b83fb
2011-05-17 12:02:09 -04:00
Jeffrey Altman 1301b1cc15 extend windows build system for additional subdirs
Permit an additional level of subdirectory depth in
the Windows build system

Change-Id: I2d248d3e917e13457ca135c4a221d723643159fa
2011-05-17 12:02:09 -04:00
Jeffrey Altman e8aea380be Fix get_windows_size() on Windows
The committed implementation of get_windows_size() failed
to compile on the Windows platform.

'int ret' declaration is moved to avoid unused variable
warning.

Change-Id: I0f6ea4524db736d539b10c6bd7836a770a5e7058
2011-05-17 12:02:08 -04:00
Love Hornquist Astrand d051ecedb2 run over tree with find only once 2011-05-17 07:50:35 -07:00
Love Hornquist Astrand 2ac7566997 Fix logic for adding digestAlgorithm, original patch from Douglas E Engert. 2011-05-17 07:43:42 -07:00
Luke Howard e00ae9267f export gss_userok 2011-05-16 23:38:52 +02:00
Luke Howard 85918e7f12 gss_accept_sec_context disappeared from exports 2011-05-16 23:37:28 +02:00
Luke Howard 3a100237e6 fix link regression, use EVP_DigestFinal_ex 2011-05-16 23:36:02 +02:00
Luke Howard c6008d2832 remove /usr/local/bin path from autogen.sh that escaped 2011-05-16 23:18:16 +02:00
Luke Howard 5431c4bcd3 Set MN_mech if mechanism doesn't set it 2011-05-16 18:20:53 +02:00
Luke Howard 6d9be164b7 add GSS_C_INQ_SSPI_SESSION_KEY for Kerberos 2011-05-16 16:50:01 +02:00
Luke Howard 6abb251957 check correct status code in attr_authorize_localname 2011-05-15 15:52:40 +02:00
Luke Howard f6ce64e1da fix uninitialised variable check in attr_pname_to_uid() 2011-05-15 14:20:56 +02:00
Luke Howard 66cd3b451c remove incorrect NULLity check for gm_pname_to_uid 2011-05-15 14:17:58 +02:00
Luke Howard 1f02feb3dc fix off-by-one in GSS_C_ATTR_LOCAL_LOGIN_USER attribute 2011-05-15 14:17:43 +02:00
Luke Howard 23bf28b1b8 remove unused variable from gss_add_cred_with_password 2011-05-15 01:51:08 +02:00
Luke Howard 810523e6c4 remove extraneous whitespace 2011-05-14 23:12:33 +02:00
Luke Howard c73848354c remove extraneous gss_acquire_cred_with_password declaration 2011-05-14 23:11:01 +02:00
Luke Howard 80f06cfc19 cleanup 2011-05-14 23:10:25 +02:00
Luke Howard 9d0a97c022 fix pointer error 2011-05-14 18:01:47 +02:00
Luke Howard 88e3968a9e implement gss_add_cred_with_password over gss_acquire_cred_ext 2011-05-14 17:57:09 +02:00
Luke Howard 33d1877c21 use gss_const_OID for gss_acquire_cred_ext 2011-05-14 17:16:49 +02:00
Luke Howard b9c96aa6de use gss_acquire_cred_ext in test app 2011-05-14 17:13:51 +02:00
Luke Howard cbebf13216 acquire_cred_with_password is a SPI symbol 2011-05-14 17:09:20 +02:00
Luke Howard 48719d5651 shim acquire_cred_with_password SPI into acquire_cred_ext 2011-05-14 17:00:55 +02:00
Luke Howard dfba868910 Merge branch 'master' into lukeh/acquire-cred-ex-moonshot-integ
Conflicts:
	lib/gssapi/Makefile.am
	lib/gssapi/mech/gss_acquire_cred_with_password.c
	lib/gssapi/test_context.c
	lib/gssapi/version-script.map
2011-05-14 16:48:49 +02:00
Luke Howard 2a8dc252b6 add gss_acquire_cred_with_password test to test_context 2011-05-14 16:26:14 +02:00
Luke Howard 4a36c8dd7d remove MN check in gss_authorize_localname because all names are MNs 2011-05-14 16:10:12 +02:00
Luke Howard ab9c41d544 restore aclocal.m4 from master, for now. 2011-05-14 15:05:09 +02:00
Luke Howard 3069d80734 Merge branch 'master' into lukeh/acquire-cred-ex 2011-05-14 14:56:16 +02:00
Luke Howard d8ff5844f7 Merge branch 'lukeh/acquire-cred-ex' of github.com:heimdal/heimdal into lukeh/acquire-cred-ex 2011-05-14 14:56:06 +02:00
Luke Howard 927cccd3c6 Merge branch 'master' into lukeh/moonshot 2011-05-14 14:51:55 +02:00
Luke Howard 272a30405f remove trailing whitespace 2011-05-14 14:51:41 +02:00
Luke Howard eec71dac7c Revert "disable _gsskrb5_pname_to_uid, there's no aname_to_localname"
This reverts commit ad69ac97b1.
2011-05-14 14:51:10 +02:00
Luke Howard 9f2cd17add Revert "remove krb5 authorize_localname impl, there's no krb5_kuserok"
This reverts commit 4b92552c1e.
2011-05-14 14:51:08 +02:00
Luke Howard d1b553aae2 add some loopback detection in GSS dynamic loading 2011-05-13 02:27:01 +02:00
Luke Howard 6971125a79 add some loopback detection in GSS dynamic loading 2011-05-13 02:26:41 +02:00
Luke Howard ad69ac97b1 disable _gsskrb5_pname_to_uid, there's no aname_to_localname 2011-05-13 00:47:37 +02:00
Luke Howard 4b92552c1e remove krb5 authorize_localname impl, there's no krb5_kuserok 2011-05-13 00:46:14 +02:00
Luke Howard 8687bab419 correct switched order of pname_to_uid/authorize_localname 2011-05-13 00:41:18 +02:00
Luke Howard 5dc4aeee49 Merge branch 'master' into lukeh/moonshot
Conflicts:
	lib/gssapi/mech/gss_mech_switch.c
2011-05-13 00:19:01 +02:00
Luke Howard b323601091 mechglue fixes
- support gssspi_set_cred_option
- pick up OID sets of names for dynamic mechs
2011-05-13 00:16:56 +02:00
Luke Howard 766b7a558c Allow composite names in gss_import_name() 2011-05-12 14:02:15 +02:00
Luke Howard 3287820448 Allow NULL arguments to gss_{get_name_attribute,inquire_name} 2011-05-12 14:02:11 +02:00
Luke Howard 4933215778 Allow NULL arguments to gss_{get_name_attribute,inquire_name} 2011-05-12 14:01:40 +02:00
Luke Howard 4693ab98df Allow composite names in gss_import_name() 2011-05-12 13:39:19 +02:00
Luke Howard f1aa972bb8 fix trailing comma 2011-05-12 13:04:59 +02:00
Luke Howard e128b0ca01 Merge branch 'master' into lukeh/moonshot
Conflicts:
	lib/gssapi/krb5/external.c
	lib/libedit/src/vi.c
2011-05-12 13:04:55 +02:00
Love Hornquist Astrand be92276b8b Fix bug in realm encoding reported by Mark Pröhl
Also, add basic test while here.
2011-05-08 11:22:07 -07:00
Love Hornquist Astrand 77c7747cc3 plug memory leak 2011-05-08 11:21:44 -07:00
Love Hornquist Astrand bd2d4c2f79 ->max_alloc to krb5_storage and use it 2011-05-08 00:16:02 -07:00
Love Hornquist Astrand 35652e4a03 drop libeditline 2011-05-07 19:02:23 -07:00
Love Hornquist Astrand adcaf1efe9 use libedit 2011-05-07 19:01:32 -07:00
Love Hornquist Astrand 17ecd8bc92 move time backward 2011-05-07 17:22:37 -07:00
Love Hornquist Astrand 86f200c2f7 move time backward 2011-05-07 17:22:24 -07:00
Love Hornquist Astrand 114dff9ebd add depency on built headerfiels for librfc3961_la_OBJECTS 2011-05-07 12:29:52 -07:00
Love Hornquist Astrand 657297a738 clean the last bits of KRB4 support in KDC 2011-05-07 11:44:15 -07:00
Love Hornquist Astrand 1a77d64a97 check encoding of MechTypeList 2011-05-07 06:34:36 -07:00
Love Hornquist Astrand 0363c62520 no more strndup 2011-05-04 21:53:10 -07:00
Love Hornquist Astrand 41328aa28e fix argument to get_window_size 2011-05-04 21:50:17 -07:00
Love Hornquist Astrand b1909b2daa Fixes from NetBSD via Thomas Klausner and Roland C. Dowdeswell 2011-05-04 21:31:10 -07:00
Love Hornquist Astrand 9a1a5e5da6 Mandoc and spelling fixes from Thomas Klausner 2011-04-29 20:37:33 -07:00
Love Hornquist Astrand 59f4918ef0 set the CFXSentByAcceptor flag, patch from Jaideep Padhye 2011-04-29 20:34:42 -07:00
Love Hornquist Astrand f5f9014c90 Warning fixes from Christos Zoulas
- shadowed variables
- signed/unsigned confusion
- const lossage
- incomplete structure initializations
- unused code
2011-04-29 20:25:05 -07:00
Love Hornquist Astrand 66c15e7caf add support for sha256 and sha512 for the nist kdf 2011-04-25 14:46:38 -07:00
Love Hornquist Astrand e062131344 undef __weak_reference on freebsd since its different 2011-04-25 13:33:01 -07:00
Love Hornquist Astrand 074a30618f Try to parse inner structure of an octet string (limited to CONS SEQ right now) 2011-04-25 11:33:58 -07:00
Love Hornquist Astrand b3811999f7 fix error condition 2011-04-23 20:03:57 -07:00
Love Hornquist Astrand 3ae4c52cbc make _der_gmtime pickier about times is willing to convert 2011-04-23 19:57:14 -07:00
Love Hornquist Astrand b507bdb54f if _der_gmtime() failes (which is can't right now but eventially will) return ASN1_BAD_TIMEFORMAT 2011-04-23 19:42:02 -07:00
Love Hornquist Astrand c5e6aa34dc add Tom Payerle 2011-04-23 19:32:23 -07:00
Love Hornquist Astrand 311b3c4f32 catch error from asprintf()
Patch from Tom Payerle
2011-04-23 19:31:43 -07:00
Love Hornquist Astrand 3b2e927c79 catch error from asprintf() 2011-04-23 18:57:57 -07:00
Love Hornquist Astrand 1b81d2db6b support loading more then one verifier, use function name instead of module name
patch from Tom Payerle
2011-04-23 18:57:12 -07:00
Love Hornquist Astrand 2bcacbd052 patch from Christos Zoulas 2011-04-23 18:27:35 -07:00
Love Hornquist Astrand 17b38758ff patch from Christos Zoulas 2011-04-23 18:25:40 -07:00
Love Hornquist Astrand 7a4d4c5f4e Add HAVE_SQLITE3 that allows control if you want sqlite or not 2011-04-16 10:26:43 -07:00
Nicolas Williams 4244f13866 This makes hdb-sqlite work: moving the unseal of keys past the value2entry decoding.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-04-16 10:19:40 -07:00
Luke Howard 02cf28e20b implement gss_acquire_cred_ex with password support
add missing SPIs to gss_mech_switch

s/acquire_cred_ex/acquire_cred_ext/g
2011-04-16 11:06:24 +02:00
Love Hornquist Astrand 81a03fafd2 is rk, not rx 2011-04-14 13:08:16 -07:00
Love Hornquist Astrand 523d84b417 return error from lower layer 2011-04-14 12:54:16 -07:00
Love Hornquist Astrand 6f5b93fc8b return error from lower layer 2011-04-14 12:54:16 -07:00
Love Hornquist Astrand d8b5246607 catch error from gsskrb5_register_acceptor_identity 2011-04-14 12:54:16 -07:00
Love Hornquist Astrand d0502b2eb4 return error message from lower layer, only modify for Kerberos 2011-04-14 12:54:16 -07:00
Love Hornquist Astrand f632c5239e one element per line 2011-04-14 12:54:16 -07:00
Love Hornquist Astrand ec88b5d043 move _gss_DES3_get_mic_compat to after ->target is set
Patch from Roland Dowdeswell
2011-04-14 12:54:15 -07:00
Love Hornquist Astrand c178563bef use ntlm_service 2011-04-14 12:54:15 -07:00
Love Hornquist Astrand d9b3c87fc3 use unix sockets too 2011-04-14 12:54:15 -07:00
Love Hornquist Astrand 00b3524892 link with libheimntlm.la 2011-04-14 12:54:15 -07:00
Luke Howard fedd232ee4 update PADL copyright information 2011-04-13 13:07:52 +02:00
Luke Howard 7178ca10de update PADL copyright information 2011-04-11 05:27:45 +02:00
Derrick Brashear 988355d9d0 roken: Make tsearch build on windows
no sys/cdefs.h on windows
2011-04-10 21:49:48 +01:00
Luke Howard 79a1e790bd Merge branch 'master' into lukeh/moonshot 2011-04-10 16:17:53 +10:00
Love Hornquist Astrand 36f9851a4e remove tsearch manpage 2011-04-09 18:30:58 -07:00
Love Hornquist Astrand fda076962d check prefixed keytab too 2011-04-09 18:28:15 -07:00
Luke Howard 0d7bc0c549 remove user_ok from gss_authorize_localname 2011-04-09 13:41:51 +10:00
Luke Howard d5277a8da1 slightly retentive cleanup of error codes 2011-04-09 13:06:36 +10:00
Luke Howard dc77a12a7d Merge branch 'master' into lukeh/moonshot 2011-04-09 11:35:54 +10:00
Luke Howard bac9c34172 authorize_localname SPI now includes nametype 2011-04-09 11:34:19 +10:00
Derrick Brashear 2a32bf67f0 Add tsearch and friends, and a test program
tsearch is missing from windows. use the netbsd version as it's
license-compatible.
2011-04-08 15:15:36 +01:00
Luke Howard 1a8bb5143c compile fix 2011-04-08 12:19:25 +10:00
Luke Howard 6c6e483e00 gss_authorize_localname implementation 2011-04-08 10:58:57 +10:00
Luke Howard 6ec5011d48 Merge branch 'master' into lukeh/moonshot 2011-04-08 09:05:36 +10:00
Luke Howard 41de6c92f5 s/acquire_cred_ex/acquire_cred_ext/g 2011-04-08 09:04:57 +10:00
Luke Howard f79f005783 add missing SPIs to gss_mech_switch 2011-04-08 09:04:57 +10:00
Luke Howard 6e3d3d4533 implement gss_acquire_cred_ex with password support 2011-04-08 09:04:57 +10:00
Love Hornquist Astrand 3d36172090 allow keytab specifiction to gsskrb5_register_acceptor_identity 2011-04-07 07:15:28 -07:00
Love Hornquist Astrand 372db4d853 add krb5_kt_have_content 2011-04-07 07:15:27 -07:00
Love Hornquist Astrand f1718af272 make work again after adding loopback addresses 2011-04-07 07:15:27 -07:00
Simon Wilkinson a597ccdde6 roken: Rename gettimeofday replacement
All replacement roken functions are named rk_blah to avoid symbol
collisions. gettimeofday wasn't being renamed in the header, so fix
that.

This doesn't change the soname of the resulting library, as gettimeofday
isn't currently exported.
2011-04-05 19:44:11 +01:00
Nicolas Williams c5041352cb Fixed a bug in the initial loopback ifs patch.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-04-04 22:45:33 -07:00
Nicolas Williams e7672a71aa Patch to include non-loopback addresses from loopback interfaces.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-04-04 22:45:33 -07:00
Nicolas Williams b5137810fb Various bug fixes in hdb-mitdb.c.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-04-04 22:44:58 -07:00
Nicolas Williams 941eba430b Fixed a bug by s/u16/SEEK_CURR/; the bug prevented this mitdb backend from parsing MIT KDB entries with multiple kvnos in non-increasing order.
Fixed a double-free bug that was triggered by MIT KDB entries with
multiple kvnos in non-increasing order.

Added lots of comments regarding the MIT KDB entry format.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-04-04 22:44:57 -07:00
Nicolas Williams 9cbe3298d7 Second attempt to make DB selection saner.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-04-04 22:44:57 -07:00
Nicolas Williams 6a836fc939 First attempt to make DB selection saner.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-04-04 22:44:57 -07:00
Luke Howard 093403a2a7 Merge branch 'master' into lukeh/moonshot 2011-04-03 18:08:23 +10:00
Luke Howard 1a6d126023 Use RFC 5587 const types for draft-josefsson-gss-capsulate APIs 2011-04-03 18:07:07 +10:00
Luke Howard 4777035abf delete protos, private.h when autogenerating 2011-04-01 19:36:46 +11:00
Love Hornquist Astrand 6961424682 path should start with / 2011-04-01 01:12:46 -07:00
Love Hornquist Astrand bd98e01ff9 ignore generated files better (and remove them from repo) 2011-04-01 00:36:27 -07:00
Love Hornquist Astrand a70217d371 include krb5_copy_context 2011-04-01 00:27:32 -07:00
Luke Howard 87e3a85985 gss_userok need not check for complete 2011-03-28 23:56:00 +11:00
Luke Howard 987658325e correctly decode MIT KDB flags
Patch from Nico Williams <nico@cryptonector.com>
2011-03-23 11:26:50 +11:00
Luke Howard 4362ebe02a Merge branch 'master' into lukeh/moonshot 2011-03-22 17:14:33 +11:00
Luke Howard 0fbfe9b38e Revert MIT code from gss test application 2011-03-22 16:51:30 +11:00
Luke Howard efd2d44a30 kill gss_map_name_to_any 2011-03-22 16:48:07 +11:00
Love Hornquist Astrand 46444695f6 include <sys/socket.h> and fix ifdef wrapping for <sys/un.h> 2011-03-21 22:23:21 -07:00
Luke Howard 4748fc9489 Merge branch 'master' into lukeh/moonshot 2011-03-22 15:45:12 +11:00
Love Hornquist Astrand 7c039e5630 Add missing quoting in manpage. Patch from Nicolas Joly. 2011-03-21 09:28:32 -07:00
Luke Howard cb92ea2d54 another variant on hack for libedit build on FreeBSD 2011-03-22 00:24:51 +11:00
Luke Howard 5d773c3d7f revert libedit FreeBSD hack, will endeavour to fix properly 2011-03-22 00:05:37 +11:00
Luke Howard c99906eed4 update for autoheader 2011-03-22 00:02:00 +11:00
Luke Howard 871af1976f remove autogenerated gunk 2011-03-21 23:59:01 +11:00
Luke Howard 9053e86254 Merge branch 'lukeh/moonshot' of github.com:heimdal/heimdal into lukeh/moonshot
Conflicts:
	lib/gssapi/version-script.map
2011-03-21 23:55:54 +11:00
Luke Howard d116a78297 add missing exports 2011-03-21 23:53:17 +11:00
Luke Howard da70ba0e8d Merge branch 'master' of github.com:heimdal/heimdal 2011-03-21 18:36:24 +11:00
Luke Howard 6b9ec3e047 add __gss_c_nt_anonymous_oid_desc to version script 2011-03-21 17:59:42 +11:00
Luke Howard ff3ec1ee91 fix error case crasher 2011-03-21 17:46:07 +11:00
Luke Howard 841a5ed3ba export krb5_kcm_call/krb5_kcm_storage_request
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-03-20 23:27:04 -07:00
Luke Howard 8a88550546 export gss_store_cred 2011-03-21 16:54:27 +11:00
Luke Howard e8dc503c5d export krb5_kcm_call/krb5_kcm_storage_request 2011-03-21 16:42:49 +11:00
Luke Howard 0a9178e610 remove deprecated naming extension APIs, add pname/userok 2011-03-21 16:39:35 +11:00
Luke Howard 907da38cd9 attribute-based implementation of gss_pname_to_uid 2011-03-21 11:54:52 +11:00
Luke Howard ca48b27fe7 add _gsskrb5_pname_to_uid implementation 2011-03-20 23:31:32 +11:00
Luke Howard e60a9956c4 cleanup pname_to_uid 2011-03-20 23:19:07 +11:00
Luke Howard 0dff021161 add krb5 glue for userok 2011-03-20 20:57:24 +11:00
Luke Howard 84f5aebc10 use gss_userok 2011-03-20 20:50:19 +11:00
Luke Howard e78371829c implement gss_userok/gss_pname_to_uid 2011-03-20 20:34:59 +11:00
Luke Howard 0f13ae9fe5 fix macro compile error 2011-03-20 19:41:52 +11:00
Luke Howard 9455577b65 Merge branch 'master' of github.com:heimdal/heimdal
Conflicts:
	lib/gssapi/gssapi/gssapi.h
	lib/gssapi/gssapi_mech.h
	lib/gssapi/mech/gss_mech_switch.c
2011-03-20 19:08:10 +11:00
Love Hornquist Astrand 596cb33805 Remove kerberos4 enable option 2011-03-15 13:51:46 -07:00
Love Hornquist Astrand 6819c18378 really remove extra files 2011-03-13 17:12:01 -07:00
Love Hornquist Astrand 1c782af347 don't don't build files not used 2011-03-13 17:10:20 -07:00
Love Hornquist Astrand 6d6734bfab document hx509_certs_iter() 2011-03-13 17:09:08 -07:00
Love Hornquist Astrand de8c4b4797 update (c) 2011-03-13 16:55:02 -07:00
Love Hornquist Astrand 335050ccc5 update (c) 2011-03-13 16:54:43 -07:00
Love Hornquist Astrand e1c37aac08 update (c) 2011-03-13 16:54:16 -07:00
Love Hornquist Astrand a7ec7d2dd8 mark 1.5pre1 2011-03-13 16:53:54 -07:00
Love Hornquist Astrand 9ef071c94e replace libeditline with libedit 2011-03-13 14:18:14 -07:00
Love Hornquist Astrand 217021914d add more oids 2011-03-13 13:40:52 -07:00
Love Hornquist Astrand df802c6298 add keys 2011-03-13 12:42:54 -07:00
Love Hornquist Astrand 35a072e574 add pac 2011-03-13 12:42:42 -07:00
Love Hornquist Astrand f237400f2c add GSS_C_INQ_SSPI_SESSION_KEY 2011-03-13 12:38:25 -07:00
Love Hornquist Astrand f7a6a29d6a add sessions.c 2011-03-13 01:23:56 -08:00
Love Hornquist Astrand 578d2cf2f1 add session glue 2011-03-13 01:23:30 -08:00
Love Hornquist Astrand c3905ff795 glue in some more functions 2011-03-12 19:29:00 -08:00
Love Hornquist Astrand 7013c453eb x 2011-03-12 18:49:44 -08:00
Love Hornquist Astrand f7a6a240c1 check return values 2011-03-12 14:19:17 -08:00
Love Hornquist Astrand bf5b86857b add more private symbols 2011-03-12 14:03:30 -08:00
Love Hornquist Astrand 3327fd1464 add _krb5_key_data 2011-03-12 14:01:21 -08:00
Love Hornquist Astrand 4d0d3b9535 remove other _krb5_key_data 2011-03-12 13:53:24 -08:00
Love Hornquist Astrand 1bb482e168 prefix internal structures with _krb5_ 2011-03-12 13:50:39 -08:00
Love Hornquist Astrand 03806492d9 prefix symbols that are _krb5_ structures 2011-03-12 13:45:09 -08:00
Love Hornquist Astrand 679c708f5f use krb5_err() instead of krb5_get_err_text() 2011-03-12 13:35:21 -08:00
Love Hornquist Astrand 177122d8b9 use krb5_get_error_message for logging 2011-03-12 13:23:07 -08:00
Love Hornquist Astrand c05773d443 drop gss_name_any since it removed from the draft 2011-03-12 12:50:59 -08:00
Love Hornquist Astrand 4248882381 drop gss_name_any since it removed from the draft 2011-03-12 12:49:42 -08:00
Love Hornquist Astrand fbf5cff0ac Patch from Luke Howard to allow dynamic gss_mo 2011-03-12 12:45:53 -08:00
Luke Howard 2b2ab30f53 Add naming extension SPIs
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-03-12 12:35:43 -08:00
Luke Howard 6ffdb884e8 Add naming extension SPIs
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-03-12 12:30:41 -08:00
Love Hornquist Astrand b59a20bc1f clarify documentation 2011-03-12 11:37:13 -08:00
Love Hornquist Astrand ef045438c9 no support for semaphores w/o pthreads 2011-03-12 11:37:13 -08:00
Stefan Metzmacher a02402bb19 HEIMDAL:kdc: correctly propagate HDB_ERR_NOT_FOUND_HERE to via tgs_parse_request() and _kdc_tgs_rep()
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-03-12 11:37:13 -08:00
Love Hornquist Astrand cb2aa28c7d Include <heimbase.h> 2011-03-12 11:37:12 -08:00
Love Hornquist Astrand 642b748a88 https://github.com/heimdal/heimdal/pull/7
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-03-04 02:00:07 -08:00
Martin von Gagern 2caea73cef Make prim static to prevent its being exported.
Having that symbol exported clobbers the namespace and makes other
apps fail, most notably pdftex. I don't believe that the symbol is in
fact intended for public use. Fixes http://bugs.gentoo.org/357235 .
2011-03-03 18:27:54 +01:00
Luke Howard 65ebfb5712 Merge branch 'master' of github.com:heimdal/heimdal
Conflicts:
	lib/gssapi/gssapi/gssapi.h
	lib/gssapi/mech/gss_mech_switch.c
2011-02-28 10:21:31 +11:00
Love Hornquist Astrand 1ec5eff475 bump version of libgssapi, from Eray Aslan 2011-02-26 13:10:06 -08:00
Jelmer Vernooij e380769729 kdc.h: Include hdb.h first, so kdc.h can be included standalone.
This makes it a bit easier to find libhdb in e.g. configure tests and
is consistent with the main header files for the other Heimdal
libraries, none of which has any prerequisite other headers.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-02-26 13:06:15 -08:00
Derrick Brashear c5d0acb859 Correct "not newer" etypes per RFC 4121
Section 1 of RFC 4121 describes behavior which
    applies when using "newer" etypes, then goes on in
    table form to list etypes which are not newer.
    While it specifies it is ok to use new token formats
    when both initiator and acceptor are known to handle them,
    this code makes no such verification, and encoded an
    incorrect set of etypes as "not newer". Correct the list.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-02-24 19:22:25 -08:00
Jelmer Vernooij a7b851fad0 gitignore: Ignore generated binaries.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-02-23 19:47:48 -08:00
Jelmer Vernooij 36ade8b509 hx509: Make various functions used by Samba public.
* hx509_cert_public_encrypt
* hx509_parse_private_key
* hx509_private_key_assign_rsa
* hx509_private_key_free
* hx509_private_key_private_decrypt
* hx509_private_key_init
* hx509_private_key2SPKI
* hx509_request_get_name
* hx509_request_get_SubjectPublicKeyInfo
* hx509_request_free
* hx509_request_init
* hx509_request_set_name
* hx509_request_set_SubjectPublicKeyInfo

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-02-23 19:47:28 -08:00
Andrew Bartlett 6ee82593ec heimdal Pass F_CANON down to the hdb layer for servers in AS-REP as well
This fixes Win2003 domain logons against Samba4, which need a
canonicalised reply, and helpfully do set that flag.

Specifically, they need that realm in krbtgt/realm@realm that these
both match exactly in the reply.

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Thu Feb 17 06:40:53 CET 2011 on sn-devel-104

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-02-23 19:46:21 -08:00
Love Hornquist Astrand 1f59fe0edf move up internal framework to avoid using already installed frameworks 2011-02-12 09:49:35 -08:00
Love Hornquist Astrand 8704b871ff add enc-pa-rep(15) to ticket flags 2011-02-06 16:35:36 -08:00
Love Hornquist Astrand 2fb63b37e7 add KRB5_KU_AS_REQ 2011-02-06 16:35:10 -08:00
Love Hornquist Astrand fb29123dfd add KRB5-PADATA-REQ-ENC-PA-REP 2011-02-06 16:28:48 -08:00
Love Hornquist Astrand 9c7c6eadd3 add Jaideep Padhye and sort 2011-02-02 21:38:02 -08:00
Love Hornquist Astrand 7e1ba19fda setup cfx context, found by Jaideep Padhye 2011-02-02 21:37:26 -08:00
Love Hornquist Astrand b746f1ce34 add _kdc_db_fetch and _kdc_free_ent for digest-service 2011-01-30 12:12:30 -08:00
Andrew Tridgell 9e1d467534 s4-heimdal: implement KERB_AP_ERR_TYPE_SKEW_RECOVERY
this e_data field in a kerberos error packet tells windows to do clock
skew recovery.

See [MS-KILE] 2.2.1 KERB-ERROR-DATA

Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-01-30 11:26:31 -08:00
Matthieu Patou 8ce821c387 heimdal: make some private key manipulation function public
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-01-26 12:03:50 -08:00
Matthieu Patou 4c507594d3 heimdal: make hx509_cert_public_encrypt public
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-01-26 12:03:35 -08:00
Andrew Bartlett 995d305f8c lib/com_err only use error_message for the exported libcom_err
This avoids using the same function name in compile_et internally

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-01-26 12:00:32 -08:00
Jelmer Vernooij 5ff461d0af kcc: Add explicitly link against LIB_readline.
Fixes linking when using binutils-gold (used by e.g. Ubuntu natty).

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-01-25 17:52:53 -08:00
Love Hornquist Astrand 4be5db6a32 define GSS_IOV_BUFFER_FLAG_ALLOCATE and friends 2011-01-18 16:49:03 +01:00
Love Hornquist Astrand 49ca1a40fa export hx509_find_private_alg 2011-01-12 17:49:12 +01:00
Matthieu Patou d083ae19af export hx509_private_key_ops
export hx509_private_key_ops

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-01-12 17:45:17 +01:00
Luke Howard 4304e719a6 Add SPI for dynamically loading mechanism object information 2011-01-09 22:16:18 +11:00
Luke Howard 45cd381f53 Cleanup API-as-SPI compatibility layer 2011-01-09 22:05:27 +11:00
Luke Howard f52d919a50 Fix incorrect argument order 2011-01-09 21:24:07 +11:00
Luke Howard 728fd7cad2 Merge branch 'master' of github.com:heimdal/heimdal 2011-01-05 15:49:15 +11:00
Luke Howard 21c5987018 Rename GSS_IOV_BUFFER_TYPE_FLAG to GSS_IOV_BUFFER_FLAG
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-01-03 13:22:57 +01:00
Luke Howard 0b4f6bbfc2 Use RTLD_GROUP
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-01-03 13:21:47 +01:00
Luke Howard 5b47a8816d MIT SASL/attribute introspection SPI compat 2011-01-03 22:51:51 +11:00
Luke Howard 95cabf578c Rename GSS_IOV_BUFFER_TYPE_FLAG to GSS_IOV_BUFFER_FLAG 2011-01-03 22:13:20 +11:00
Love Hornquist Astrand 9427bcc22e log more version numbers 2011-01-03 12:12:18 +01:00
Jelmer Vernooij 1ad64fe599 hdb.h: Include krb5.h first, so hdb.h can be included standalone.
This makes it a bit easier to find libhdb in e.g. configure tests and
is consistent with the main header files for the other Heimdal
libraries, none of which has any prerequisite other headers.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2011-01-03 11:51:09 +01:00
Luke Howard cace66a435 Add naming extension SPIs 2011-01-03 14:45:07 +11:00
Luke Howard 77121ec58c Use RTLD_GROUP 2011-01-03 14:05:47 +11:00
Luke Howard 098148ac20 MIT SPI compat 2011-01-02 20:30:57 +11:00
Jelmer Vernooij 1bc55fab42 Explicitly link against required libraries.
This breaks on some newer systems which enable --as-needed by default.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-12-19 22:50:00 -08:00
Jelmer Vernooij 0c7e233195 base: Make heim_cmp global, as it is used by test_base.
"make checK" breaks without this symbol.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-12-19 22:49:41 -08:00
Love Hornquist Astrand fbf5673e77 add Donald Norwood, our wiki master 2010-12-19 22:46:43 -08:00
Love Hornquist Astrand b2bca91672 no more tagged strings 2010-12-12 12:47:43 -08:00
Love Hornquist Astrand 25a79a1ba8 remove tag string 2010-12-12 12:29:09 -08:00
Love Hornquist Astrand 73769bf777 always define HEIM_SLIST 2010-12-12 11:47:45 -08:00
Love Hornquist Astrand 3c241aef9e don't undefined SLIST 2010-12-12 11:45:53 -08:00
Love Hornquist Astrand 7c7dd8e1af prefix SLIST with HEIM 2010-12-12 11:45:35 -08:00
Jeffrey Altman 7b1e954ad4 Reorder DES algs to work around MIT pre-1.8 GSS
Pre-1.8 MIT GSS accept_sec_context() has a bug which treats
des-cbc-md4 as if the received token format should be CFX.
The previous DES alg ordering resulted in MIT KDCs issuing
des-cbc-md4 session keys for service tickets which triggered
this bug.  Reorder the list so md4 is not preferred.

Change-Id: I11269498a6eb8494044c618db29c43f62b0ced49
2010-12-07 00:28:13 -05:00
Asanka C. Herath b45dd13c44 Expand path tokens for krb5.moduli 2010-12-03 17:42:42 -05:00
Asanka C. Herath e4d2d78a21 Condition roken's ssize_t definition for compatibility
If SSIZE_T_DEFINED macro is defined, assume we already have ssize_t.
2010-12-03 01:12:32 -05:00
Asanka C. Herath e0e746b1ca Revert use of backslash as an escape for double quote in config strings 2010-12-03 01:12:31 -05:00
Asanka C. Herath dd6d5a0e2c Windows: Build multiplatform installer
When building the x64 installer, we can optionally include 32-bit
components as well.  This requires that the 32-bit build to be already
completed.  The resulting multiplatform installer will install
both sets of components.

This is enabled by the environment variable MULTIPLATFORM_INSTALLER.
2010-12-03 01:12:30 -05:00
Asanka C. Herath 3f6b4c9fdd Windows: Include shim from thirdparty/MKShim directory 2010-12-02 13:19:21 -05:00
Asanka C. Herath 7ba01bda98 Deal with possibly non-const initializers 2010-12-02 01:18:03 -05:00
Asanka C. Herath 94aa4de1b9 Windows: Don't treat drive letters as keytab types 2010-12-02 01:18:03 -05:00
Asanka C. Herath 3e8172f9e3 Initialize allocated memory in any_resolve()
Otherwise we might attempt to free an uninitialized pointer.
2010-12-02 01:18:02 -05:00
Asanka C. Herath 361ae3b03d Windows: Annotate data GSSAPI exports 2010-12-02 01:18:01 -05:00
Asanka C. Herath 7b8f4a58d6 Windows: Build GSSAPI tests 2010-12-02 01:17:37 -05:00
Asanka C. Herath acc27fd2bd Include <roken.h> before <gssapi.h> 2010-12-01 17:54:29 -05:00
Asanka C. Herath 83745ddc40 Return NUL terminated strings from _gss_mg_get_error() 2010-12-01 17:53:10 -05:00
Asanka C. Herath c3130fdd75 Windows: Version 1.4.9921.1201 2010-12-01 05:10:30 -05:00
Asanka C. Herath a664e81217 Windows: Fix typo in installer 2010-11-30 12:41:37 -05:00
Asanka C. Herath 523dcaf08e Windows: 64-bit installer should also include 32-bit assemblies 2010-11-29 20:44:49 -05:00
Asanka C. Herath 4a6a5d59a5 Windows: Build policy assembly as a merge module 2010-11-29 18:21:56 -05:00
Love Hornquist Astrand 42f9c644cf Also try key usage 8 for tgs-rep subkey
If the is Windows 2000 DC, we need to retry with key usage 8 when doing ARCFOUR.

Thanks to Andrew and Tridge that helped me debug this using their systems.
2010-11-29 11:19:24 -08:00
Asanka C. Herath d4f1d0e900 Canonicalize the program name if necessary in setprogname() 2010-11-29 13:32:24 -05:00
Love Hornquist Astrand 2038d6f56e don't whine when principal is not found in cache, also, use krb5_cc function to make it not hit the network 2010-11-29 09:31:07 -08:00
Love Hornquist Astrand 987faedb80 add random abstraction 2010-11-29 09:31:07 -08:00
Love Hornquist Astrand bad0e733c5 less exit with failures 2010-11-29 09:31:07 -08:00
Love Hornquist Astrand a2b45360c2 add random_init 2010-11-29 09:31:07 -08:00
Asanka C. Herath b755dc12f4 Windows: Fix hcrypto tests on cygwin 2010-11-29 10:53:50 -05:00
Asanka C. Herath 6d662f71d7 Windows: Fix export lists 2010-11-29 10:53:49 -05:00
Asanka C. Herath e3559160b7 Include roken.h before gssapi.h 2010-11-29 10:41:47 -05:00
Asanka C. Herath 87801aca51 Windows: Build gsstool 2010-11-29 10:41:46 -05:00
Asanka C. Herath 0e0fba8866 Windows: Detect VC version instead of hardcoding it 2010-11-29 10:41:44 -05:00
Asanka C. Herath 6fe4372d17 Windows: Install kcc 2010-11-29 10:41:44 -05:00
Asanka C. Herath 8e7f787053 Windows: Dependencies for kcc 2010-11-29 10:36:59 -05:00
Love Hornquist Astrand 290aed8056 add missing ; 2010-11-28 19:49:27 -08:00
Andrew Bartlett b819f1fe2b Push PKINIT configuration into default_config.c
The interaction with Samba4 is subtle - it calls
krb5_kdc_get_config(), but not configure() - but must have PKINIT set
up.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-28 19:45:18 -08:00
Andrew Bartlett 64a326d33b heimdal Fetch the client before the PAC check, but after obtaining krbtgt_out
By checking the client principal here, we compare the realm based on
the normalised realm, but do so early enough to validate the PAC (and
regenerate it if required).

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-28 19:44:49 -08:00
Andrew Bartlett 2542e40fed heimdal Fix handling of backwards cross-realm detection for Samba4
Samba4 may modify the case of the realm in a returned entry, but will no longer modify the case of the prinicipal components.

The easy way to keep this test passing is to consider also what we
need to do to get the krbtgt account for the PAC signing - and to use
krbtgt/<this>/@REALM component to fetch the real krbtgt, and to use
that resutl for realm comparion.

Andrew Bartlett

Autobuild-User: Andrew Bartlett <abartlet@samba.org>
Autobuild-Date: Mon Nov 15 08:47:44 UTC 2010 on sn-devel-104

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-28 19:41:13 -08:00
Andrew Bartlett 10f9468f9d heimdal Return HDB_ERR_NOT_FOUND_HERE to the caller
This means that no reply packet should be generated, but that instead
the user of the libkdc API should forward the packet to a real KDC,
that has a full database.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-28 19:40:07 -08:00
Love Hornquist Astrand edb2464ab9 NETLOGON mechanism, for use in DCE-RPC 2010-11-28 19:35:40 -08:00
Love Hornquist Astrand 0a10f35897 drop unused functions 2010-11-28 11:50:42 -08:00
Love Hornquist Astrand 6c6726d76c drop hdb_fetch 2010-11-28 11:46:46 -08:00
Love Hornquist Astrand 965836509b switch to hdb_fetch_kvno 2010-11-28 11:43:02 -08:00
Love Hornquist Astrand 4cdd645ff4 add backends implement hdb_fetch_kvno, use it 2010-11-28 11:35:41 -08:00
Love Hornquist Astrand 917920e8cd implement fetch_kvno 2010-11-28 11:34:33 -08:00
Love Hornquist Astrand 38d0a72326 implement fetch_kvno 2010-11-28 11:33:24 -08:00
Love Hornquist Astrand daa3d4753d implement fetch_kvno 2010-11-28 11:31:15 -08:00
Love Hornquist Astrand ee8c2e45b4 use _hdb_fetch_kvno 2010-11-28 11:20:31 -08:00
Love Hornquist Astrand c44315b6d9 add _hdb_fetch_kvno 2010-11-28 11:19:43 -08:00
Love Hornquist Astrand 617c51a150 kvno is krb5_kvno not unsigned 2010-11-28 11:19:22 -08:00
Love Hornquist Astrand 8ece8672ae kvno is krb5_kvno not unsigned 2010-11-28 11:19:15 -08:00
Love Hornquist Astrand 2ec1c3fbec use int32_t for krb5_kvno 2010-11-28 11:18:55 -08:00
Love Hornquist Astrand d91e772a0e adopt syntax 2010-11-28 10:46:26 -08:00
Andrew Bartlett f469fc6d49 heimdal Add support for extracting a particular KVNO from the database
This should allow master key rollover.

(but the real reason is to allow multiple krbtgt accounts, as used by
Active Directory to implement RODC support)

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-28 09:52:54 -08:00
Andrew Bartlett e189d712ce Don't dereference NULL in error verify_checksum error path
Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-28 09:46:43 -08:00
Love Hornquist Astrand d69fcab43f use vsnprintf so that we dont need roken 2010-11-27 23:21:39 -08:00
Love Hornquist Astrand d36ee8f0b6 add readline alternative 2010-11-27 19:51:26 -08:00
Love Hornquist Astrand 4cd0b0bd4d add rule for copy_cred_cache.obj 2010-11-27 19:45:20 -08:00
Love Hornquist Astrand 1713166806 use varible for kcc objects, add libsl and copy_cred_cache 2010-11-27 19:36:54 -08:00
Love Hornquist Astrand 88491eb210 uppercase variables names 2010-11-27 19:30:52 -08:00
Love Hornquist Astrand e9f26f08f2 add more symbols 2010-11-27 19:27:19 -08:00
Love Hornquist Astrand b26ed1a415 add gss_mo 2010-11-27 19:25:49 -08:00
Love Hornquist Astrand c45a17e4e8 these are generated files 2010-11-27 19:24:35 -08:00
Love Hornquist Astrand 8b77068ab3 include "mech_locl.h" 2010-11-27 19:23:48 -08:00
Love Hornquist Astrand d0e012e859 include #include "mech_locl.h" 2010-11-27 19:21:30 -08:00
Love Hornquist Astrand 97c22d9add sprinkle GSSAPI_LIB_VARIABLE 2010-11-27 19:16:44 -08:00
Love Hornquist Astrand 99e1c33987 sprinkle GSSAPI_CALLCONV, add missing space in */* 2010-11-27 19:11:09 -08:00
Love Hornquist Astrand b56632b817 Include gssapi\gssapi_oid.h and mech/gss_oid.{c,obj} 2010-11-27 19:03:01 -08:00
Love Hornquist Astrand 5471d166e5 include gssapi\gssapi_oid.h 2010-11-27 19:02:21 -08:00
Love Hornquist Astrand a2345c5159 remove debug printing 2010-11-27 18:59:17 -08:00
Love Hornquist Astrand 7ae0574ac4 use _P in globrules ? 2010-11-27 18:56:46 -08:00
Love Hornquist Astrand 7a7676e8e7 more include path ? 2010-11-27 18:52:47 -08:00
Love Hornquist Astrand 79473c415c define ROKEN_RENAME and use snprintf 2010-11-27 18:48:15 -08:00
Love Hornquist Astrand 66cf237c71 use roken rename to pull in snprintf 2010-11-27 18:41:00 -08:00
Love Hornquist Astrand beedb73f80 print roken.h so we ca see what's happening 2010-11-27 18:21:16 -08:00
Love Hornquist Astrand 1be05e6568 support KRB5_KDB_SALTTYPE_CERTHASH 2010-11-27 13:27:35 -08:00
Love Hornquist Astrand db7f598466 return size is a int, don't pretend. 2010-11-27 12:37:49 -08:00
Love Hornquist Astrand d9d68e88d3 add oids that was missing 2010-11-27 11:12:08 -08:00
Love Hornquist Astrand e307a6f350 init max_life and max_rlife 2010-11-27 11:04:55 -08:00
Love Hornquist Astrand b108cbe218 spelling 2010-11-26 15:01:56 -08:00
Love Hornquist Astrand 3debbe8ef5 clean out gssapi_oid.h 2010-11-26 14:28:09 -08:00
Love Hornquist Astrand 95b601af10 clean out cache_plugin.h 2010-11-26 14:27:51 -08:00
Love Hornquist Astrand 24d628edf3 make test_config work again 2010-11-26 12:28:45 -08:00
Love Hornquist Astrand 1c400805f6 use %option nounput 2010-11-26 12:08:21 -08:00
Love Hornquist Astrand f13335985f try %option nounput and see if we can remove a warning 2010-11-26 12:01:14 -08:00
Love Hornquist Astrand b50919b853 Include <ucred.h> if we have getpeerucred() 2010-11-26 11:37:17 -08:00
Love Hornquist Astrand 0d9e385c7e remove prefix for librfc3961.la sources 2010-11-26 11:25:13 -08:00
Love Hornquist Astrand 48f7872ab0 add <heimqueue.h> 2010-11-26 10:54:18 -08:00
Love Hornquist Astrand 9fba958c90 remove kadb leftovers 2010-11-26 10:31:37 -08:00
Love Hornquist Astrand 104033874d provide symbol renameing for sha512 and sha384 2010-11-26 10:05:58 -08:00
Love Hornquist Astrand 60a7783024 export more 2010-11-26 09:15:23 -08:00
Love Hornquist Astrand 23f5f03c7e drop v4 2010-11-26 09:03:36 -08:00
Love Hornquist Astrand dc992b1525 define _heim_base_mutex if needed 2010-11-26 08:58:18 -08:00
Love Hornquist Astrand ba29d58a4a use inline function since macros is horrible with returning values in statements 2010-11-26 08:57:54 -08:00
Love Hornquist Astrand 350f9fcadf switch to int 2010-11-26 08:46:10 -08:00
Love Hornquist Astrand cdf3621935 sleep a short time with select() 2010-11-26 08:40:07 -08:00
Love Hornquist Astrand 5991c4fc8c add gss_{name,oid} conversion functions 2010-11-26 08:37:47 -08:00
Love Hornquist Astrand 2e80dabd16 add gss_mo_* 2010-11-26 08:37:17 -08:00
Love Hornquist Astrand d903bbe254 condition on HAVE___SYNC_ADD_AND_FETCH 2010-11-26 08:35:39 -08:00
Love Hornquist Astrand e252375ba6 check for __sync_add_and_fetch 2010-11-26 08:35:05 -08:00
Love Hornquist Astrand 4c56762762 doxygen 2010-11-26 08:16:46 -08:00
Love Hornquist Astrand c49213259c rfc 5587 2010-11-26 00:13:40 -08:00
Love Hornquist Astrand 37abbc7d77 test attrs-for-mech 2010-11-26 00:10:26 -08:00
Love Hornquist Astrand 2b1bc08d24 setup env_setup 2010-11-26 00:10:17 -08:00
Love Hornquist Astrand 5f342b59b8 add gsstool 2010-11-26 00:09:48 -08:00
Love Hornquist Astrand 5dcf0753f4 fill in all mo that make sense for now 2010-11-25 23:52:43 -08:00
Love Hornquist Astrand 7c4aa02de8 regen 2010-11-25 22:19:11 -08:00
Love Hornquist Astrand 78b242f321 use short_desc for mech name 2010-11-25 22:19:01 -08:00
Love Hornquist Astrand 6eb0b802e9 handle printing mech attributes 2010-11-25 22:18:26 -08:00
Love Hornquist Astrand c2895cc645 set der encoding of oids right 2010-11-25 22:11:31 -08:00
Love Hornquist Astrand 9be125f05b return sucess at end 2010-11-25 21:51:51 -08:00
Love Hornquist Astrand 6ca842c5b7 gss_indicate_mechs_by_attrs 2010-11-25 21:40:25 -08:00
Love Hornquist Astrand 29603ecb16 add attrs-for-mech 2010-11-25 21:39:16 -08:00
Love Hornquist Astrand af77c117d9 attrs_for_mech 2010-11-25 21:38:58 -08:00
Asanka C. Herath f974c34580 Deal with backslash escaped quotes 2010-11-26 00:35:31 -05:00
Asanka C. Herath d58d572e60 Windows: Add missing extension 2010-11-26 00:34:59 -05:00
Asanka C. Herath d9ee9cc3b6 Tests for string escaping in config files 2010-11-26 00:34:40 -05:00
Love Hornquist Astrand 6ab92598d0 rename gss to gsstool 2010-11-25 21:34:26 -08:00
Asanka C. Herath e851b85700 Windows: Fix export for krb5_enomem 2010-11-25 23:51:43 -05:00
Asanka C. Herath e412b8c511 Don't override build environment with header files in roken 2010-11-25 23:51:42 -05:00
Love Hornquist Astrand 340f56ddcd mo_name uess gss-mo-get 2010-11-25 20:46:14 -08:00
Love Hornquist Astrand a7c11ee05e add _gss_mo_get_ctx_as_value 2010-11-25 20:45:52 -08:00
Love Hornquist Astrand c1069f8a36 add _gss_oid_name_table 2010-11-25 20:20:03 -08:00
Love Hornquist Astrand c33e98ff26 implement gss_display_mech_attr 2010-11-25 20:19:30 -08:00
Love Hornquist Astrand ab9267c04e constify 2010-11-25 19:20:26 -08:00
Love Hornquist Astrand 11e7ed41fc export more 2010-11-25 19:20:06 -08:00
Love Hornquist Astrand 6ecf6677b0 fix element name 2010-11-25 19:06:39 -08:00
Love Hornquist Astrand 44c7a9a2c4 handle NULL ptr 2010-11-25 18:42:50 -08:00
Love Hornquist Astrand 10554e3754 additional comments 2010-11-25 18:38:37 -08:00
Love Hornquist Astrand bdc9112651 add missing symbols 2010-11-25 18:36:55 -08:00
Love Hornquist Astrand dbeeb18a53 generate oids using table 2010-11-25 18:32:33 -08:00
Love Hornquist Astrand 616e59bf6d implement gss_inquire_attrs_for_mech 2010-11-25 16:27:17 -08:00
Love Hornquist Astrand ca1b7bfcc3 initial drop of gss-mo 2010-11-25 11:48:02 -08:00
Love Hornquist Astrand 4055185eaf move copy_cred_cache into kcc 2010-11-25 11:34:03 -08:00
Love Hornquist Astrand 2bffe97647 better error messages 2010-11-25 11:21:41 -08:00
Love Hornquist Astrand c6d0dea6be remove dup prototype, fix the ok_as_delegate protocol 2010-11-25 11:21:05 -08:00
Love Hornquist Astrand 9f244d27cc use krb5_warn 2010-11-25 10:51:30 -08:00
Love Hornquist Astrand 0690211131 use public version of krb5_enomem 2010-11-25 10:48:33 -08:00
Love Hornquist Astrand b294b673a2 deprecate 524 functions 2010-11-25 10:47:35 -08:00
Love Hornquist Astrand 88d0a76209 wrap older mach code with __MAC_OS_X_VERSION_MIN_REQUIRED 2010-11-25 10:29:32 -08:00
Love Hornquist Astrand 6d7b1fcf7a start to build kcc for windows 2010-11-25 10:15:49 -08:00
Love Hornquist Astrand 55e96fabf2 switch kswitch to kcc 2010-11-25 09:29:29 -08:00
Love Hornquist Astrand e186ea15b1 use kcc for klist 2010-11-24 19:43:40 -08:00
Love Hornquist Astrand 92a827da9b move klist to kcc 2010-11-24 16:21:44 -08:00
Love Hornquist Astrand 99bc078d46 better support for name in options 2010-11-24 16:21:26 -08:00
Love Hornquist Astrand 388341e149 kgetcred/kvno compat example 2010-11-24 15:24:26 -08:00
Love Hornquist Astrand 60904f676e -c is a string argument 2010-11-24 15:15:16 -08:00
Love Hornquist Astrand c5dcbc41d9 first drop of kcc 2010-11-24 15:12:56 -08:00
Love Hornquist Astrand 3b1b7e41b0 use krb5_set_error_message and krb5_enomem 2010-11-24 14:36:35 -08:00
Love Hornquist Astrand ea2534a55f export krb5_enomem 2010-11-24 14:35:56 -08:00
Asanka C. Herath 81e3cbee05 If we don't have vasprintf() get it from roken 2010-11-24 15:33:36 -05:00
Asanka C. Herath 5a8e7fcd0d Windows: Add LIBHEIMBASE and LIBRFC3961 macros 2010-11-24 15:33:36 -05:00
Asanka C. Herath d4379e27de Windows: Interlocked ops work on LONGs
Therefore change the type of the TLS slot id to LONG.
2010-11-24 15:33:35 -05:00
Asanka C. Herath bd6e3ff7c9 Provide a stdbool.h in roken 2010-11-24 15:33:34 -05:00
Asanka C. Herath 827058a8ff Use min/max instead of MIN/MAX 2010-11-24 15:33:33 -05:00
Asanka C. Herath 0a123a5945 Avoid using potentially uninitialized variable 2010-11-24 15:33:32 -05:00
Asanka C. Herath 5e5a87555b Windows: Catch up with libheimntlm changes 2010-11-24 15:33:32 -05:00
Asanka C. Herath aa9be97d0d Windows: Always initialize buffers in config_reg 2010-11-24 15:33:31 -05:00
Asanka C. Herath 6e4e28c7bb Windows: Catch up with libkrb5 changes 2010-11-24 15:33:30 -05:00
Asanka C. Herath dcc590465f Windows: Include libheimbase in heimdal.dll 2010-11-24 15:33:30 -05:00
Asanka C. Herath 0e06388749 Windows: Fix build of libeditline 2010-11-24 15:33:29 -05:00
Asanka C. Herath e84b73370c Avoid conflicting malloc/free declarations in Bison 2010-11-24 15:33:28 -05:00
Asanka C. Herath 6bf16f5250 Windows: Use --one-code-file when building ASN1 2010-11-24 15:33:27 -05:00
Asanka C. Herath 58e65d4374 Windows: kswitch depends on libeditline 2010-11-24 15:33:27 -05:00
Asanka C. Herath 7df6a8758b Windows: Adjust for missing export 2010-11-24 15:33:26 -05:00
Asanka C. Herath 0d93ecd4e3 Windows: Don't build kaserver 2010-11-24 15:33:25 -05:00
Asanka C. Herath 370e245ffc Windows: Only export through .def files
While we use __declspec(dllimport) to import from DLLs, we don't
use __declspec(dllexport) to export them.
2010-11-24 15:33:25 -05:00
Asanka C. Herath cd111296ff Add Windows atomics to baselocl 2010-11-24 15:33:24 -05:00
Asanka C. Herath c9b2e5b7ae Include unistd only if its there 2010-11-24 15:33:23 -05:00
Asanka C. Herath bc47fcd052 Windows: Build system changes to catch up with mainline
roken is now built in the root NTMakefile and auth no longer
exists.
2010-11-24 15:33:22 -05:00
Asanka C. Herath a25aa15ae8 Windows: Build heimbase 2010-11-24 15:33:22 -05:00
Asanka C. Herath 4eb1a9faa6 Windows: Make plugin\krb5 an official build target directory 2010-11-24 15:33:21 -05:00
Asanka C. Herath 20e2e17a85 Windows: Remove remnants of older KfW shim
This code is now obsolete.
2010-11-24 15:33:20 -05:00
Asanka C. Herath 0ae44152b7 Windows: Set error mode before calling LoadLibrary()
Unless SEM_FAILCRITICALERRORS is set, Windows may pop-up a dialog box
if the specified module cannot be loaded.  This is not appropriate for
unattended or batch processes.
2010-11-24 15:33:20 -05:00
Asanka C. Herath 5b91a397f8 Increase KBR5_BUFSIZ to 2048 and use it in config_file.c 2010-11-24 15:33:19 -05:00
Asanka C. Herath aaeef50199 Windows: Optionally disable building compiled HTML documentation 2010-11-24 15:33:18 -05:00
Asanka C. Herath 29383b4cd0 Windows: Merge in application manifest when building assemblies 2010-11-24 15:33:17 -05:00
Asanka C. Herath 402afa0e0d Windows: Version 1.4.9916.1119 2010-11-24 15:33:17 -05:00
Asanka C. Herath e67cbf3bf9 Windows: Ignore C4146 warning 2010-11-24 15:33:16 -05:00
Asanka C. Herath 604b554b23 Windows: Older manifest tools require the hashalg parameter 2010-11-24 15:33:15 -05:00
Asanka C. Herath 538c7ce29c More compatibility macros
Undefine SLIST_ENTRY to avoid conflict with WinNT.h

Define AI_NUMERICSERV for platforms that don't define it.
2010-11-24 15:33:15 -05:00
Asanka C. Herath 35ac353f73 Add forward declaration of get_cred_kdc_capth() 2010-11-24 15:33:14 -05:00
Asanka C. Herath 158b107005 Remove unused variable 2010-11-24 15:33:13 -05:00
Asanka C. Herath ca114a3323 Change function pointer types to match their use 2010-11-24 15:33:12 -05:00
Asanka C. Herath 76cc0a9a67 Windows: Formatting 2010-11-24 15:33:12 -05:00
Asanka C. Herath ff404ecaae Windows: Support older compilers that don't do parallel builds 2010-11-24 15:33:11 -05:00
Asanka C. Herath 82a200bfa2 Windows: Installers are optional 2010-11-24 15:33:10 -05:00
Asanka C. Herath 2f8031c1d1 Cast dlsym() returns before use 2010-11-24 15:33:10 -05:00
Asanka C. Herath 42cf8947aa Windows: Avoid importing locally defined ASN1 symbols 2010-11-24 15:33:09 -05:00
Asanka C. Herath 79454a6f62 Block conflicting declarations from Bison
If YYMALLOC and YYFREE aren't defined, Bison can generate
prototypes for them that conflict with the native declarations.
2010-11-24 15:33:08 -05:00
Asanka C. Herath 59542f4298 Unreachable code to silence older compilers 2010-11-24 15:33:07 -05:00
Asanka C. Herath 880d728e02 Un-const as necessary to silence compiler warnings 2010-11-24 15:33:07 -05:00
Asanka C. Herath d11917211b Windows: Older Windows SDKs need <winsock2.h>
Older SDKs need <winsock2.h> to be included before <ws2tcpip.h>
2010-11-24 15:33:06 -05:00
Asanka C. Herath d267f208ae Windows: Fix argument matching for perl scripts 2010-11-24 15:33:05 -05:00
Asanka C. Herath b704105586 Windows version 1.4.9915.1118 2010-11-24 15:33:04 -05:00
Asanka C. Herath afaa6b03d3 Fix query flag assignment for kcpytkt 2010-11-24 15:33:04 -05:00
Asanka C. Herath a07036a11c Windows: Build and install kdeltkt 2010-11-24 15:33:03 -05:00
Asanka C. Herath 7eac4fd821 Windows: Build and install kcpytkt 2010-11-24 15:33:02 -05:00
Asanka C. Herath a82a93cef8 Windows: Build and install kvno 2010-11-24 15:33:01 -05:00
Asanka C. Herath 502360ef2d Mention kpasswrd_server setting for krb5.conf 2010-11-24 15:33:01 -05:00
Asanka C. Herath cb712170ff Windows: Build and install kpasswd 2010-11-24 15:33:00 -05:00
Asanka C. Herath 8432f850ed Windows: Make Heimdal a single assembly 2010-11-24 15:32:59 -05:00
Asanka C. Herath a4136a53af Windows: Set system PATH and not just the user PATH 2010-11-24 15:32:58 -05:00
Asanka C. Herath 9f589500dc Windows: Modifications to generate generic .def files from DLLs 2010-11-24 15:32:58 -05:00
Asanka C. Herath 3564ec0ebb Windows: Fix typos in makefiles 2010-11-24 15:32:57 -05:00
Asanka C. Herath 809eccb682 Windows: Add an API for reading a multistring from registry
The _krb5_parse_reg_value_as_string() used to concatenate
multi-strings using a space to be compatible with
krb5_config_get_strings() and friends.  Add a new function that can
read a multi-string with an arbitrary delimiter character
_krb5_parse_reg_value_as_multi_string().
2010-11-24 15:32:56 -05:00
Asanka C. Herath d3582b56c6 Define and use a path separator string
A colon can't be used to separate paths on Windows since they are used
in drive sepecification.  Define a macro that can be used as a path
separator string.  On Windows, this is defined as ";".  It is a ":"
everywhere else.
2010-11-24 15:32:56 -05:00
Asanka C. Herath 0ea880bdeb Windows: Add Heimdal to the global PATH 2010-11-24 15:32:55 -05:00
Asanka C. Herath ce056c4a40 Windows: Place gkrb5_err.h in Heimdal directory in SDK 2010-11-24 15:32:54 -05:00
Asanka C. Herath c0d56cf47e Windows: Use new configuration key for setting plugin directory 2010-11-24 15:32:54 -05:00
Asanka C. Herath 5e7d970774 Windows: Optionally include Kerberos shim library into installer 2010-11-24 15:32:53 -05:00
Asanka C. Herath 80211ca0c8 Windows: Add application manifest file to SDK 2010-11-24 15:32:52 -05:00
Asanka C. Herath 1e365190d0 Windows: Manage thread local storage manually in dlfcn_w32 2010-11-24 15:32:51 -05:00
Asanka C. Herath 117b0b487a Windows: Add missing files to SDK 2010-11-24 15:32:51 -05:00
Asanka C. Herath 8b21737eaf Windows: SED is a required build tool 2010-11-24 15:32:50 -05:00
Asanka C. Herath e4a2e9cfe0 Windows: Build and export localtime_r 2010-11-24 15:32:49 -05:00
Asanka C. Herath 0f853405fe Add missing export and calling convention annotations 2010-11-24 15:32:49 -05:00
Asanka C. Herath 9f37626a33 Windows: Proper cleanup on failure 2010-11-24 15:32:48 -05:00
Asanka C. Herath 9d7227d1c1 Windows: Fix missing exports 2010-11-24 15:32:47 -05:00
Asanka C. Herath f50b9727b2 Windows: Copy GSSAPI header files into the SDK 2010-11-24 15:32:46 -05:00
Asanka C. Herath f51ded7f34 Export annotations for com_right.h 2010-11-24 15:32:46 -05:00
Asanka C. Herath 70c3a1c209 Move export macros from com_err.h to com_right.h 2010-11-24 15:32:45 -05:00
Asanka C. Herath 9bb59e45c6 Deal with backslash delimited paths in make-proto.pl 2010-11-24 15:32:44 -05:00
Asanka C. Herath fe3e119691 Windows: Use SOFTWARE\Kerberos for storing configuration 2010-11-24 15:32:44 -05:00
Asanka C. Herath d230cb454d Windows: Installer support for legacy configuration files 2010-11-24 15:32:43 -05:00
Asanka C. Herath c0b62e3204 Windows: Configuration file locations can be set in the registry 2010-11-24 15:32:42 -05:00
Asanka C. Herath dd74713e22 Windows: _krb5_load_config_from_registry() is an internal API 2010-11-24 15:32:41 -05:00
Asanka C. Herath 7569337e9f Windows: Move cache specific code out of mit_glue.c
Move code for checking backwards compatible configuration file location into cache.c.  Also use registry handling code from config_reg.c.
2010-11-24 15:32:41 -05:00
Asanka C. Herath f190a65aed Windows: Refactor and fix config_reg.c
We want to be able to reuse registry handling code here from elsewhere.
2010-11-24 15:32:40 -05:00
Asanka C. Herath 25e3b0d70e Windows: Fix cleanup of GSSAPI policy assembly 2010-11-24 15:32:39 -05:00
Asanka C. Herath 1a8f116095 Windows: Version 1.4.9906.1028 2010-11-24 15:32:39 -05:00
Asanka C. Herath 28b4681ef3 Windows: Build instructions 2010-11-24 15:32:38 -05:00
Asanka C. Herath ac1f8fe153 Windows: Install configuration files in common directory
Use %PROGRAMDATA%\Kerberos as the destination directory for
configuration files instead of %PROGRAMDATA%\Heimdal.
2010-11-24 15:32:37 -05:00
Asanka C. Herath c3ecf0c372 Windows: Lookup configuration file %{WINDOWS}/krb5.ini
For backwards compatibility.
2010-11-24 15:32:36 -05:00
Asanka C. Herath 6e6468ab98 Windows: Search for config files in %{COMMON_APPDATA}/Kerberos
In addition to the Heimdal directory, also search in the
generic Kerberos configuration file directory.
2010-11-24 15:32:36 -05:00
Asanka C. Herath 2f2dca748d Don't dereference a possible NULL pointer 2010-11-24 15:32:35 -05:00
Asanka C. Herath 01f6e67778 Windows: 1.4.9903.1021 2010-11-24 15:32:34 -05:00
Asanka C. Herath 00ba841893 Windows: Use backwards compatible registry key for default cache
On Windows, existing applications determine and change the default
credentials cache using the Kerberos for Windows registry key
(\Software\MIT\Kerberos5, ccname).  Use it for backwards
compatibility.
2010-11-24 15:32:34 -05:00
Asanka C. Herath 45002e092c Use rk_socket_t in lib/krb5/changepw.c 2010-11-24 15:32:33 -05:00
Asanka C. Herath 7cef24b902 Windows: Don't install over a newer or current installation 2010-11-24 15:32:32 -05:00
Asanka C. Herath 5962c9fe25 Windows: Include compiled HTML help files in installer 2010-11-24 15:32:31 -05:00
Asanka C. Herath 3855dd33bd Windows: Catch up with hcrypto changes 2010-11-24 15:32:31 -05:00
Asanka C. Herath d98e72bc62 Windows: Build Texinfo documentation as compiled HTML 2010-11-24 15:32:30 -05:00
Asanka C. Herath 9fd109a0e1 Windows: Support for additional build tools 2010-11-24 15:32:29 -05:00
Asanka C. Herath 610bd66bbd Windows: Support building using newer flex 2010-11-24 15:32:29 -05:00
Asanka C. Herath 182e20d6f3 Add copyrights to w32 scripts 2010-11-24 15:32:28 -05:00
Asanka C. Herath 50feb0146c Windows: Pull in optional components by groups into installer
Instead of referring to each optional component, refer to them by
groups.
2010-11-24 15:32:27 -05:00
Asanka C. Herath a87b4e23d6 Windows: Implement gettimeofday() using native APIs
We now use GetSystemTimeAsFileTime() for gettimeofday().  This gives
us a better resolution than one second.
2010-11-24 15:32:26 -05:00
Asanka C. Herath d01cbc1b79 Windows: Include version and build type in installer name 2010-11-24 15:32:26 -05:00
Asanka C. Herath dd99c2054c Windows: Add missing hcrypto dependencies and exports 2010-11-24 15:32:25 -05:00
Asanka C. Herath 6ee40622b1 Embed application manifest in Heimdal assembly .dlls 2010-11-24 15:32:24 -05:00
Asanka C. Herath f4f0d20ff7 Remove assemblyIdentity from application manifest 2010-11-24 15:32:24 -05:00
Asanka C. Herath 8d36e7dfcc Support for merging application manifest 2010-11-24 15:32:23 -05:00
Asanka C. Herath ba6c36b0d7 Windows: Fix exports for libkrb5 2010-11-24 15:32:22 -05:00
Asanka C. Herath e1214f4573 Windows: Remove existing manifests before generating new ones 2010-11-24 15:32:21 -05:00
Asanka C. Herath e8dd4bfaf3 Windows: Build kadm5 tools in a separate build-step
The application manifests for Heimdal can't be built until the
libraries are built.  Since tools depend on application manifests, we
need to build them separately.
2010-11-24 15:32:21 -05:00
Asanka C. Herath 1b32efe62c Windows: Include manifest dependencies by default when building tools 2010-11-24 15:32:20 -05:00
Asanka C. Herath f1e276cc20 Windows: Include .pdb files in assembly catalogs 2010-11-24 15:32:19 -05:00
Asanka C. Herath 9773697521 Windows: Include heimntlm.dll with Heimdal.Kerberos assembly 2010-11-24 15:32:19 -05:00
Asanka C. Herath 034cb905e9 Windows: Rename libheimntlm.dll to heimntlm.dll
For consistency with other .dlls shipped as assemblies.
2010-11-24 15:32:18 -05:00
Asanka C. Herath 2020f3f0f2 Windows: Set version to 1.4.99 2010-11-24 15:32:17 -05:00
Asanka C. Herath 5104e67ac7 Windows: Make version resources customizable 2010-11-24 15:32:16 -05:00
Asanka C. Herath d320145d00 Windows: Build SDK in $(SRC)\out\sdk 2010-11-24 15:32:16 -05:00
Asanka C. Herath 0a14b10a23 Windows: Enable UI in installer 2010-11-24 15:32:15 -05:00
Asanka C. Herath 5a0c159a19 Windows: Build publisher configuration 2010-11-24 15:32:14 -05:00
Asanka C. Herath f40fe926ad Windows: Comprehensive clean target 2010-11-24 15:32:13 -05:00
Asanka C. Herath f0b9e01eac Windows: Build and stage redistributable merge module 2010-11-24 15:32:13 -05:00
Asanka C. Herath f44925e8a6 Deal with quoted strings when reading lists of config strings 2010-11-24 15:32:12 -05:00
Asanka C. Herath 03694f3505 Trim trailing slashes of plug-in paths 2010-11-24 15:32:11 -05:00
Asanka C. Herath f159cef78a Rename get_entry() -> _krb5_config_get_entry() 2010-11-24 15:32:11 -05:00
Asanka C. Herath 88252f6967 Windows: Include debug symbols in assembly 2010-11-24 15:32:10 -05:00
Asanka C. Herath 8aa7a84b7a Windows: Build installers 2010-11-24 15:32:09 -05:00
Asanka C. Herath d247242f63 Windows: Registry based configuration
Load configuration data in the registry into a krb5_config_section.
Each registry key corresponds to a krb5_config_section and each
registry value becomes a bound string value.

The set of values contained in the root Heimdal registry key is
treated as if they were defined in the [libdefaults] section.

E.g. the configuration file:

[libdefaults]
foo = bar

[Foo]
x = y
y = {
  baz = quux
}

is equivalent to the registry keys:

[HKEY_CURRENT_USER\Software\Heimdal]
"foo"="bar"

[HKEY_CURRENT_USER\Software\Heimdal\Foo]
"x"="y"

[HKEY_CURRENT_USER\Software\Heimdal\Foo\y]
"baz"="quux"
2010-11-24 15:32:08 -05:00
Asanka C. Herath 392f9541f1 Override existing plug-ins by default when loading cache plug-ins 2010-11-24 15:32:08 -05:00
Asanka C. Herath 8f7a1311e1 Windows: Construct search string from directory name
The implementation of opendir() in lib/roken/dirent.c takes as input a
directory name.  For the contents of the specified directory to be
enumerated correctly, this directory name must be converted to a
wildcard.
2010-11-24 15:32:07 -05:00
Asanka C. Herath 6abe08a0a3 Validate plug-in names before loading
On Windows, we only want to load .dll files are plug-ins, even though
there might be other support files present in the plug-in directory.
2010-11-24 15:32:06 -05:00
Asanka C. Herath 7fea5ff69a Use expanded path names when loading plug-ins 2010-11-24 15:32:05 -05:00
Love Hornquist Astrand 2d169563f1 no longer install kauth, it have been a symlink to kinit for a very long time 2010-11-24 10:10:14 -08:00
Simon Wilkinson 5b91f58f35 hcrypto: Remove getarg.h include from validate.c
None of the functions prototyped in getarg.h are used by validate.c,
so simplify out-of-tree builds by removing the header from the file.
2010-11-24 10:55:27 +00:00
Simon Wilkinson 9fc90e01b5 roken: Remove multiple prototype for hstrerror
hsterror had two prototypes, one with the Windows magic, and one
without. Remove the one without so Windows can build again.
2010-11-24 10:32:55 +00:00
Jeffrey Altman f317b91b1b roken: Prototype getopt
Add a prototype for getopt to the roken.h header, and fix the function
definition in getopt.c to be ANSI, rather than K&Rs style.
2010-11-24 09:43:04 +00:00
Asanka C. Herath 0cc7b890e2 Windows: Build getopt.c in roken 2010-11-23 02:25:34 -05:00
Asanka C. Herath e266044cc4 Declarations for getopt externs 2010-11-23 02:25:24 -05:00
Asanka C. Herath 904d779d06 Windows: Support building roken as a DLL 2010-11-23 02:25:17 -05:00
Asanka C. Herath 1f2dc24b5d Annotate exported variables in getopt.c 2010-11-23 02:24:43 -05:00
Asanka C. Herath 0ee4597aed Always include <config.h> in roken implementation
Remove unnecessary ifdefs and add <config.h> to dlfcn_w32.c.  This is
required for correct export declarations when building roken as a DLL.
2010-11-23 02:24:38 -05:00
Simon Wilkinson bbd724dad0 roken: getopt should include roken.h
In order to correctly rename the function, getopt.c needs to include
roken.h
2010-11-22 23:33:46 +00:00
Jeffrey Altman bd78baf668 Windows: Include winsock2.h before ws2tcpip.h
Before we can include ws2tcpip.h, we must have already included
winsock2.h. The latest SDK does this by including winsock2 within
the ws2tcpip header, but the older SDKs do not, and fail to build.
2010-11-22 23:09:07 +00:00
Love Hornquist Astrand c79f78874b document -i 2010-11-22 13:23:04 -08:00
Love Hornquist Astrand 9ee7dd24d9 support kswitch -i, interactive mode 2010-11-22 13:19:27 -08:00
Love Hornquist Astrand 34c3c2ab40 add Credential cache server - KCM 2010-11-22 12:13:59 -08:00
Love Hornquist Astrand 2514d45803 add basekey 2010-11-22 10:57:01 -08:00
Love Hornquist Astrand 2202e9b126 no info target heim_ntlm_calculate_lm2 2010-11-22 10:56:43 -08:00
Love Hornquist Astrand 46f10ca9c6 remove -template dependencies 2010-11-21 13:00:20 -08:00
Love Hornquist Astrand b1cfe43834 use right variable 2010-11-21 12:53:28 -08:00
Love Hornquist Astrand 39f669b42e include <string.h> 2010-11-21 12:30:53 -08:00
Love Hornquist Astrand 663548b9e5 remove libauth since either is krb4 only, or non longer existing operating systems 2010-11-20 14:56:11 -08:00
Love Hornquist Astrand 6920fbbef1 remove krb5 support 2010-11-20 14:39:20 -08:00
Love Hornquist Astrand fae3d127a2 remove krb4 support 2010-11-20 14:38:21 -08:00
Love Hornquist Astrand aa750c33d1 remove unused variables 2010-11-20 14:13:58 -08:00
Love Hornquist Astrand 65a1ee8163 dont use private prototype 2010-11-20 14:13:31 -08:00
Love Hornquist Astrand cc42e85e7f Remove deprecated krb4 kdc components 2010-11-20 14:11:35 -08:00
Love Hornquist Astrand 8f2e0a7010 export internal functions so we dont need private headers 2010-11-20 14:05:54 -08:00
Love Hornquist Astrand 6ce02c45a3 use --one-code-file 2010-11-20 13:52:28 -08:00
Love Hornquist Astrand 09c0c65d6f remove v4 support for hprop 2010-11-20 13:26:40 -08:00
Love Hornquist Astrand 37fcf33d7c document hdb_entry_ex 2010-11-18 23:40:09 -08:00
Love Hornquist Astrand c71d2bf0d3 spelling, From Kaiting Chen <kaitocracy@gmail.com> 2010-11-18 23:25:18 -08:00
Andrew Bartlett 387b0fa7ba Add more required functions to base/version-script.map
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-11 20:43:20 -08:00
Andrew Bartlett 79bf21032a Add new external function krb5_kdc_pkinit_config()
This starts up the pkinit configuration and sets some default values,
and is needed in a seperate function so Samba4 can call it from it's
own KDC wrapper.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-11 20:42:51 -08:00
Andrew Bartlett 712c6209f2 Fix base/version-script.map to match syntax of other version-script.map files
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-11 20:42:04 -08:00
Love Hornquist Astrand f6f4517eda first drop of version-script.map 2010-11-10 09:03:52 +01:00
Andrew Tridgell 157d60a0eb heimdal: fixed a shadowed variable warning for error_message
Pair-Programmed-With: Andrew Bartlett <abartlet@samba.org>

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-08 22:27:32 -08:00
Love Hornquist Astrand c54b80f00c wrap heim_array_filter() in __BLOCKS__ 2010-11-08 22:20:59 -08:00
Love Hornquist Astrand 457c2d6d2c use md4 to verify md4 2010-11-08 14:39:26 -08:00
Andrew Bartlett 2e34d7cf6e heimdal: fixed the use of error_message() in heimdal
the lex code in heimdal had a function error_message() which is
confusingly the ame as a core function from the com_err library. This
replaces it with lex_error_message(), and allows Samba4 to have a
stricter check for duplicate symbols between it's components.

Pair-Programmed-With: Andrew Tridgell <tridge@samba.org>

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-08 13:43:25 -08:00
Love Hornquist Astrand 2e31740f62 always check for error token in case of a failure 2010-11-08 13:40:01 -08:00
Andrew Bartlett 526aeef0c7 heimdal Add clock-skew handling to DCE-style GSSAPI
The clock skew handling was previously only on properly wrapped
GSSAPI, and was skipped for DCE-style.  This allows the ASN.1 errors
from the krb5_rd_req to suggest parsing as a kerberos error packet.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-08 13:36:52 -08:00
Love Hornquist Astrand f178458310 use krb5_data_ct_cmp 2010-11-06 20:53:04 +01:00
Love Hornquist Astrand 5a801c8f4a use krb5_data_ct_cmp 2010-11-06 20:52:53 +01:00
Love Hornquist Astrand 2d1ca83efa use krb5_data_ct_cmp 2010-11-06 20:52:33 +01:00
Love Hornquist Astrand 15f0adad02 add krb5_data_ct_cmp 2010-11-06 20:36:12 +01:00
Love Hornquist Astrand 0be50bf118 add krb5_data_ct_cmp 2010-11-06 20:36:08 +01:00
Love Hornquist Astrand 341f4a2f23 update help text 2010-11-06 20:26:03 +01:00
Love Hornquist Astrand 55c4979df2 Now pac from christian passes since we make hmac checksums always use the raw key 2010-11-06 20:23:49 +01:00
Love Hornquist Astrand d6b93cec1e internal function _krb5_HMAC_MD5_checksum 2010-11-06 20:11:19 +01:00
Love Hornquist Astrand 55ccd5ff9c use _krb5_enomem and indent 2010-11-06 20:10:26 +01:00
Love Hornquist Astrand a1f749f4af add _krb5_enomem 2010-11-06 20:09:07 +01:00
Love Hornquist Astrand 5ab43b8520 plug memory leak 2010-11-06 20:01:02 +01:00
Andrew Bartlett a42b77fb22 heimdal Add handling for PAC signatures over all encryption types
There are exceptions from the expected behaviour of 'checksum type
matches key type' that we must deal with here, or else we can't serve
DES-only servers.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-11-06 19:56:48 +01:00
Love Hornquist Astrand ae948e9932 better help for --no-forward 2010-11-04 18:47:44 -07:00
Love Hornquist Astrand 7d710765b6 make -f mean forwardable 2010-11-04 10:21:33 -07:00
Simon Wilkinson 1d9072f026 krb5: reorganise crypto.c
lib/krb5/crypto.c was a large, monolithic block of code which made
it very difficult to selectively enable and disable particular
alogrithms.

Reorganise crypto.c into individual files for each encryption and
salt time, and place the structures which tie everything together
into their own file (crypto-algs.c)

Add a non-installed library (librfc3961) and test program
(test_rfc3961) which builds a minimal rfc3961 crypto library, and
checks that it is usable.
2010-11-03 11:12:24 +00:00
Love Hornquist Astrand 6184422fef compare the value of the client realm now that it might not be the same pointer
fixes the check-delegate test that the new direct hop patch broke
2010-11-01 13:46:56 -07:00
Love Hornquist Astrand a16f7ea0ab add missing
prototype
2010-10-31 01:09:24 -07:00
Asanka C. Herath a73d30e619 get_cred_kdc_capath() always try direct cross-realm first 2010-10-31 01:04:27 -07:00
Joerg Pulz 344071becb add missing checks for utmpx struct fields
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-31 00:40:50 -07:00
Joerg Pulz 6f5b42957e add some more #ifdefs to compile on utmpx only systems
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-31 00:38:41 -07:00
Joerg Pulz ef90819a9a rename PTHREADS_LIBADD to PTHREAD_LIBADD
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-31 00:29:54 -07:00
Joerg Pulz b1bbd18686 fix FreeBSD PTHREAD_LIBADD
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-31 00:28:24 -07:00
Love Hornquist Astrand 501c5ac2fe sort and add ntlm_err.h 2010-10-30 22:19:29 -07:00
Love Hornquist Astrand aceab099f2 add ntlm_err.h 2010-10-30 22:18:34 -07:00
Love Hornquist Astrand 6f9a423c0a add libheimbase.la 2010-10-30 13:59:19 -07:00
Love Hornquist Astrand a85c548fd1 wait for dead children, and then abandon the live ones 2010-10-30 12:15:04 -07:00
Love Hornquist Astrand bbe08b7750 use clear_multi, don't call init twice 2010-10-27 22:19:22 -07:00
Love Hornquist Astrand 6d47c862ec really free memory too 2010-10-27 22:13:04 -07:00
Love Hornquist Astrand b7ac4c9333 really free memory too 2010-10-27 22:12:30 -07:00
Love Hornquist Astrand acbdbb753e plug memory leaks 2010-10-27 22:03:36 -07:00
Love Hornquist Astrand c71fe8f2cd spelling 2010-10-27 21:13:47 -07:00
Love Hornquist Astrand e334f05ab5 spelling 2010-10-27 21:13:31 -07:00
Love Hornquist Astrand 2eae1a1d30 spelling 2010-10-27 21:09:41 -07:00
Love Hornquist Astrand e0a1e0a806 simplify 2010-10-27 20:48:55 -07:00
Love Hornquist Astrand edc1c3e2a1 add heimbase.h 2010-10-27 20:43:15 -07:00
Love Hornquist Astrand 7259b7deff new way to run plugins that have less overhead (code and performance vice) 2010-10-27 20:42:35 -07:00
Love Hornquist Astrand ba8fe4b799 load plugin once 2010-10-27 20:42:01 -07:00
Love Hornquist Astrand b6573c69e6 more base 2010-10-27 20:33:57 -07:00
Love Hornquist Astrand ef78859954 clean heimbase. 2010-10-27 20:31:13 -07:00
Love Hornquist Astrand e457e87726 add Patrik Lundin 2010-10-27 19:35:04 -07:00
Love Hornquist Astrand 2a2b229efc reap all zombie children, promted by bug report from Patrik Lundin 2010-10-27 19:34:28 -07:00
Love Hornquist Astrand 01e03a1c1e common tailq 2010-10-26 23:42:33 -07:00
Love Hornquist Astrand b0c19f1a2d more use bits 2010-10-26 23:41:32 -07:00
Love Hornquist Astrand 82d15c0ada define helper macros for __attribute__ 2010-10-26 23:41:05 -07:00
Love Hornquist Astrand a77070f5b1 define helper macros for __attribute__ 2010-10-26 23:39:42 -07:00
Love Hornquist Astrand 82f7fcc9e9 provide heim_base_once_f 2010-10-24 12:20:14 -07:00
Love Hornquist Astrand 14b5c39f58 pulling heim_threads.h 2010-10-24 12:19:32 -07:00
Chas Williams (CONTRACTOR) a3afa695ee hcrypto: struct x64 doesn't need bitfields
hcrypto: struct x64 doesn't need bitfields

    The bitfield specifications on the struct x64 members do not actually do
    anything to guarantee/force packing or endian of the members.  Removing
    them allows the code to compile on certain compilers that do not support
    bitfields on 64-bit types.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-23 17:24:28 -07:00
Love Hornquist Astrand 3e022eeae1 remove unused variable, plug memory leak 2010-10-20 19:42:07 -07:00
Love Hornquist Astrand 2a9d00dd91 add digest and apop support 2010-10-19 18:16:49 -07:00
Love Hornquist Astrand 9f1168b703 add targetinfo and comerr error codes 2010-10-19 18:15:40 -07:00
Jan Rękorajski 99f690fd19 krb5_cc_last_change_time is missing 2010-10-18 16:07:59 -07:00
Love Hornquist Astrand 8ddc462ec1 Add heimbase 2010-10-18 15:00:34 -07:00
Joerg Pulz 03dfe132d0 Make build w/o PKINIT
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-18 08:28:42 -07:00
Joerg Pulz 4154bb82ce Add libintl for i18n support
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-18 08:27:33 -07:00
Love Hornquist Astrand 8e7cf16491 Switch to ULL 2010-10-11 20:15:37 -07:00
Love Hornquist Astrand f5b16cbddb remove tfm 2010-10-11 20:10:24 -07:00
Simon Wilkinson 4dc6b5f259 hcrypto: Flag 64bit bit constants as long long
When using 64bit constants for initialisation flag them as LL, so
the compiler doesn't try to cast them down to a long, and throw away
information, on 32 bit platforms.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-11 20:08:25 -07:00
Simon Wilkinson 3d7fc1001a Assign a value for HX509_CMS_EV_ID_NAME
667ec8eb81 introduced the flag
HX509_CMS_EV_ID_NAME, without defining a value for that flag.
Assign a value using the next available bit.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-11 20:05:26 -07:00
Love Hornquist Astrand 20e4f3b9de more glue 2010-10-11 20:04:11 -07:00
Love Hornquist Astrand 8e24a897d7 make code match comment 2010-10-12 04:27:13 +02:00
Love Hornquist Astrand bf1f62b0a8 Document KCM 2010-10-10 18:18:46 -04:00
Love Hornquist Astrand 667ec8eb81 Use version 0 for issuer name serial number and version 2 for ski
Pointed by subject Michael Wood <esiotrot@gmail.com> on samba-technical
2010-10-07 00:22:09 -07:00
Love Hornquist Astrand ef543041fc moving on top of ourself is simple 2010-10-07 00:01:24 -07:00
Love Hornquist Astrand 3789b1111e stop if there is not enough data 2010-10-07 00:01:06 -07:00
Love Hornquist Astrand c50d442375 release cred too 2010-10-06 23:47:37 -07:00
Love Hornquist Astrand a3746c9f07 handle unix credentials 2010-10-06 23:32:36 -07:00
Love Hornquist Astrand f225af82c1 if db_create() returns non zero, fail 2010-10-06 21:37:50 -07:00
Love Hornquist Astrand 34e5278ae4 random bits 2010-10-04 00:03:12 -07:00
Love Hornquist Astrand 106689c7a0 add rsakey2048 and rsakey4096 2010-10-03 18:13:58 -07:00
Love Hornquist Astrand b7b40b1ef9 add more speed (or maybe non speed numbers) 2010-10-03 18:13:16 -07:00
Love Hornquist Astrand 4c1b29346f test rsakey2048 2010-10-03 17:06:48 -07:00
Love Hornquist Astrand b4181e4560 rsakey2048 2010-10-03 17:04:48 -07:00
Love Hornquist Astrand 48ad3e1e65 add import/export type for private keys 2010-10-03 16:32:01 -07:00
Love Hornquist Astrand dfc54c6eea now that we use 2k rsa keys, don't make ca keys twise as large 2010-10-03 14:59:43 -07:00
Love Hornquist Astrand 97390e087d default to 2k rsa keys, for performance reasons you might want to generate 1k rsa keys though 2010-10-03 14:58:18 -07:00
Andrew Bartlett 5cc4d5d2bd heimdal Use a seperate krb5_auth_context for the delegated credentials
This makes it much more clear that the timestamp written here is not
used in mutual authentication.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-02 20:47:12 -07:00
Andrew Bartlett b78419f126 heimdal use returned server entry from HDB to compare realms
Some hdb modules (samba4) may change the case of the realm in
a returned result.  Use that to determine if it matches the krbtgt
realm also returned from the DB (the DB will return it in the 'right' case)

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-02 20:46:49 -07:00
Andrew Bartlett 0225db7152 Don't redefine socket() if socket_wrapper is already in use
In Samba, we may have already included socket_wrapper.h at this point

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-02 20:46:16 -07:00
Love Hornquist Astrand c6fb9428dd Drop imath for ltm for speed reasons 2010-10-02 12:28:27 -07:00
Love Hornquist Astrand 0a608964a4 only set error code in case of failure, add comment 2010-10-02 12:13:19 -07:00
Love Hornquist Astrand 6cdf8104f7 do is deprecated, so lets stop using it 2010-10-02 12:05:41 -07:00
Love Hornquist Astrand 0789271ebb indent, return error code 2010-10-02 11:59:53 -07:00
Andrew Bartlett 7ea9ccf737 heimdal: added verbose logging of hemimdal crypto errors
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-02 11:56:26 -07:00
Andrew Bartlett c434086ba0 Add error code to use when a secret is not in this database
This will happen on an RODC, which has the entry, but not the full
secret.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-02 11:52:28 -07:00
Andrew Bartlett 1d09e39d45 Don't segfault when in --one-file mode
The problem is that on Linux, fclose() of a NULL pointer segfaults

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-02 11:51:42 -07:00
Buck Huppmann 799956e9b7 Check if we should enable weak crypto before parsing enctypes list
This since the enctypes lists doesn't include weak crypto alg in the
resulting list.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-10-02 11:28:20 -07:00
Love Hornquist Astrand 0d64a7830b 1.5 items 2010-10-02 10:54:03 -07:00
Love Hornquist Astrand 6beb058640 Handle picky windows RODC servers 2010-10-01 17:49:05 -07:00
Patrik Lundin d5e4619738 Fix order of arguments given to memchr().
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-30 21:30:33 -07:00
Love Hornquist Astrand 3128a7a416 SHA384 2010-09-30 18:36:58 -07:00
Love Hornquist Astrand b206aeb016 SHA384 2010-09-30 18:22:00 -07:00
Love Hornquist Astrand 1b48afda47 add sha512 2010-09-30 01:04:19 -07:00
Love Hornquist Astrand 9dbcb98f84 clue in sha512 in rsa signature 2010-09-30 01:00:42 -07:00
Love Hornquist Astrand 1072afd6bf Andrew Bartlet pointed out that the patch was incomplete, update and write doxygen. 2010-09-30 00:44:35 -07:00
Love Hornquist Astrand 6699b5e59a get padding size right 2010-09-30 00:20:52 -07:00
Love Hornquist Astrand 42727fc891 glue in sha512 2010-09-30 00:18:03 -07:00
Love Hornquist Astrand 150f1401d1 Add SHA512 2010-09-30 00:08:48 -07:00
Love Hornquist Astrand b32651c830 SHA512 support 2010-09-29 23:41:15 -07:00
Love Hornquist Astrand 5fc132d888 add _der_gmtime, use and test it 2010-09-29 13:32:39 -07:00
Love Hornquist Astrand f454f45fbf If the hostname contains a dot, assumes it's a FQAN and don't use
search domains since that might be painfully slow when machine is
disconnected from that network.

Found by Tridge
2010-09-28 22:37:01 -07:00
Love Hornquist Astrand 5410614330 free more bn that was allocated 2010-09-28 22:12:20 -07:00
Love Hornquist Astrand 97d939d9af don't allocate n twice, indent 2010-09-28 22:08:00 -07:00
Andrew Bartlett 76266ab5ac s4:heimdal Create a new PAC when impersonating a user with S4U2Self
If we don't do this, the PAC is given for the machine accout, not the
account being impersonated.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-26 15:15:18 -07:00
Karolin Seeger 035106be97 s4-krb5: Fix typos in comment.
Karolin

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-26 15:12:09 -07:00
Andrew Bartlett 0e128912af s4:heimdal Add hooks to check with the DB before we allow s4u2self
This allows us to resolve multiple forms of a name, allowing for
example machine$@REALM to get an S4U2Self ticket for
host/machine@REALM.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-26 15:11:05 -07:00
Karolin Seeger 77a6204452 s4-heimdal: Fix typo in comment.
Karolin

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-26 15:08:28 -07:00
Karolin Seeger 260e19ac09 s4-heimdal: Fix typo in comment.
Karolin

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-26 15:06:58 -07:00
Love Hornquist Astrand 07e7cdd4f0 Support PADDING_NONE for encryption too 2010-09-23 11:11:00 -07:00
Love Hornquist Astrand 74e46d59c1 add back hx509_crypto_allow_weak 2010-09-22 15:00:13 -07:00
Love Hornquist Astrand 6f328a9194 add padding support via hx509_crypto_set_padding 2010-09-22 14:41:17 -07:00
Love Hornquist Astrand 2f9f212980 remove unused header file 2010-09-19 01:47:32 -07:00
Love Hornquist Astrand 686f2abe61 x 2010-09-19 01:14:07 -07:00
Love Hornquist Astrand b5bc5c1d84 add PTHREAD_LIBADD 2010-09-19 00:55:36 -07:00
Love Hornquist Astrand 84f6409923 Move to a plugin cache, contributed from Secure Endpoints 2010-09-18 23:37:06 -07:00
Asanka C. Herath cad554ad3d Generalize MSLSA ccache type to a plug-in based ccache type 2010-09-18 23:50:38 -04:00
Asanka C. Herath a4be8fcd7e Windows: Add missing export for libhcrypto-exports.def 2010-09-18 23:41:53 -04:00
Love Hornquist Astrand fea391eb96 remove prefix zeros 2010-09-18 14:45:33 -07:00
Love Hornquist Astrand 8668bfaefc less brokenness 2010-09-18 11:55:59 -07:00
Love Hornquist Astrand 8de6bccd50 add validate.obj 2010-09-18 11:33:09 -07:00
Simon Wilkinson 75df9577e7 Uses unsigned ints for lengths
EVP_BytesToKey uses min() on a mixture of signed and unsigned
paramters. To avoid compiler warnings, use unsigned int for all
of the iv and key lengths in this function.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-18 11:30:06 -07:00
Love Hornquist Astrand 9907781fa3 make address a full adress 2010-09-18 11:26:09 -07:00
Anton Lundin 057f139f6a Fix to build on aix.
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-17 12:21:58 -07:00
Anton Lundin 61bfc2997b Fix testing when compiled with --disable-afs-support
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-17 12:21:39 -07:00
Love Hornquist Astrand 4328f3980f make addresses not use compression in the middle since diffrent
inet_ntop have diffrent way to format them
2010-09-17 12:20:29 -07:00
Anton Lundin eac56da073 Rename struct to not clash with aix header sys/proc.h
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-16 22:47:27 -07:00
Anton Lundin 46a4a64dfe ifdef away code to be able to build with --disable-krb4
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-16 22:47:14 -07:00
Love Hornquist Astrand 0bfd697f62 use krb5_unparse_name instead of krb5_unparse_name_short since that doesnt fail. From Zdenek Hatas 2010-09-16 20:59:35 -07:00
Love Hornquist Astrand cf925c82b8 typecase to avoid warning 2010-09-15 22:47:52 -07:00
Love Hornquist Astrand 6a57e6a784 make test pass 2010-09-15 21:57:48 -07:00
Guillaume Rousse bf208183dc add version-script.map to distributed files
Signed-off-by: Guillaume Rousse <Guillaume.Rousse@inria.fr>
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-15 20:06:24 -07:00
Love Hornquist Astrand d82410ea88 add header files for libtommath 2010-09-15 12:06:16 -07:00
Love Hornquist Astrand 736a08059a spelling 2010-09-14 10:44:33 -07:00
Simon Wilkinson d28ec4ba61 Don't typedef u8, u16, u32 in rijndael-alg-fast.c
Some kernels define u8, u16 and u32 in their standard headers.
Redefining these symbols in hcrypto's own code prevents that code
from compiling on those kernels.

Instead, just replace all occurrences of u8, u16 and u32 with the
symbols that uint8_t, uint16_t and uint32_t that they were being
typedef'd as, anyway.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-14 10:26:14 -07:00
Simon Wilkinson 8a5d3ca959 Rename current to SHA1current
Some kernels define 'current' as a #define. This causes chaos when
we try to build sha.c. So, rename current as 'SHA1current', and avoid
the insanity.
2010-09-14 10:24:43 -07:00
Love Hornquist Astrand 64a2e57029 add arguments to rk_rename to move it into the macro/function namespace 2010-09-14 10:18:08 -07:00
Love Hornquist Astrand d05098b950 New drop with windows code from Secure Endpoints/Asanka 2010-09-14 10:08:03 -07:00
Love Hornquist Astrand a37554cc27 clean better 2010-09-14 09:29:40 -07:00
Love Hornquist Astrand ad0c3839b5 clean better 2010-09-14 09:29:35 -07:00
Love Hornquist Astrand 50ea273b5f clean better 2010-09-14 09:29:29 -07:00
Asanka C. Herath 079cbf7a1a Windows: Build the SDK 2010-09-14 08:04:20 -04:00
Asanka C. Herath 8232a8dc4c Windows: packages/windows/sdk
The Makefile in this directory pulls in the SDK into a separate directory tree.
2010-09-14 08:04:19 -04:00
Asanka Herath b3797f428b Add krb5_c_random_make_octets() to mit_glue.c 2010-09-14 08:04:19 -04:00
Asanka Herath 80599fcd94 Define KRB5_TC_OPENCLOSE and KRB5_TC_NOTICKET in krb5.h 2010-09-14 08:04:18 -04:00
Asanka Herath e447009d1b Add krb5_free_default_realm() to MIT glue 2010-09-14 08:04:18 -04:00
Asanka Herath d4a80084f1 Don't return a freed pointer in allocate_ccache() 2010-09-14 08:04:17 -04:00
Asanka Herath fa4021698e Handle Windows pathnames properly in krb5_cc_resolve()
On Windows, a pathname can contain a drive letter and a colon.
krb5_cc_resolve() used to check whether there were any colons in the
ccache name string and assume it is a FILE: cache if there weren't.
In addition, on Windows, check for a drive specification.
2010-09-14 08:04:17 -04:00
Asanka Herath 91bfec3059 Windows: Enable weak crypto by default 2010-09-14 08:04:16 -04:00
Asanka Herath 85f5f6bbda klist: If we aren't being verbose, we don't need the full ticket 2010-09-14 08:04:15 -04:00
Asanka Herath a7ccfa0717 Define KRB5_TC_NOTICKET 2010-09-14 08:04:15 -04:00
Asanka Herath 5c39c25c77 Fix comment 2010-09-14 08:04:14 -04:00
Asanka Herath c93c2c72be Additional MIT glue
Add compatible exports for:

krb5_auth_con_getsendsubkey()
krb5_auth_con_getrecvsubkey()
krb5_auth_con_setsendsubkey()
krb5_auth_con_setrecvsubkey()
2010-09-14 08:04:14 -04:00
Asanka Herath ff9cb6572d Deal with NULL or empty input for expand_path_tokens()
_krb5_expand_path_tokens() should return an empty string if the input
string is empty or NULL, instead of always returning a NULL for these
two cases.
2010-09-14 08:04:13 -04:00
Asanka Herath e8e56defaf Don't rely on non-CCAPI v3 exports
krb5_ipc_client_set_target_uid() and krb5_ipc_client_clear_target()
may not be present in CCAPI plug-in.  Don't rely on their existence.
2010-09-14 08:04:12 -04:00
Asanka Herath ba02163f2e Windows: Don't ignore failure in test_addr from now on 2010-09-14 08:04:12 -04:00
Asanka Herath 9db9b146fb Windows: Add support for MSLSA: cache type using a plug-in 2010-09-14 08:04:11 -04:00
Asanka Herath d6cf7e78e9 Windows: Build thirdparty packages if there are any 2010-09-14 08:04:10 -04:00
Asanka Herath 4b8c523d28 Fix line endings 2010-09-14 08:04:10 -04:00
Asanka Herath e1136ba112 Windows: Annotate symbols for libkadm5srv 2010-09-14 08:03:40 -04:00
Asanka Herath 48017d046a Windows: Build test binaries for kadm5 2010-09-14 08:03:40 -04:00
Asanka Herath 77c91f86a0 Windows: Remove test_hdbkeys from test-run
test_hdbkeys is not a standalone test app.
2010-09-14 08:03:39 -04:00
Asanka Herath fbbfbdda32 Windows: Fix exports for libhdb 2010-09-14 08:03:39 -04:00
Asanka Herath c372b0aa37 Windows: Fix exports for libgssapi 2010-09-14 08:03:38 -04:00
Asanka Herath 96dadaaeff Windows: Decorate krb5_cc_copy_creds export definition 2010-09-14 08:03:37 -04:00
Asanka Herath 4925fb863c Address of an imported symbol is not always a constant
On Windows, the address of a symbol imported from a DLL is not
considered a constant.  Therefore, it can't be used to initialized
static data.
2010-09-14 08:03:37 -04:00
Asanka Herath 6d4ac563d5 Windows: Build hxtool with the correct options 2010-09-14 08:03:36 -04:00
Asanka Herath 84c42b3592 Windows: Regenerated libasn1-exports.def
Sorted and with data exports declared using DATA statements.
2010-09-14 08:03:36 -04:00
Asanka Herath ed226d4241 Declare ASN.1 exported data using ASN1EXP 2010-09-14 08:03:35 -04:00
Asanka Herath 55b0f00d5e Windows: Check for DATA symbols when scanning .obj files
The export symbol list for ASN.1 on Windows is generated by scanning
all the .obj files and extracting the symbols defined in them.  The
generated list did not specify which were functions and which were
data symbols.  This distinction is necessary for generating correct
import library stubs.
2010-09-14 08:03:34 -04:00
Asanka Herath 4b36b36e0b Add roken/rename.c to fix non-standard rename()
roken/rename.c is for platforms where the native rename()
implementation does not replace the target if it already exists.  This
implementation isn't atomic, but should be close enough for most
purposes.

For correct behavior, rk_rename() should be used instead of rename().
rk_rename() is #defined to be rename() on platforms where this fix is
not necessary.
2010-09-14 08:03:34 -04:00
Asanka Herath 6cc480fc09 Additional tests cases for test_addr.c
On platform where we build our own inet_ntop(), exercise it a bit
more.  Specifically for zero string compression of IPv6 addresses.
2010-09-14 08:03:33 -04:00
Asanka Herath 7479c855a0 Windows: Don't attempt to copy a string to a zero length buffer
It won't cause harm since strcpy_s() deals with zero length buffers,
but it invokes the invalid parameter handler, which can disrupt
execution on debug builds.
2010-09-14 08:03:33 -04:00
Asanka Herath d4fc674024 strlcat() isn't supposed to access *dst past dst_sz
Try not to do that on platforms where we can avoid it.
2010-09-14 08:03:32 -04:00
Asanka Herath 7e3bd7f9aa Windows: Fix use of file descriptors as sockets
Sockets and file descriptors are not interchangeable on Windows.  The
test for checking whether a given value is a socket or an FD was
broken for the case where WinSock was not initialized to begin with.
2010-09-14 08:03:31 -04:00
Asanka Herath bd795255aa Fix fcc_remove_cred() on platforms with non-standard rename() 2010-09-14 08:03:31 -04:00
Asanka Herath b74fa12602 Windows: Have test binaries depend on built libraries 2010-09-14 08:03:30 -04:00
Asanka Herath 738e2ea55b Compress zeros when converting IPv6 addresses
libroken implementation of inet_ntop() was not compressing strings of
zeros.  While it is optional, not doing so was intefering with address
conversion tests in lib/krb5.
2010-09-14 08:03:30 -04:00
Asanka Herath 8a1fb91009 Don't fail tests for unsupported rand methods 2010-09-14 08:03:29 -04:00
Asanka Herath 2ea71109d3 Windows: Add missing exports to libhcrypto-exports.def 2010-09-14 08:03:28 -04:00
Asanka Herath 1e540dbf5c Windows: Fix dependencies for hcrypto/test_hmac.exe 2010-09-14 08:03:28 -04:00
Asanka Herath 4c6cdf07c2 Fix calling convention for asn1 tests 2010-09-14 08:03:27 -04:00
Love Hornquist Astrand 5c34efcef1 add data/win-u16-in-printablestring.der 2010-09-13 00:04:47 -07:00
Love Hornquist Astrand 1ddb13e34a add missing files 2010-09-13 00:04:33 -07:00
Love Hornquist Astrand ed7a5175fb add opt files 2010-09-12 23:37:36 -07:00
Love Hornquist Astrand 1205b35297 remove extra b 2010-09-12 23:22:41 -07:00
Love Hornquist Astrand 3af3dd2673 add heim_ipc_types.h 2010-09-12 23:18:02 -07:00
Love Hornquist Astrand e80ef86fe4 include hi_locl.h 2010-09-12 23:11:47 -07:00
Love Hornquist Astrand da24828d50 add heim_ipc_reply.defs 2010-09-12 23:05:51 -07:00
Love Hornquist Astrand 615257472b add heim_ipc_async.defs 2010-09-12 23:02:01 -07:00
Love Hornquist Astrand d1943f6860 add heim_ipc.defs 2010-09-12 22:53:33 -07:00
Love Hornquist Astrand 5ce78aa9af 1.4.99 2010-09-12 22:31:50 -07:00
Love Hornquist Astrand ba5c014af0 add krb5_get_permitted_enctypes 2010-09-08 22:04:03 -07:00
Love Hornquist Astrand 3798647400 Define HAVE_CFPROPERTYLISTCREATEWITHSTREAM if this is 10.6 or newer 2010-09-08 12:22:12 -07:00
Love Hornquist Astrand 4bd153432f This is a modified version of libeditline and the bugs we introduced are our own 2010-09-08 11:35:45 -07:00
Love Hornquist Astrand 4114d8e9e1 pull in <AvailabilityMacros.h> for __APPLE__ hosts 2010-09-08 10:53:08 -07:00
Love Hornquist Astrand 3bf10b6901 move out kdc_locl.h 2010-09-08 09:59:57 -07:00
Love Hornquist Astrand 513a27a961 make conditional on apple and have_gcd 2010-09-08 09:50:50 -07:00
Love Hornquist Astrand 63b6dd1943 make work w/o gcd 2010-09-08 09:49:03 -07:00
Love Hornquist Astrand bac0598ce6 cancel sources 2010-09-08 09:45:40 -07:00
Love Hornquist Astrand d615f77834 condition gcd on HAVE_GCD 2010-09-08 09:18:03 -07:00
Love Hornquist Astrand 17d64b8507 add validation of hmac 2010-09-08 00:06:40 -07:00
Love Hornquist Astrand 51e6e505f1 add validate.c 2010-09-08 00:04:18 -07:00
Love Hornquist Astrand b897f2df34 export hc_hcrypto_validate 2010-09-08 00:04:10 -07:00
Love Hornquist Astrand 28c80fdf15 validate args before use 2010-09-08 00:04:01 -07:00
Love Hornquist Astrand 76867d73ab validate args before use 2010-09-08 00:03:39 -07:00
Love Hornquist Astrand cf3d2ca7ed simple validation of crypto core 2010-09-08 00:03:27 -07:00
Love Hornquist Astrand eb2b84791a add back tfm 2010-09-07 23:58:34 -07:00
Love Hornquist Astrand c3670bb45f remove unused variable 2010-09-07 23:57:12 -07:00
Love Hornquist Astrand 7c0b7083ea add missing ; 2010-09-07 23:56:40 -07:00
Love Hornquist Astrand 04e0c67070 wrap common crypto in HAVE_COMMONCRYPTO_COMMONCRYPTOR_H 2010-09-07 23:25:33 -07:00
Love Hornquist Astrand 0d12baeb83 add check for CommonCrypto/CommonCryptor.h 2010-09-07 23:20:04 -07:00
Eray Aslan a1c14b2319 Add --with-berkeley-db-include option
Adds --with-berkeley-db-include=dir option to configure to use berkeley
db headers in dir.  Default is to let configure check.  Also adds
support for checking for and using db5/db.h

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-05 18:41:30 -07:00
Russ Allbery ce438f343c Fix error reporting prefix for kadmin list
Pass the function name into foreach_principal instead of the static
"get" string, so the correct function is reported in errors in
kadmin list.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-01 22:59:30 -07:00
Russ Allbery 890c797f68 Don't retrieve principal data for kadmin list
kadmin list and kadmin get -t used the same output display logic
as short output, which meant that they called kadm5_get_principal
for each principal.  However, they then just threw that output
away since the terse format displays only the principal name.

For terse get output, instead use a separate set of functions that
just print the string version of the principal name and do not
retrieve additional information.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-09-01 22:59:12 -07:00
Love Hornquist Astrand d893207413 add check-rd-req-server 2010-09-01 21:56:17 -07:00
Love Hornquist Astrand 856c1c0a86 accept >= 0 and valid return codes from RAND_bytes due to broken engine from the isc bind implementation, reported by Sam Liddicott 2010-09-01 21:00:07 -07:00
Derrick Brashear 33e0d2c32e asn1 header generation misses newline
at some point asn1 header generation lost its trailing newline on
asn1_%s_units prototypes. put it back for neatness.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-08-28 13:31:46 -07:00
Love Hornquist Astrand 3ba4f32d8d Expand on what enterprise names are 2010-08-28 13:01:45 -07:00
Guillaume Rousse 792db1ca13 document --enterprise option, as in --help output
Signed-off-by: Guillaume Rousse <Guillaume.Rousse@inria.fr>
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-08-28 10:57:12 -07:00
Love Hornquist Astrand 4f5390877a plug memory leaks 2010-08-23 22:02:10 -07:00
Simon Wilkinson bbc9176868 hcrypto: Don't use 'u' as a variable name
Some kernels #define u as a pointer to the current user structure.
This causes problems when trying to use hcrypto's hash routines in
those kernels, as they try to use 'u' as a variable name for a
structure pointer. Change this variable name to avoid the conflict.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-08-23 21:21:14 -07:00
Love Hornquist Astrand bd91f174b9 Changes from Asanka Herath of Secure Endpoint for additional Microsoft Windows support 2010-08-20 19:45:14 -07:00
Love Hornquist Astrand c166adf010 ignore doxyout 2010-08-20 19:39:20 -07:00
Asanka Herath 00e84dac77 Windows: Specify target machine architecture in link step 2010-08-20 16:59:36 -04:00
Asanka Herath 069d9a8afc Windows: New exports for comerr64.dll shim library 2010-08-20 16:59:12 -04:00
Asanka Herath dc638df0ff Windows: Fix gssapi{32,64} shim library 2010-08-20 16:58:45 -04:00
Asanka Herath 6304b4d2ef Windows: Missing clean targets shouldn't be fatal 2010-08-20 16:57:46 -04:00
Asanka Herath 92bdd469bc Windows: heimdal.dll depends on LIBLTM instead of LIBTFM 2010-08-20 16:57:21 -04:00
Asanka Herath 8e8cf3814f Use <errno.h> instead of <sys/errno.h> in hcrypto/common.c 2010-08-20 16:56:46 -04:00
Asanka Herath 8b378cec73 Windows: Revised exports for libgssapi 2010-08-20 16:56:20 -04:00
Asanka Herath 4b1fbabe68 Windows: Fix build rules and includes for libtommath 2010-08-20 16:55:53 -04:00
Asanka Herath 93c08e67f0 Windows: Add missing dependency 2010-08-20 16:55:15 -04:00
Asanka Herath fd3d2ccd0d Windows: Build with USE_HCRYPTO_IMATH 2010-08-20 16:53:57 -04:00
Asanka Herath 1a4ffdca13 Windows: Add missing dependency 2010-08-20 16:53:26 -04:00
Asanka Herath 38f3c4d20a Windows: Note that the .def files are generated 2010-08-20 16:52:46 -04:00
Asanka Herath e9e33710ce Windows: No separate assembly directory 2010-08-20 13:14:19 -04:00
Asanka Herath f56c77103d Windows: Change when assemblies and shims are built
The assemblies should be built when the lib directory is build because
the generated application manifest should be used with all the tools
and executables that use the libraries.
2010-08-20 13:14:19 -04:00
Asanka Herath fbf3864422 Windows: Script for generating exports lists for shim layer
This script analyzes the export lists for MIT Kerberos for Windows,
export lists for Heimdal DLLs and the symbol lists from the shim code
and generates the appropriate export definition (.DEF) files.

.DEF files that are generated are committed to the source tree because
otherwise having MIT KfW DLLs around would be a build requirement.  If
there is any change to the shim code, the export .DEF files should be
rebuilt using:

  nmake /f NTMakefile DEV=1 gen-defs

.. from the packages/windows/kfw_shim directory.  The new .DEF files
should then be commited.
2010-08-20 13:14:18 -04:00
Asanka Herath 8793628306 Windows: Shim library for ABI compatibility with MIT KfW
The shim code creates DLLs that intend to be ABI compatible with MIT
Kerberos for Windows DLLs.  At its current state, the shim isn't
complete and there are multiple functions that are missing.
2010-08-20 13:14:17 -04:00
Asanka Herath c111770aed Windows: Use pushd and popd for recursive builds
This makes it possible to recurse into arbitrary directories instead
of just subdirectories.
2010-08-20 13:14:17 -04:00
Asanka Herath 7843607a49 Windows: Use 32-bit time_t on 32-bit builds 2010-08-20 13:14:16 -04:00
Asanka Herath 0f214582d5 Windows: Fix manifest attribute case 2010-08-20 13:14:16 -04:00
Asanka Herath 63597ca3fc Windows: Make application manifest available everywhere 2010-08-20 13:14:15 -04:00
Asanka Herath 08b297b785 Windows: Rename libgssapi.dll -> gssapi.dll 2010-08-20 13:14:15 -04:00
Asanka Herath f88854effa Windows: Correct calling convention for krb5_free_unparsed_name() 2010-08-20 13:14:14 -04:00
Asanka Herath 225e142ac5 Windows: Use correct calling convention for com_err 2010-08-20 13:14:13 -04:00
Asanka Herath 4ea2e07b21 Windows: Build and validate manifests
Fix manifests to include manifestVersion attribute and introduce an
application manifest.  The application manifest will be included in
the eventual SDK so that applications that depend on Heimdal can
correctly reference the Heimdal assemblies.
2010-08-20 13:14:13 -04:00
Asanka Herath 0730c0b98f Windows: ASN1_LIB needs to be defined for Heimdal library 2010-08-20 13:14:12 -04:00
Asanka Herath 8d40619564 Windows: Add krb5_cc_copy_creds to the exports list 2010-08-20 13:14:12 -04:00
Asanka Herath d98fd799c3 GSSAPI_DEPRECATED needs to be before the return type 2010-08-20 13:14:11 -04:00
Asanka Herath 3d83131be8 Export and calling convention annotation for lib/asn1 2010-08-20 13:14:10 -04:00
Asanka Herath 5dcc605f6b Fix calling conventions for Windows 2010-08-20 13:14:10 -04:00
Asanka Herath 12638c01a9 Windows: Build shared side-by-side assemblies for Heimdal 2010-08-20 13:10:50 -04:00
Asanka Herath b3b43ff9cf Windows: Update version and copyright 2010-08-20 13:09:52 -04:00
Asanka Herath 2a2a662eca roken/parse_time-test.c: Don't pass in incorrect buffer size 2010-08-20 13:09:51 -04:00
Asanka Herath aee2a6443d roken/test-mini_inetd.c: Use of rk_SOCK_INIT() etc. 2010-08-20 13:09:51 -04:00
Asanka Herath 745d9bcae7 Windows: Pull required declarations into roken.h.in 2010-08-20 13:09:50 -04:00
Asanka Herath 31b2dc9c48 roken/mini_inetd.c: Don't check against FD_SETSIZE unless necessary 2010-08-20 13:09:50 -04:00
Asanka Herath 63e3aedf8c Windows: Fix lib/hcrypto tests 2010-08-20 13:09:49 -04:00
Asanka Herath 481fe5bcf6 Windows: lib/roken tests now depend on DNSAPI 2010-08-20 13:09:48 -04:00
Asanka Herath e3ce1ff01b lib/wind/test-normalize.c: Dump failing vectors
If a Unicode string fails a normalization test, dump it so we can
figure out why its failing.
2010-08-20 13:09:48 -04:00
Asanka Herath 2730cfc919 lib/hcrypto/test_*: Use "rb" when opening binary files 2010-08-20 13:09:47 -04:00
Asanka Herath e88a1d83c6 test_crypto.in: Also test w32crypto 2010-08-20 13:09:47 -04:00
Asanka Herath eafb187cd0 Declare RAND_w32crypto_method() 2010-08-20 13:09:46 -04:00
Asanka Herath 9b466f35fb Windows: RAND_file_name() should look up profile path
If RANDFILE and HOME environment variables aren't defined, failover to
looking up the user's profile path.  In particular, default to a file
named .rnd in the user's local (non-roamin) application data
directory.
2010-08-20 13:09:45 -04:00
Asanka Herath 12909ec109 lib/wind: Canonical ordering can't use unstable sort 2010-08-20 13:09:45 -04:00
Asanka Herath 7af1f40258 hcrypto/test_rand.c: Add w32crypto method
Also make it non-fatal to request a method that is unsupported.  This
makes it possible to only test methods that we are compiling.
2010-08-20 13:09:44 -04:00
Asanka Herath f807cb8152 Windows: Update exports 2010-08-20 13:07:58 -04:00
Asanka Herath ede3437ced Windows: Fix test on lib/editline 2010-08-20 13:06:58 -04:00
Asanka Herath 6ab44f06a3 Windows: Fix tests in lib/asn1 2010-08-20 13:06:57 -04:00
Asanka Herath ac26475f2c Roll back asn1/gen_encode.c type safety patch 2010-08-20 13:06:57 -04:00
Asanka Herath 641eab32d8 Windows: Revise build of tools in lib 2010-08-20 13:06:56 -04:00
Asanka Herath efd02d929a Windows: No Fortuna method 2010-08-20 13:06:55 -04:00
Asanka Herath ba44354336 Windows: Check exported symbols
During a test run, cross check the Windows exports list against the
version-script files.  For the test to pass, all symbols on either
list should be accounted for.

If there are symbols that are specific to Windows or symbols that are
not included on Windows, they should be annotated in the .def file as
follows:

    ;!  non_windows_symbol

    	common_symbol

        windows_only_symbol ;!
2010-08-20 13:06:55 -04:00
Asanka Herath cdcdc5cad5 Windows: Version information for binaries 2010-08-20 13:06:54 -04:00
Asanka Herath d83611238a Windows: Build a single heimdal.dll
Heimdal.dll is a combination of libasn1, libwind, libhcrypto, libhx509
and libkrb5.
2010-08-20 13:06:54 -04:00
Asanka Herath ea4d8dbfdb Windows: Use EXEPREP and DLLPREP macros for processing binaries
Once DLLs and EXEs are built, they need to have their manifests
processed and signed.  These steps are encapsulated in the EXEPREP and
DLLPREP Makefile macros.  Use them instead of invoking each processing
macro individually.
2010-08-20 13:04:06 -04:00
Asanka Herath 0d09c879f3 Reduce compiler warnings on Windows 2010-08-20 13:04:06 -04:00
Asanka Herath f456b70013 Relocate roken WinSock declarations 2010-08-20 13:03:41 -04:00
Asanka Herath 04a7eaa170 Call ioctlsocket() indirectly
We were calling ioctlsocket() through a macro.  However, due to type
safety issues, we have to call it indirectly through rk_SOCK_IOCTL().
2010-08-20 13:03:40 -04:00
Asanka Herath 6b0baa2a8d Fix call to WSAStringToAddress()
String argument to WSAStringToAddress() is not const, while argument
to inet_pton() is.  Create a non-const string for the purpose of
calling WSAStringToAddress()
2010-08-20 13:03:40 -04:00
Asanka Herath 3a8922fe2d Change return type of checksum_type::checksum
struct checksum_type::checksum had a return value of krb5_enctype,
even though implementations returned krb5_error_code.  Change
declaration to match implementation.
2010-08-20 13:03:39 -04:00
Asanka Herath 381e946b9f Disable warnings we don't care about on Windows
We may care about them later, but for now we need to cut down on
noise.
2010-08-20 13:03:39 -04:00
Asanka Herath 5f87ea3bbf Let dlfcn.h return a function pointer on Windows 2010-08-20 13:03:38 -04:00
Asanka Herath 24cbddd4b9 Resolve warnings on Windows
Appease the compiler by resolving some of the reported warnings,
including:

- Control paths that don't return.

- Potentially uninitialized variables.

- Unused local variables.

- Unreachable code.

- Type safety.

- Synchronize declarations with definitions for functions.
2010-08-20 13:03:38 -04:00
Asanka Herath 869e970f5d Use rk_socket_t in lib/kadm5/init_c.c 2010-08-20 13:03:37 -04:00
Asanka Herath dba793110b Fix unused variable on Windows for softp11.c 2010-08-20 13:03:36 -04:00
Asanka Herath ab56333fd7 Variable initialization in hdb_sqlite_store()
If the call to krb5_unparse_name() fails, we might try to free an
uninitialized pointer.
2010-08-20 13:03:36 -04:00
Asanka Herath e512f5e826 Type safety for rsa-tfm.c 2010-08-20 13:03:35 -04:00
Asanka Herath ccc5fa16b1 Silence type safety warnings for rand-w32.c
Cast parameters to exact expected type so compiler won't complain.
2010-08-20 13:03:35 -04:00
Asanka Herath cd1e4911ca Local variable initialization for s_embar()
Or we may potentially return an uninitialized value.
2010-08-20 13:03:34 -04:00
Asanka Herath 87bc873223 Fix declaration of CAMELLIA_cbc_encrypt() 2010-08-20 13:03:34 -04:00
Asanka Herath d25d9476b7 Type safety and variable initialization in ASN.1 generated code 2010-08-20 13:03:33 -04:00
Asanka Herath e9160dbcfa Support parallelized builds on Windows 2010-08-20 13:03:32 -04:00
Asanka Herath 8363d30a47 Remove commented code 2010-08-20 15:21:15 +08:00
Love Hornquist Astrand c6ed8b9a66 indent 2010-08-20 00:07:03 -07:00
Love Hornquist Astrand 90a605432e .c -> .obj 2010-08-20 00:05:16 -07:00
Love Hornquist Astrand 27c94fadca bits 2010-08-20 00:03:16 -07:00
Love Hornquist Astrand c073ec126f remove unused stuff 2010-08-20 00:01:49 -07:00
Love Hornquist Astrand 1f226a37b9 try glue in ltm in NTMakefile 2010-08-19 23:55:33 -07:00
Love Hornquist Astrand b00e010309 spelling, from Remi Ferrand 2010-08-19 21:31:10 -07:00
Love Hornquist Astrand 2952862912 add new numbers 2010-08-15 15:27:36 -07:00
Love Hornquist Astrand 763a72b73a enable ltm, add key blinding, add remove tfm 2010-08-15 15:06:58 -07:00
Love Hornquist Astrand 44dfbeb596 add --no-embedded-cert and --embed-leak-only 2010-08-10 10:41:58 -07:00
Love Hornquist Astrand 23a49750c2 make Digestalgorithmidentifier an sequence type 2010-08-10 10:41:31 -07:00
Love Hornquist Astrand 739c79b76b don't add dup digestAlgorithms 2010-08-10 10:40:54 -07:00
Love Hornquist Astrand 49aea1f0b3 allow TSetOf to be sequence types too 2010-08-10 10:33:25 -07:00
Love Hornquist Astrand b11217838e --no-embedded-certs and --embed-leaf-only 2010-08-10 10:20:13 -07:00
Love Hornquist Astrand bcf2cbca83 add HX509_CMS_SIGNATURE_NO_CERTS and HX509_CMS_SIGNATURE_LEAF_ONLY 2010-08-10 10:19:51 -07:00
Love Hornquist Astrand 4bb81d921d add HX509_CMS_SIGNATURE_NO_CERTS and HX509_CMS_SIGNATURE_LEAF_ONLY 2010-08-10 10:19:48 -07:00
Love Hornquist Astrand 5e3e5a6497 test more then one signer 2010-08-10 10:19:16 -07:00
Love Hornquist Astrand dc0fbbf8c9 add hx509_cert_get_{issuer,subject}_unique_id 2010-08-10 09:23:41 -07:00
Love Hornquist Astrand 3e84bcb25a make setting issuerUniqueID and subjectUniqueID independant 2010-08-10 09:22:35 -07:00
Love Hornquist Astrand 94c720a453 add new symbols 2010-08-10 09:22:30 -07:00
Love Hornquist Astrand 56f4eb92cb Allow setting the issuerUniqueID and subjectUniqueID 2010-08-10 08:01:24 -07:00
Love Hornquist Astrand 5dc765aa16 use uppercase OID def 2010-08-08 17:02:48 -07:00
Love Hornquist Astrand 72892fccbb Provide a cpp symbols for oids that is a pointer 2010-08-08 16:56:44 -07:00
Love Hornquist Astrand 1be863f364 change variables to make more sense 2010-08-08 16:10:44 -07:00
Love Hornquist Astrand 1b63db9b6e compare right thing 2010-08-08 16:08:04 -07:00
Love Hornquist Astrand fa4c84e6d6 make printablestring and ia5string octetstrings 2010-08-08 15:51:33 -07:00
Love Hornquist Astrand d79063ee9f add id-secsig-sha-1WithRSAEncryption 2010-08-08 15:49:49 -07:00
Love Hornquist Astrand a0fcf9241a add id-secsig-sha-1WithRSAEncryption 2010-08-08 15:49:18 -07:00
Love Hornquist Astrand 977badd14b fix printf fmt arg warning 2010-08-08 12:29:35 -07:00
Cédric Schieli 901d655ba7 Make sure existing entries can be found by userid
A typo in LDAP__lookup_princ makes using existing LDAP entries broken,
a new entry is always created even if an entry with proper uid and
structural objectclass can be found.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-08-08 08:23:12 -07:00
Love Hornquist Astrand 16feede517 Build test vectors for Simon Josefsson (draft-josefsson-pbkdf2-test-vectors-00) 2010-08-05 00:50:28 -07:00
Russ Allbery 811d9003c1 Remove remnants of srvtab support
Support for manipulating srvtabs was previously removed, but there
were still remnants in command documentation in the ktutil man page
and some declared and exported variables for the keytab ops
definitions for srvtab manipulation.  Remove these additional
remnants.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-08-03 09:09:32 -07:00
Love Hornquist Astrand 95e0827926 add gss_get_name_attribute 2010-08-02 21:15:56 -07:00
Love Hornquist Astrand 84731dcc41 add gss_inquire_name 2010-08-02 21:09:14 -07:00
Patrik Lundin b749ee7921 Remove print that fools kpasswdd.
The output from this print is considered an error message which makes
kpasswdd reject a password even though "APPROVED" is printed afterwards.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-07-23 10:42:34 -07:00
Patrik Lundin 606c549626 Explicitly read input from STDIN.
Kpasswdd supplies the principal name as an argument to the external
script which makes <> try to read from a file with that name.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-07-23 10:42:04 -07:00
Love Hornquist Astrand 083b8b63ee oids no longer compare to GSS_C_NO_OID 2010-07-22 23:21:44 -07:00
Love Hornquist Astrand 1021099f3d rename external so that they can be included in array and struct initializer 2010-07-22 20:47:04 -07:00
Love Hornquist Astrand fae86f1123 disable write support for ndbm 2010-07-22 20:46:53 -07:00
Simon Wilkinson 40ef7759b9 hcrypto: Remove bn.h from rand.h
rand.h doesn't require any symbols defined in bn.h, so don't
include bn.h in the header file. This makes it easier for applications
to include only the symmetric portions of libhcrypto.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-07-21 18:00:21 -07:00
Love Hornquist Astrand b9709e1e01 Disabled write support NDBM hdb 2010-07-21 08:30:57 -07:00
Love Hornquist Astrand 5bac96d338 add NO_WRITE_SUPPORT 2010-07-21 08:29:16 -07:00
Love Hornquist Astrand 94a5df1840 use ct_memcmp 2010-07-20 08:07:23 -07:00
Love Hornquist Astrand baec3d761c allow specifying the engine to use 2010-07-18 16:13:24 -07:00
Love Hornquist Astrand 0de5a6d613 add libtommath 2010-07-18 14:14:09 -07:00
Love Hornquist Astrand aaf598c2fd drop pregen 2010-07-18 14:10:55 -07:00
Love Hornquist Astrand b9754f1def pref numbers and switch to ltm 2010-07-18 14:08:26 -07:00
Love Hornquist Astrand e7c7091ae5 add ltm dh 2010-07-18 13:26:39 -07:00
Love Hornquist Astrand 6c0c936595 select add libtommath 2010-07-18 13:04:03 -07:00
Love Hornquist Astrand 5240043542 use kadmin -l for check, use add instead of add, fix verify-password-quality sub-command
Reported by David Boldt
2010-07-08 16:19:32 -07:00
Love Hornquist Astrand 1a625c0908 ltm-0.41 2010-07-01 10:51:29 -07:00
Love Hornquist Astrand 5ca101c63e fix compile warnings 2010-06-29 11:57:56 -07:00
Love Hornquist Astrand 4f11e546b5 comment + indent 2010-06-29 11:38:12 -07:00
Love Hornquist Astrand a36f3c7d2a if its a multiline query, truncate after the first line 2010-06-29 11:37:44 -07:00
Love Hornquist Astrand 4a6a9d026b Plug double frees, patch orignally from Matthias Dieter Wallnöfer 2010-06-29 08:12:55 -07:00
Love Hornquist Astrand 7639f83561 Use right length. Pointed out by Tom Yu 2010-06-28 20:22:22 -07:00
Love Hornquist Astrand 6e05462c1e DH_compute_key might not include zero pre-filling, add it back. Reported by Tom Yu of MIT Kerberos 2010-06-28 21:50:43 +02:00
Love Hornquist Astrand 18303dcd72 sqlite3-3.6.23.1 2010-06-25 14:34:41 -07:00
Love Hornquist Astrand 6d0e3950a5 add hc_i2d_DHparams 2010-06-16 14:55:51 -07:00
Love Hornquist Astrand 0dcfbd65c9 add i2d_DHparams 2010-06-16 14:55:08 -07:00
Love Hornquist Astrand cda41d7252 add i2d_DHparams 2010-06-16 14:55:04 -07:00
Love Hornquist Astrand ae9088c375 test_dh 2010-06-16 12:24:45 -07:00
Love Hornquist Astrand 3c0d127f72 Add DHParameter from PCKS3 2010-06-16 12:22:13 -07:00
Love Hornquist Astrand 3a29886945 add DHParameter 2010-06-16 12:20:31 -07:00
Love Hornquist Astrand aa7385ea96 propper quoting for doxygen 2010-06-14 20:39:40 -07:00
Love Hornquist Astrand 86b8f64b6e doxygen fixes 2010-06-14 20:39:04 -07:00
Love Hornquist Astrand 4c43f933d3 split signedpath from PAC verification 2010-06-12 21:34:55 -07:00
Love Hornquist Astrand a70b912972 only resign PAC if there is a verified PAC on the way in 2010-06-11 09:55:10 -07:00
Love Hornquist Astrand 75c8250abf Tell if we manged to verify the PAC or not 2010-06-11 09:53:47 -07:00
Russ Allbery bf9ee30c44 Rephrase the PKINIT setup instructions
Rephrase and reword the PKINIT setup documentation to be in somewhat
more idiomatic English.  There should be no changes to the substance
of the documentation.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-06-11 09:49:58 -07:00
Russ Allbery cd1f1dd75e Rewrite the transit policy section
Expand the transit policy section considerably, with additional
examples and explanation of the examples.  Separate allowing
cross-realm transits from configuring clients to do cross-realm
transits.  Add a separate example section for an Active Directory
forest.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-06-11 09:25:57 -07:00
Love Hornquist Astrand dfd107c709 Test principal name with aliases in them 2010-06-09 22:21:12 -07:00
Love Hornquist Astrand 37762d631c Don't use invalid base64 encoded string, just use plain password instead 2010-06-04 14:40:31 -07:00
Love Hornquist Astrand 91020dd11d add cfb8-aes modes 2010-06-03 17:20:40 -07:00
Love Hornquist Astrand efa5a314a8 fix warnings 2010-06-03 16:16:48 -07:00
Love Hornquist Astrand abd5fdab5a Patch from Eray Asian to avoid PK-INIT when its not supported 2010-06-03 14:16:48 -07:00
Love Hornquist Astrand f73a7b94d0 test kadmind get -o 2010-06-03 11:44:14 -07:00
Love Hornquist Astrand faa1528394 make http transport work again 2010-06-02 08:32:03 -07:00
Love Hornquist Astrand 93d3d14827 test HTTP transport 2010-06-02 08:30:29 -07:00
Love Hornquist Astrand 45158c861e document allow_weak_crypto 2010-06-02 08:14:47 -07:00
Love Hornquist Astrand a11303a4ca make tfm default 2010-06-01 20:24:52 -07:00
Love Hornquist Astrand 3f56365be0 don't reinit variable 2010-06-01 19:18:24 -07:00
Love Hornquist Astrand 2527594a5c If build with libcrypto, load the openssl engine 2010-06-01 17:17:21 -07:00
Love Hornquist Astrand de4cee4dd7 speed for rsa 2010-06-01 17:16:25 -07:00
Love Hornquist Astrand 4f90bb51d2 add gmp 2010-06-01 17:11:29 -07:00
Love Hornquist Astrand f41c361718 make almost work 2010-06-01 17:10:57 -07:00
Love Hornquist Astrand 3c8d9ef8d5 more symbols 2010-06-01 15:07:43 -07:00
Love Hornquist Astrand 40327e0cf3 add more generate 2010-06-01 15:07:17 -07:00
Love Hornquist Astrand 661ce3d1a4 add more generate 2010-06-01 15:07:07 -07:00
Love Hornquist Astrand 8bb2de2e3f test --time-key=generate 2010-06-01 15:06:53 -07:00
Love Hornquist Astrand 3d4eabb5ea more testing 2010-06-01 15:05:07 -07:00
Love Hornquist Astrand 86da42df1d abstract out --no-afslog and --no-unlog 2010-06-01 14:42:16 -07:00
Love Hornquist Astrand d94ba7a5de its just expand_path.c now 2010-06-01 11:17:46 -07:00
Love Hornquist Astrand 36bfbfc1d8 add fp_init_multi and fp_find_prime 2010-06-01 11:16:20 -07:00
Love Hornquist Astrand 5377497d47 add dh-tfm.obj 2010-06-01 11:02:56 -07:00
Love Hornquist Astrand dc1baf6ab4 only support DS record conversion if DNS_TYPE_DS is defined 2010-06-01 10:54:47 -07:00
Love Hornquist Astrand 10ad3df8f5 use size_t for lengths 2010-06-01 10:46:57 -07:00
Magnus Holmberg 086885744c Fix argument order of strlcpy
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-06-01 10:25:01 -07:00
Love Hornquist Astrand ccacfda1cc dont pass --no-unlog if afs is not configured. Patch partly from Eray Asian 2010-06-01 10:17:37 -07:00
Love Hornquist Astrand 29cf9c937e Add $(INCLUDE_hcrypto), from harald barth 2010-06-01 09:56:33 -07:00
Love Hornquist Astrand df45fec393 plug memory leak 2010-05-30 15:39:12 -07:00
Love Hornquist Astrand 33b8ccccd6 catch error from as.*printf 2010-05-30 15:13:44 -07:00
Love Hornquist Astrand e65154c6db catch error from as.*printf 2010-05-30 14:48:48 -07:00
Love Hornquist Astrand f337b458f3 catch error from as.*printf 2010-05-30 14:16:35 -07:00
Love Hornquist Astrand 0b2b9d9834 catch error from as.*printf 2010-05-30 14:12:39 -07:00
Love Hornquist Astrand 2b1645aa08 catch error from as.*printf 2010-05-30 13:44:41 -07:00
Love Hornquist Astrand 077357c848 catch error from as.*printf 2010-05-30 13:37:07 -07:00
Love Hornquist Astrand 788189805c catch error from as.*printf 2010-05-30 13:28:49 -07:00
Love Hornquist Astrand 351e0d0914 catch error from as.*printf 2010-05-30 13:28:09 -07:00
Love Hornquist Astrand 9773655027 catch error from as.*printf 2010-05-30 12:41:06 -07:00
Love Hornquist Astrand f4f59121c3 allow password reuse for a short time after it was set last time
Patch from Harald Barth
2010-05-28 13:40:37 -07:00
Love Hornquist Astrand f2c29f2b1e use ret 0 2010-05-27 12:43:09 -05:00
Love Hornquist Astrand 44fd145d05 always use _krb5_expand_path_tokens 2010-05-27 12:31:23 -05:00
Love Hornquist Astrand 886914f8f9 always use _krb5_expand_path_tokens 2010-05-27 12:25:47 -05:00
Love Hornquist Astrand f9481967c7 clean up 2010-05-27 12:20:36 -05:00
Love Hornquist Astrand 869b099f00 remove _w32 2010-05-27 11:56:03 -05:00
Love Hornquist Astrand 88c5f75b16 remove _w32 and support unix enviroments too 2010-05-27 11:55:20 -05:00
Love Hornquist Astrand 58022d0721 use _krb5_expand_path_tokens 2010-05-27 11:54:39 -05:00
Love Hornquist Astrand f97ce2849d remove unused functions 2010-05-27 11:08:51 -05:00
Love Hornquist Astrand 2664543dd5 spelling 2010-05-27 10:41:39 -05:00
Love Hornquist Astrand 7f6734138e use lu and typecast to avoid warning for sizeof() between 32 and 64 bit hosts 2010-05-27 10:40:59 -05:00
Love Hornquist Astrand 83b86bf013 add fp_radix_size 2010-05-27 10:40:05 -05:00
Love Hornquist Astrand 90cb0ecae6 Windows fixes from Asanka Herath 2010-05-27 10:10:06 -05:00
Love Hornquist Astrand 585e5bb0d0 1.3.3 release 2010-05-26 16:49:00 -05:00
Love Hornquist Astrand 05e836e7c6 add data-mkey.mit.des3.be and data-mkey.mit.des3.le 2010-05-26 14:37:26 -05:00
Love Hornquist Astrand a7e8f05c9b Check the GSS-API checksum exists before trying to use it [CVE-2010-1321]
This was introduced by checking the Kerberos 5 checksum as a
alternative to the 8003 checksum.

Thanks to MIT Kerberos and Shawn Emery for forwarding this issue
2010-05-26 11:53:31 -05:00
Love Hornquist Astrand 7ecd5b5f9d Check NULL pointer before dereference them
Found by Russ Allbery
2010-05-26 11:45:17 -05:00
Love Hornquist Astrand e745e97c3f 4.3.5 failes 2010-05-26 11:20:21 -05:00
Asanka Herath b252f38c4c .gitgnore Windows artifacts 2010-05-26 12:19:29 -04:00
Asanka Herath 85f6e6d670 Build Tom's fast math library on Windows 2010-05-26 12:17:30 -04:00
Asanka Herath 0d17cbefee Update Windows build environment
We are building both 32-bit and 64-bit binaries.  The output directory
is no longer called out32.  Instead it's just called 'out'.  Also
support deeper directories.
2010-05-26 12:16:19 -04:00
Love Hornquist Astrand abcbfe08fb don't use python if (!maintainer mode and we have built files) 2010-05-26 11:03:41 -05:00
Love Hornquist Astrand e404c9db96 indent 2010-05-26 10:45:53 -05:00
Love Hornquist Astrand 3108d93489 add and use fp_isneg 2010-05-26 10:45:15 -05:00
Love Hornquist Astrand 658d110d4a add tfm dh (and some missing files) 2010-05-26 10:27:32 -05:00
Love Hornquist Astrand b09eac50ee clean up 2010-05-26 10:19:07 -05:00
Love Hornquist Astrand b59734d941 add TomsFastMath 2010-05-26 10:13:13 -05:00
Love Hornquist Astrand a45d584792 add tfm dh (and some missing files) 2010-05-26 10:07:11 -05:00
Asanka Herath 3e2b840565 Try both fd and socket ops for net_read() and net_write()
When using WinSock, a socket is not a file descriptor and does not
interoperate with read()/write().  File descriptors do not work with
send()/recv().  However, for net_read() and net_write(), we don't know
whether we are dealing with a socket or a file descriptor.  So try
one, and if it fails, try the other.

This is an ugly hack until we clean up the users of this API so it
doesn't use sockets and fds interchangably.
2010-05-26 10:38:44 -04:00
Asanka Herath 5c0f3f99c6 Use path tokens when locating plug-in .dlls 2010-05-26 10:38:44 -04:00
Asanka Herath b9567cb158 Don't attempt to release unallocated resource in fcc_move() 2010-05-26 10:38:43 -04:00
Asanka Herath b9dc82e09e Fix slashes while expanding path tokens
On Windows, some (external) APIs get confused if we mix both back and
forward slashes.  When expanding path tokens we use back-slashes for
token expansions because they come from the OS.  For consistency, fix
the path so that the remaining path separators are also backslashes.
2010-05-26 10:38:43 -04:00
Asanka Herath 6d132f1d7d Remove spurious slash when expanding path tokens
Path tokens that expand to directories are expected to end in a slash.
2010-05-26 10:38:42 -04:00
Asanka Herath 500603506f Link libkrb5 against DNSAPI.lib on Windows 2010-05-26 10:38:42 -04:00
Asanka Herath 884f5ac627 Use WinDNS on Windows for DNS 2010-05-26 10:38:41 -04:00
Asanka Herath a750f29cda _getch() can return '\r' on Windows 2010-05-26 10:38:40 -04:00
Asanka Herath 7b8ebf0efe Fix return value of w32crypto_bytes() and use correct data types 2010-05-26 10:38:40 -04:00
Asanka Herath e7337145ee Define HAVE_WINDNS and NO_LIMIT_FD_SETSIZE
HAVE_WINDNS is defined when we want to use DNSAPI on Windows which
handles most of the resolver work for us.

NO_LIMIT_FD_SETSIZE is defined if the value of a socket FD does not
imply anything about the number of sockets so far assigned.
I.e. checking if the socket is larger than FD_SETSIZE is incorrect.
2010-05-26 10:38:39 -04:00
Asanka Herath 154de6b3a3 krb5_kuserok() only does the local principal test on Windows
Remove the other tests for now.  The file and directory access checks must be
made against the respective DACLs.
2010-05-26 10:38:39 -04:00
Asanka Herath f54630328b strlen() returns a size_t 2010-05-26 10:38:38 -04:00
Asanka Herath 716121bc60 Don't break build if cleanup fails 2010-05-26 10:38:37 -04:00
Love Hornquist Astrand 323ccec648 add support to generate keys 2010-05-26 09:31:23 -05:00
Love Hornquist Astrand fa5a1cb201 tomcrypt rsa 2010-05-22 13:19:48 -07:00
Love Hornquist Astrand d631443133 Support both BE and LE MIT master key file formats
Prompted by discussion on heimdal-discuss by Michael Wood, Russ Allbery,
and Henry B. Hotz.
2010-05-22 13:16:52 -07:00
Love Hornquist Astrand 3c58379590 tomsfastmath version of rsa, keygen missing 2010-05-19 22:29:07 -07:00
Love Hornquist Astrand 0e97f54b54 man fixes
Add two cross references, expansion of PAG, and expansion of the -c
argument to the OpenBSD tech list earlier.

From Lars Nooden
2010-05-03 10:38:41 +02:00
Love Hornquist Astrand fd107d08c4 use case compare for teletex string 2010-05-01 11:47:02 +02:00
Love Hornquist Astrand af0f2717c2 test case compare 2010-05-01 11:45:40 +02:00
Love Hornquist Astrand eec74bd2fe Wrap SOCK_CLOEXEC in ifdef, from Harald Barth 2010-04-30 15:15:58 +02:00
Simon Wilkinson 994e8641c0 hcrypto: Don't explicitly include system headers
Don't explicitly include system headers in hash.h. These get pulled
in anyway through roken.h, and explicitly including them here makes
compiling hcrypto in the kernel much harder.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-04-29 16:43:48 +02:00
Love Hornquist Astrand 2a842e90d3 Drop MD2 support
Patch partly from Guillaume Rousse
2010-04-28 22:10:27 +02:00
Simon Wilkinson 887993e8b3 Add mutex protection for the fortuna PRNG
The fortuna PRNG has an statically held internal state. Prevent
concurrent access to this internal state by adding mutexes around
all of the access classes.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-04-19 14:26:53 +02:00
Love Hornquist Astrand dd34c02329 spelling, from Tollef Fog Heen via Brian May of Debian 2010-04-11 16:36:15 -07:00
Love Hornquist Astrand b7c0365677 fix documentation 2010-04-08 15:36:27 -07:00
Love Hornquist Astrand c29933e1f5 set reply_key to NULL 2010-04-07 23:01:46 -07:00
Love Hornquist Astrand 312f4f9bd6 GSS_C_NO_OID matches nothing, not even it-self, document function 2010-03-30 11:18:49 -07:00
Love Hornquist Astrand aa371571f9 insert _FLAG into the name 2010-03-29 19:08:00 -07:00
Love Hornquist Astrand cf35620ecf name flag 1 as KRB5_INIT_CREDS_STEP_CONTINUE 2010-03-29 18:55:41 -07:00
Love Hornquist Astrand a76daa7e35 support WIND_PROFILE_LDAP_CASE 2010-03-29 01:13:30 -07:00
Andrew Bartlett d9f4d53dda s4:heimdal Use correct variable to advance past -- options in kpasswd
This bug was introduced when kpasswd was migrated to a local getarg()
call, in Heimdal commit 7dd146072c

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-03-27 01:20:52 -07:00
Love Hornquist Astrand aaf310f99e constify 2010-03-23 20:20:51 -07:00
Love Hornquist Astrand de6da2f212 add people 2010-03-21 22:09:54 -07:00
Love Hornquist Astrand 096902359f 1.3.2 2010-03-21 21:36:35 -07:00
Love Hornquist Astrand 4660ec8358 check for underruns 2010-03-21 21:05:21 -07:00
Love Hornquist Astrand d02418be27 windows doesn't have /dev/random 2010-03-21 16:44:30 -07:00
Love Hornquist Astrand 08572822da use pathp for pathbased file names 2010-03-21 16:07:45 -07:00
Love Hornquist Astrand 408e3420d1 try hard to unset HOME and randfile 2010-03-21 16:06:34 -07:00
Love Hornquist Astrand 83e2a17c0f document more assumptions about hdb_rename 2010-03-21 14:56:57 -07:00
Love Hornquist Astrand d837f736f8 Make locking work when doing rename, rename assume db in not ->hdb_open'ed. 2010-03-21 14:55:36 -07:00
Love Hornquist Astrand c491b59007 pull out unix /dev/random if we cant get users home directory 2010-03-21 11:01:24 -07:00
Love Hornquist Astrand 76122d97c2 Test emptier environment 2010-03-21 10:59:26 -07:00
Love Hornquist Astrand fc9aff2260 log the source too 2010-03-21 09:41:20 -07:00
Love Hornquist Astrand 3ac7d626c2 log failures 2010-03-21 09:37:42 -07:00
Love Hornquist Astrand 32d148b2f8 Check for dd_fd in DIR not struct dirent
Pointed out by Ragnnar Sundblad in private mail
2010-03-21 09:08:46 -07:00
Love Hornquist Astrand fea82013eb Check for dd_fd in DIR not struct dirent
Pointed out by Ragnnar Sundblad in private mail
2010-03-21 08:58:33 -07:00
Love Hornquist Astrand ad2de1222f spelling 2010-03-20 15:25:55 -07:00
Love Hornquist Astrand cfb43997ae define YY_NULL 2010-03-20 14:44:16 -07:00
Love Hornquist Astrand b0a79dcd40 Improve the dns retry logic
Bug reported by Richard Silverman on heimdal-bugs
2010-03-19 14:19:43 -07:00
Love Hornquist Astrand d3efb7d043 don't bother supporting KRB5_AUTHDATA_SIGNTICKET_OLD 2010-03-19 13:58:45 -07:00
Love Hornquist Astrand 24e2001f51 support old SIGNTICKET too 2010-03-19 13:56:20 -07:00
Love Hornquist Astrand 3af54e67d9 Renumber signedticket to 512 since 142 was stolen. 2010-03-19 13:44:51 -07:00
Andrew Tridge 6bff49a89d memset the right length of the {i,o}pad data, memset opad not ipad in the opad case (typo)
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-03-18 10:59:51 -07:00
Love Hornquist Astrand f26d6c2398 (krb5_set_default_in_tkt_etypes): filter out unwanted enctypes
Needed for Samba that tries really hard to use DES encryption types.

Reported by Natanael Copa on heimdal-discuss
2010-03-17 09:30:11 -07:00
Love Hornquist Astrand 523c393829 Better error message for decomp 2010-03-17 06:21:56 -07:00
Love Hornquist Astrand a6f9dfc5ad drop krb4 2010-03-16 20:43:24 -07:00
Love Hornquist Astrand 433b1d5073 drop RCSID 2010-03-16 12:52:58 -07:00
Love Hornquist Astrand dde9ae659b drop RCSID 2010-03-16 12:50:09 -07:00
Russ Allbery 97648fc257 Disable kpasswdd error replies to completely malformed requests
Only send an error reply if the request passes basic verification.
Otherwise, kpasswdd would reply to every UDP packet, allowing an
attacker to set up a ping-pong DoS attack via a spoofed UDP packet with
a source address of another UDP service that also replies to every
packet.

Also suppress the error reply if ap_req_len is 0, since this indicates
an error packet.  An error packet may be the result of a ping-pong
attacker pointing us at another kpasswdd.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-03-16 11:50:22 -07:00
Russ Allbery 5230b2f8f5 Discard old keys in MIT dump files in hprop
An MIT dump file may contain multiple key sets for one principal, with
different kvnos.  The Heimdal database can only represent a single
kvno, and previously the kvno was set to the last key found in the entry
and all keys were added to the entry.  Since kvnos are given from high
to low in the database dump, this would result in the principal getting
the kvno of the oldest key and all keys stored without regard for kvno.

Instead, ignore all keys with kvnos lower than the first kvno we see and
only store keys with a kvno matching it.  If we see a key with a kvno
higher than the first kvno we see, exit with an error since that case is
not currently handled (and should not happen in a typical MIT database
dump).

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-03-16 11:48:15 -07:00
Matthias Dieter Wallnöfer 69ea9b38e9 heimdal - fix overlapped identifiers in the "krb5" library
heimdal - fix overlapped identifiers in the "krb5" library

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-03-16 10:05:35 -07:00
Love Hornquist Astrand 50990d61cf free always "ctx->password" when it isn't needed anymore
Patch originally from Matthias Dieter Wallnöfer, changed by me to keep
clearing the password from memory.
2010-03-16 10:04:20 -07:00
Love Hornquist Astrand 313a2243bb Allow users to specify their own configuration file ~/.krb5/config
Idea from Rune L on heimdal-discuss
2010-03-16 09:09:27 -07:00
Harald Barth a06a40dd77 dont use modern syntax to please old makeinfo 2010-03-15 05:05:10 -07:00
Love Hornquist Astrand 33d80cbcfc include roken.h 2010-03-12 09:04:39 -08:00
Love Hornquist Astrand cf1b11f8a0 export more 2010-03-11 23:35:26 -08:00
Love Hornquist Astrand 6da28e73eb move same ifdef magic from roken-common.h.in to here, use strerror() 2010-03-11 23:35:00 -08:00
Love Hornquist Astrand 7d9335ce69 in the STRERROR_R_PROTO_COMPATIBLE case, only provide a rk_strerror_r function if there is a broken prototype
From harald barth.
2010-03-11 18:40:47 -08:00
Love Hornquist Astrand e57bd85101 spelling 2010-03-10 20:05:31 -08:00
Love Hornquist Astrand f2611400b0 Set e_text for more cases 2010-03-07 02:44:25 -08:00
Love Hornquist Astrand ae74dc7316 allow a cross realm ticket returned in the non referrals case 2010-03-07 01:02:02 -08:00
Love Hornquist Astrand 03262460dd use krb5_principal_is_krbtgt 2010-03-07 01:01:32 -08:00
Love Hornquist Astrand 71150bb1bc add krb5_principal_is_krbtgt 2010-03-07 01:00:48 -08:00
Love Hornquist Astrand a46bc97443 Windows code never calls dirfd, avoid warning 2010-02-27 19:23:08 -08:00
Love Hornquist Astrand 94a8d9c5e5 autoconf test for dirfd and dd_fd 2010-02-25 22:18:32 -08:00
Love Hornquist Astrand 53024a5a22 start to document gss_import_name 2010-02-21 23:21:58 +01:00
Love Hornquist Astrand 521098738c document gss_release_name 2010-02-21 23:21:43 +01:00
Love Hornquist Astrand a40c4855ed provide complete krb5-mit.conf 2010-02-21 07:03:46 -08:00
Love Hornquist Astrand 564fe5cb05 remove heimdal-db* 2010-02-21 07:01:30 -08:00
Love Hornquist Astrand 24eeb74c4a make getnameinfo quiet by default 2010-02-20 14:01:53 -08:00
Love Hornquist Astrand 7c86764dea make getifaddrs quiet by default 2010-02-20 13:59:39 -08:00
Love Hornquist Astrand e297702f78 split dist and nodisk source for heim_ipc[cs]
So that the generated files doesn't have to be built on host w/o mig,
reported by Jelmer Vernooij on heimdal-discuss
2010-02-20 11:22:07 -08:00
Ingo Schwarze 0b2eece5be Do not use nested displays. Found by and unbreaking the build with mandoc(1). I will also send this patch upstream. OK todd@ jmc@
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-20 11:21:26 -08:00
Guido Günther 45a94f309b Use libcapng to drop all privileges
except for CAPNG_NET_BIND_SERVICE so we can bind to ports < 1024.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-18 19:08:45 -08:00
Love Hornquist Astrand ec18315352 drop autobuild 2010-02-18 19:08:24 -08:00
Love Hornquist Astrand 90397c9e4b drop autobuild 2010-02-18 19:07:25 -08:00
Love Hornquist Astrand 3ddb2af8d5 more flags and stuff 2010-02-13 17:41:33 -08:00
Love Hornquist Astrand 33e9da40b4 *** empty log message *** 2010-02-13 17:39:08 -08:00
Love Hornquist Astrand 61d6c3b9c5 add flags in gssapi_context_flags 2010-02-13 17:38:56 -08:00
Love Hornquist Astrand 53f7c6be92 more refs 2010-02-13 17:28:29 -08:00
Love Hornquist Astrand 57332c9b7d gssapi_mechs_intro 2010-02-13 17:28:13 -08:00
Love Hornquist Astrand b7581f5dcb document more about mechs 2010-02-13 17:27:14 -08:00
Love Hornquist Astrand 96852bdc79 list contants for mechs 2010-02-13 17:23:09 -08:00
Love Hornquist Astrand 84b58b78b6 start of documention of gss_init_sec_context 2010-02-13 17:14:46 -08:00
Love Hornquist Astrand 711ef346a0 move krb5_set_home_dir_access() group krb5 2010-02-10 18:26:46 -08:00
Love Hornquist Astrand c9a0c39786 add check for [libdefaults_entries]allow_weak_crypto 2010-02-04 16:13:06 -08:00
Russ Allbery bc3d8992cd Don't attempt to load a password quality verifier from NULL
When kadm5_add_passwd_quality_verifier is called with a NULL
check_library parameter and [password_quality].policy_libraries
is set, the function calls add_verifier() for each string in the
policy_libraries section and then falls through to the non-NULL
case and calls add_verifier() a final time with a NULL argument.
This leads to dlopening the running executable and then failing
since it contains no password quality verifier.

If the check_library argument is NULL, only call add_verifier()
for the configured policy_libraries and do not fall through to
the non-NULL case.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-02 20:46:23 -08:00
Russ Allbery f3a559b3c2 Ensure data structures allocated by hprop are initialized
Use calloc instead of malloc when allocating data structures while
importing a dump in hprop.  Fixes a crash in hprop when reading MIT
dump files due unintialized memory in the Salt data structure, plus
will be more robust against any future changes to the data model.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-02 20:43:48 -08:00
Love Hornquist Astrand 04d3215d39 _wind_ucs2read is not a private symbol 2010-02-02 20:16:47 -08:00
Russ Allbery e7d997e8ee Comment .gitignore
Add some header comments and an introductory comment explaining how to
check that no rule ignores files present in the repository.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-02 19:37:44 -08:00
Russ Allbery dc2b09f167 Remove lib/hx509/*.pem files from .gitignore
These files are included in the repository and don't have makefile
rules to generate them, so don't ignore them.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-02 19:37:28 -08:00
Russ Allbery 92a17668e5 Flesh out .gitignore
Update .gitignore to include all the files generated during a normal
build on Debian squeeze.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-02 19:36:46 -08:00
Russ Allbery d5970c0851 Report mkvno as unknown
When the principal is retrieved from the database via libkadm5srv, the
keys are always decrypted, so the reported mkvno is always 0.  Rather
than returning 0 and implying that the key in the database is not
encrypted, report the mkvno as unknown for right now.

A better fix is required to either not decrypt the keys when retrieving
get information or to get the mkvno before keys are decrypted.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-02 19:36:20 -08:00
Love Hornquist Astrand 117652f353 Disable kadmind.exe since currently it doesn't build 2010-02-02 19:29:55 -08:00
Russ Allbery 3d715adc21 Rename the database after closing it in hpropd
If a Berkeley DB database is used as the underlying database, renaming
the database before closing it can produce error messages like the
following on close:

/var/lib/heimdal-kdc/heimdal~.db: unable to flush: No such file or directory

since the underlying database library caches the old file name.  There
is a rename() method in the Berkeley DB API, but it also invalidates
the database handle and requires that it be reopened.  Since the
hdb_rename implementation does not require that the database be open,
close the database before renaming it to avoid this problem.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-02 13:27:48 -08:00
Russ Allbery 20c65310ea Support MIT dump formats 5 and 6 in hprop
Dump formats 5 and 6 differ from the supported version 4 dump format
only in that they include policy information for each principal in an
extension that the dump parsing code already knows how to ignore and
that they include policy lines.  Ignore the policy information, since
there isn't a corresponding concept in Heimdal, and accept the new
dump format versions.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-02 13:27:36 -08:00
Russ Allbery 73d0fc23a4 Store last password change date when parsing MIT dumps in hprop
If the MIT dump file includes a last password change date, allocate
a database extension structure to hold that information and include
it in the corresponding Heimdal database entry.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-02-02 13:27:10 -08:00
Russ Allbery 01d54cacc9 Allow weak crypto in hprop
hprop may be decrypting an old database encrypted with a DES master
key, in which case it shouldn't fail because DES is disabled by default.

This could permit weak enctypes to be used when authenticating to a
remote hpropd, although stronger enctypes are still preferred.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-01-27 21:57:32 -08:00
Russ Allbery 8a57d5cb08 Add krb5_allow_weak_crypto API to enable weak enctypes
Add krb5_allow_weak_crypto parallel to the API introduced in MIT
Kerberos 1.8.  Enables or disables all enctypes marked as weak.
Add a new enctype flag marking weak enctypes (all of the ones that
are disabled by default).

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-01-27 21:50:58 -08:00
Love Hornquist Astrand 560fc640bb Lowercase linux, from Harald Barth 2010-01-26 22:14:59 -08:00
Love Hornquist Astrand 908ece3604 Adapt for Linux with SOCK_CLOEXEC, patch from Harald Barth 2010-01-26 10:46:51 -08:00
Love Hornquist Astrand 4376b6c8b1 spelling 2010-01-25 23:50:37 -08:00
Love Hornquist Astrand 2fbdb6a514 rewrite socket to rk_socket of there is SOCK_CLOEXEC and there is linux, prompted by Harald Barth 2010-01-25 23:01:18 -08:00
Love Hornquist Astrand deee0bbad9 put SOCK_CLOEXEC in the right argument, from Harald Barth 2010-01-25 23:01:09 -08:00
Russ Allbery 4038832098 Export krb5_principal_get_num_comp
krb5_principal_get_num_comp was prototyped as a public function but
not exported from libkrb5.  Add it to the export version map.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-01-25 22:39:14 -08:00
Love Hornquist Astrand 609e8dd156 reset GSS_C_DELEG_FLAG when there is no consumer 2010-01-19 21:22:53 +00:00
Russ Allbery 3441bbb98e Clarify documentation of password quality check modules
Be clearer in the info documentation that the part of the policy
name before the colon is the name of the module, not the static
string "module".  State explicitly that "builtin" can be used as the
module name to identify built-in policies.

Use the same terminology in kadm5_pwcheck(3) as the info documentation,
changing test-name to policy-name and vendor to module-name.  State
explicitly how the module name and policy name are used to select which
policies to run.

Rephrase a few sentences, add a paragraph break, and fix a few typos
for clarity.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-01-15 23:33:25 +00:00
Russ Allbery 80317bbd20 Pass external password quality program name as first argument
Pass the path to the external password quality program as the first
argument to the program and the principal as the second argument, as is
conventional, rather than passing only the principal.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2010-01-14 23:38:17 +00:00
Love Hornquist Astrand 1f4bb75eef Only free hx509ctx if its actually allocated 2010-01-12 17:47:54 -08:00
Love Hornquist Astrand 1b3a8d3032 just close socket 2010-01-08 14:19:21 +01:00
Love Hornquist Astrand 3b51f94c2b Make compile on pre-leopard (Tiger needs CSSM_SIZE), From Quanah Gibson-Mount 2010-01-08 13:17:47 +01:00
Love Hornquist Astrand 461c1b1535 check for CommonCrypto/CommonDigest.h since it doesn't exists on Tiger 2010-01-08 13:13:10 +01:00
Love Hornquist Astrand 9200bb1738 Wrap <CommonCrypto/CommonDigest.h> with ifdef since it doesn't exists on Tiger 2010-01-08 13:12:44 +01:00
Love Hornquist Astrand f6e0d19cc0 make rk_SOCK_EXIT a statment to avoid warnings 2010-01-08 13:08:24 +01:00
Love Hornquist Astrand c24a7d2d80 fix const-ifyier on cc-ops 2010-01-08 13:07:27 +01:00
Love Hornquist Astrand 26770c90f3 move unused variable to inside #ifdef 2010-01-08 12:59:35 +01:00
Love Hornquist Astrand f3ea26c759 remove unused variable 2010-01-08 12:58:20 +01:00
Love Hornquist Astrand 3cc8e8bfc7 listen for http requests 2010-01-06 12:54:54 +01:00
Love Hornquist Astrand 8857c285e8 build ts-http 2010-01-06 12:54:27 +01:00
Love Hornquist Astrand dad3296f64 expose SIPC_TYPE flags 2010-01-06 12:54:09 +01:00
Love Hornquist Astrand 0f5267b97f Make http connections work 2010-01-06 12:53:52 +01:00
Love Hornquist Astrand 1354b6650b clean up http support 2010-01-06 10:42:28 +01:00
Love Hornquist Astrand 68d2f52ad4 fixup prototype 2010-01-06 10:42:16 +01:00
Love Hornquist Astrand 6847593406 Include <base64.h>. 2010-01-06 10:40:53 +01:00
Love Hornquist Astrand eab88ad791 Include <ctype.h>. 2010-01-06 10:36:12 +01:00
Love Hornquist Astrand ef30147831 Add Secure Endpoints, Inc 2010-01-05 19:23:38 +01:00
Love Hornquist Astrand 8aed9dceeb need to fix lib/krb5/expand_path_w32.c 2010-01-05 19:21:45 +01:00
Love Hornquist Astrand 2711882f3f Add bits to support HTTP in server 2010-01-04 16:11:18 +01:00
Love Hornquist Astrand 48504c5771 [Heimdal-704] export encode_Key/length_Key, from Jan Rekorajski 2010-01-04 13:14:11 +01:00
Love Hornquist Astrand e5bc5d6a32 happy new year 2010-01-02 17:57:12 +01:00
Love Hornquist Astrand 6a7810d12f Export initialize_hdb_error_table_r and free_Salt, requested by Jelmer Vernooij in Debian bug #56275 2010-01-02 17:53:57 +01:00
Love Hornquist Astrand 51717efb34 Export kdc_check_flags, requested by Jelmer Vernooij in Debian bug #56275 2010-01-02 17:51:57 +01:00
Love Hornquist Astrand 102087bd67 export GSS_KRB5_CRED_NO_CI_FLAGS_X, needed by samba 2010-01-02 17:48:26 +01:00
Love Hornquist Astrand d65ba36a5e replace exeext too 2010-01-01 13:33:47 +01:00
Love Hornquist Astrand 332f988737 make verify checksum ct 2010-01-01 13:09:22 +01:00
Love Hornquist Astrand dd04b1d7ba make DES_is_weak_key ct 2010-01-01 13:08:04 +01:00
Love Hornquist Astrand 212a3ea09a test weak keys 2010-01-01 13:07:20 +01:00
Love Hornquist Astrand dd9e076e47 reorder to remove if (0); 2009-12-25 10:45:26 +01:00
Love Hornquist Astrand 15cff173a2 Use #ifdef SIGXCPU instead of #ifndef NO_SIGXCPU 2009-12-25 10:44:40 +01:00
Love Hornquist Astrand 5b515900d6 NO_INETD removed 2009-12-25 10:42:50 +01:00
Love Hornquist Astrand b914fd57c5 remove NO_INETD by shuffling code around 2009-12-25 06:37:57 +01:00
Love Hornquist Astrand 02e980612e make #ifdef positive, add comments 2009-12-24 07:19:49 +01:00
Love Hornquist Astrand 08d12ee6e0 implement RAND_pseudorand for the w32 provider in terms of w32crypto_bytes 2009-12-24 07:13:15 +01:00
Love Hornquist Astrand 95888d4ad3 rk_cloexec_dir uses dirfd that is not available on windows
All unixes have something like it, roken provides macro if not available.
2009-12-23 19:38:21 +01:00
Love Hornquist Astrand 3a09421025 no dirent.h, use dirent.hin instead 2009-12-23 19:29:40 +01:00
Love Hornquist Astrand 354cb547f9 minor windows merge stuff 2009-12-23 17:07:53 +01:00
Love Hornquist Astrand 7a7061ac70 use strtol 2009-12-23 17:07:36 +01:00
Love Hornquist Astrand 5d76236458 Kerberos library tracing 2009-12-23 17:07:16 +01:00
Love Hornquist Astrand 93e0cc80f4 make use rk_SOCK_ERRNO, make compile again 2009-12-23 14:36:52 +01:00
Love Hornquist Astrand f798af41a0 change #ifdef to make this compile 2009-12-23 14:31:28 +01:00
Love Hornquist Astrand e35864d267 Merge in last changes from Asanka for the win32 port
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-12-23 14:17:43 +01:00
Love Hornquist Astrand be73fa4687 use krb5_socket_t 2009-12-23 14:12:38 +01:00
Love Hornquist Astrand 160ddd0e43 use rk_closesocket 2009-12-23 14:06:37 +01:00
Love Hornquist Astrand 8d28c442d5 Merge branch 'master' into win32-port 2009-12-23 14:03:37 +01:00
Asanka Herath 68cfbb7e19 Add rk_cloexec_dir() to lib/roken 2009-12-22 14:03:39 -05:00
Guido Günther 33f3be4d52 Don't free the hx509ctx
otherwise we crash if we fail to init certs (e.g. due to missing
smartcard).

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-12-22 18:49:39 +01:00
Asanka Herath ff11a8ae43 Merge remote branch 'lha/master' into win32-port2
* lha/master:
  Clean kadm5-pwcheck.h
  rename closesocket to rk_closesocket
  Log what principal was used in the failure case
2009-12-22 11:05:03 -05:00
Love Hornquist Astrand ecf9e3c989 Clean kadm5-pwcheck.h 2009-12-22 13:36:58 +01:00
Love Hornquist Astrand 4182a61eba rename closesocket to rk_closesocket 2009-12-22 09:03:05 +01:00
Love Hornquist Astrand 10a5976e45 Log what principal was used in the failure case 2009-12-22 07:36:01 +01:00
Asanka Herath 27115dea15 Correct whitespace errors 2009-12-21 18:06:23 -05:00
Asanka Herath 7f5b105fd6 Fix exports 2009-12-21 18:06:05 -05:00
Asanka Herath 16faee892e Use correct socket glue and try to maintain constness 2009-12-21 18:05:39 -05:00
Asanka Herath 4eb90e1c8c Use correct socket glue 2009-12-21 18:02:32 -05:00
Asanka Herath a0ae9f5a0e Merge remote branch 'h-github/master' into win32-port2
* h-github/master: (64 commits)
  refix socket wrappers with rk_
  Patch from Secure Endpoints/Asanka Herath for windows support
  unset KRB5CCNAME
  its really just LIBADD more most of them
  correct quoting
  Use -lpthread for modern freebsd instead
  clean KRB5CCNAME and KRB5_CONFIG, require test to reset them
  more up ${env_setup}
  use PTHREADS_LIBADD for freebsd6 and newer
  add PTHREAD_LIBADD
  add PTHREAD_LIBADD
  add PTHREAD_LIBADD
  switch to PTHREADS_LIBADD
  log what the error string say too
  More debug logging
  sprinkle more 'echo "test failed"'
  sprinkle 'echo "test failed"'
  use calloc(), indent more prettier
  in sh, equal compare is really = for strings, not ==
  Check for duplicates, already loaded mechs
  ...

Conflicts (resolved):
	lib/krb5/auth_context.c
	lib/krb5/changepw.c
	lib/krb5/context.c
	lib/krb5/error_string.c
	lib/krb5/kuserok.c
	lib/krb5/libkrb5-exports.def.in
	lib/krb5/net_write.c
	lib/krb5/store_fd.c
	lib/krb5/test_cc.c
	lib/roken/strerror_r.c
2009-12-21 13:44:00 -05:00
Asanka Herath 94bf68aaae Add maint.el helper script for maintaining ported dependencies 2009-12-21 13:10:23 -05:00
Asanka Herath 630e89e357 Add LIBHEIMIPCC and LIBHEIMIPCS to NTMakefile.w32 2009-12-21 13:09:54 -05:00
Asanka Herath 349915e438 Fix comment 2009-12-21 13:09:26 -05:00
Love Hornquist Astrand d1d0de730d refix socket wrappers with rk_ 2009-12-21 08:50:46 +01:00
Love Hornquist Astrand 687db64c56 Patch from Secure Endpoints/Asanka Herath for windows support 2009-12-21 08:45:28 +01:00
Love Hornquist Astrand 09f478ab98 unset KRB5CCNAME 2009-12-21 08:05:16 +01:00
Love Hornquist Astrand ce1846a573 its really just LIBADD more most of them 2009-12-17 10:43:49 +01:00
Love Hornquist Astrand 1b6d89c457 correct quoting 2009-12-17 10:15:24 +01:00
Love Hornquist Astrand c0b1bab378 Use -lpthread for modern freebsd instead 2009-12-17 10:10:13 +01:00
Love Hornquist Astrand 869d8fe465 clean KRB5CCNAME and KRB5_CONFIG, require test to reset them 2009-12-17 10:05:49 +01:00
Love Hornquist Astrand 2c70285d3d more up ${env_setup} 2009-12-17 10:05:10 +01:00
Love Hornquist Astrand 50b48daa9b use PTHREADS_LIBADD for freebsd6 and newer 2009-12-17 09:26:28 +01:00
Love Hornquist Astrand d9e7f5cd97 add PTHREAD_LIBADD 2009-12-17 09:25:30 +01:00
Love Hornquist Astrand 4f88942d9c add PTHREAD_LIBADD 2009-12-17 09:25:01 +01:00
Love Hornquist Astrand 6ec7e01c39 add PTHREAD_LIBADD 2009-12-17 09:24:52 +01:00
Love Hornquist Astrand 76c1e2e8a2 switch to PTHREADS_LIBADD 2009-12-17 09:11:09 +01:00
Love Hornquist Astrand a2378f6b82 log what the error string say too 2009-12-14 23:15:56 -08:00
Love Hornquist Astrand 3a42c1f7cb More debug logging 2009-12-14 22:43:37 -08:00
Love Hornquist Astrand 36566c31a0 sprinkle more 'echo "test failed"' 2009-12-14 22:12:29 -08:00
Love Hornquist Astrand 45260b1fda sprinkle 'echo "test failed"' 2009-12-14 22:11:19 -08:00
Love Hornquist Astrand eadb8838cb use calloc(), indent more prettier 2009-12-14 21:40:16 -08:00
Love Hornquist Astrand baf9c1c85b in sh, equal compare is really = for strings, not == 2009-12-14 18:25:04 -08:00
Love Hornquist Astrand a740ee89bc Check for duplicates, already loaded mechs 2009-12-14 17:16:59 -08:00
Love Hornquist Astrand 986aff5a86 (kcm_send_request): if heim_ipc_init_context, we have not kcm 2009-12-14 16:05:10 -08:00
Love Hornquist Astrand 9accf9f36a add Jan Rekorajski 2009-12-14 14:06:51 -08:00
Love Hornquist Astrand 9f5772050b Match old code and use krb5_sname_to_principal on the imported name for acquire cred.
Reported by Jan Rekorajski
2009-12-13 22:55:36 -08:00
Love Hornquist Astrand a80ec519cd condition threadsafe on ENABLE_PTHREAD_SUPPORT 2009-12-13 22:48:56 -08:00
Love Hornquist Astrand 85327d6242 freebsd supports pthreads 2009-12-13 22:47:23 -08:00
Love Hornquist Astrand 8991a40847 add PTHREADS_LIBS 2009-12-13 16:35:50 -08:00
Love Hornquist Astrand b0feb58f32 remove invalid $Id$ 2009-12-13 15:43:02 -08:00
Love Hornquist Astrand daef47b7da don't define SQLITE_THREADSAFE just because THREADSAFE is set 2009-12-13 15:36:14 -08:00
Love Hornquist Astrand 2613e3c973 x 2009-12-13 15:10:52 -08:00
Love Hornquist Astrand 936c3bbd7e add otp_find_alg 2009-12-13 13:52:34 -08:00
Love Hornquist Astrand 8df64cb195 add krb5_auth_con_getremoteseqnumber 2009-12-13 13:33:41 -08:00
Love Hornquist Astrand 722a54f6ba add missing ; 2009-12-13 13:29:02 -08:00
Love Hornquist Astrand baf83f0b3d unix -> u 2009-12-13 13:24:44 -08:00
Love Hornquist Astrand fff9350227 less dup rk_ 2009-12-13 12:24:47 -08:00
Love Hornquist Astrand 659868bf1b drop -version-info 2009-12-13 12:24:09 -08:00
Love Hornquist Astrand 0a4b702cf1 less dup rk_ 2009-12-13 12:22:33 -08:00
Love Hornquist Astrand 77e382a2e0 handle that we always include strerror_r.c 2009-12-13 12:03:04 -08:00
Love Hornquist Astrand 5312f4de31 always include strerror_r.c 2009-12-13 12:02:46 -08:00
Love Hornquist Astrand 2f07a7d29d Try handle strerror_r more correct 2009-12-13 12:02:28 -08:00
Love Hornquist Astrand 6dcf1c947b Try handle strerror_r more correct 2009-12-13 12:01:31 -08:00
Love Hornquist Astrand 75aa4b44fa switch to rk_strerror_r 2009-12-13 11:42:12 -08:00
Love Hornquist Astrand da84ccc31d require automake 1.10.3 since it fixes security problems in the generated files 2009-12-13 11:24:07 -08:00
Love Hornquist Astrand 74527a0bb2 if we have strerror_r, assume its the non standard strerror_r 2009-12-13 11:15:38 -08:00
Love Hornquist Astrand 85ad70e230 fix type for strerror_r 2009-12-13 11:02:46 -08:00
Love Hornquist Astrand 3f1ba393c5 bump -version-info 2009-12-11 03:14:15 +01:00
Love Hornquist Astrand bafa4d7e96 add Ted Percival 2009-12-10 23:49:49 +01:00
Ted Percival bfcdeda3b4 Fix memory leak in fcc_move
This usually occurs when re-initializing a file credential
cache over the top of an existing one.

This was meant to be fixed in commit 48cb3aa by calling
fcc_destroy(), but that only unlinks the "from" file
(which was already renamed or unlinked) but still doesn't
free the in-memory credentials. Using fcc_close() instead of
fcc_destroy() frees the leaked in-memory credentials.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-12-10 23:35:44 +01:00
Love Hornquist Astrand 4835144bb2 Install kadm5-pwcheck.h header
Prompted by bug from Russ Allbery
2009-12-09 22:40:10 +01:00
Love Hornquist Astrand c867fd3e2e Make libtool pull in the depenency on libldap
Put in explicy depenency on libdap so that libtool
might to the right thing for us.

Patch from Jan Rekorajski
2009-12-08 00:15:10 -08:00
Love Hornquist Astrand d57236a520 add back krb5_version and krb5_long_version to libkrb5, hide them in libvers
prompted by bug reported by Markus Moeller
2009-12-07 21:16:43 -08:00
Love Hornquist Astrand e3044663df add version script to libotp 2009-12-07 21:15:29 -08:00
Love Hornquist Astrand 5e43df65a5 make compile 2009-12-07 21:10:52 -08:00
Andrew Tridgell a92eef4668 s4-heimdal: fixed a use-after-free heimdal bug
s4-heimdal: fixed a use-after-free heimdal bug

This caused samba4kinit to segfault on some systems

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-12-07 20:50:31 -08:00
Ted Percival c93cea7ea6 Fix roken getifaddrs for IPv4 & IPv6 on HP-UX & Solaris
HP-UX only returns IPv6 addresses using SIOCGLIFCONF,
SIOCGIFCONF has to be used for IPv4 addresses.
Solaris uses the same code as described in the comments, which
should correctly detect all addresses when running in a zone.

This adds the code that went missing from commit e20183da.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-12-07 18:40:46 -08:00
Kamen Mazdrashki 778df10ddc krb5: Fix leaked hx509_context pointer
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-12-07 09:07:07 -08:00
Love Hornquist Astrand b6460f7364 document some mbz flags from wireshark 2009-12-05 16:45:29 -08:00
Love Hornquist Astrand e347f1da95 fill in all bits for NTLM flags 2009-12-05 16:40:26 -08:00
Love Hornquist Astrand 5b7780b997 use krb5_auth_con_getremoteseqnumber 2009-12-04 21:35:18 -08:00
Love Hornquist Astrand c402cda0a4 use krb5_auth_con_getremoteseqnumber 2009-12-04 21:30:06 -08:00
Love Hornquist Astrand 5a23717814 use krb5_auth_con_getremoteseqnumber 2009-12-04 21:29:48 -08:00
Ted Percival e20183da23 Fix roken getifaddrs for IPv4 & IPv6 on HP-UX & Solaris
HP-UX only returns IPv6 addresses using SIOCGLIFCONF,
SIOCGIFCONF has to be used for IPv4 addresses.
Solaris uses the same code as described in the comments, which
should correctly detect all addresses when running in a zone.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-12-04 20:46:15 -08:00
Ted Percival 54817ef6f3 Revert "Try both v4 and v6 socket types"
It broke detection of IPv4 addresses on HP-UX machines with an IPv6
loopback address. Successful resolution of at least one IPv6 address
would then skip doing a separate IPv4 lookup as required by HP-UX.

This reverts commit 76afc31e9b.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-12-04 20:39:42 -08:00
Ted Percival 7fc0f55b89 Fix duplicate definition of rk_freeifaddrs
Introduced by incorrectly moving an ifdef in commit d00f998.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-12-04 20:07:42 -08:00
Asanka Herath e5ee3e7d60 Merge commit 'lha/master' into win32-port2
* commit 'lha/master':
  glue for strsvisx
  add Allan McRae and Victor Guerra, sort
  Version Heimdal 1.3.2
  Remove fd caching since we don't have unload (deconstructor) support
2009-12-01 16:58:05 -05:00
Asanka Herath 0346adf7f6 (kdc/NTMakefile) Fix dependencies 2009-12-01 16:44:08 -05:00
Asanka Herath 6f22fb3bb1 (kdc/kerberos5.c) VC isn't C99 2009-12-01 16:43:39 -05:00
Asanka Herath a4acca45ec (kdc/hpropd.c) inetd_flag is used even when NO_INETD is defined 2009-12-01 16:43:12 -05:00
Asanka Herath 0ad290b500 Fix missing #endif 2009-12-01 16:42:28 -05:00
Asanka Herath 0a43d2b3cf (kdc) Add missing export 2009-12-01 02:56:58 -05:00
Asanka Herath b7fe2d3647 (lib/hdb) Add missing dependencies to NTMakefile 2009-12-01 01:51:08 -05:00
Asanka Herath 9227b99979 (lib/gssapi) Add missing dependencies to NTMakefile 2009-12-01 01:50:44 -05:00
Love Hornquist Astrand 01a1e1baef check that gss_krb5_set_allowable_enctypes works 2009-11-30 17:19:13 -08:00
Brian May 87d30c0e23 glue for strsvisx 2009-11-29 21:47:29 -08:00
Love Hornquist Astrand 50b6b63911 add Allan McRae and Victor Guerra, sort 2009-11-26 10:28:21 -08:00
Love Hornquist Astrand d4dec5cfe3 Version Heimdal 1.3.2
Windows support
2009-11-26 10:26:27 -08:00
Love Hornquist Astrand 26e5159572 Remove fd caching since we don't have unload (deconstructor) support
basiclly this is reverting 164c99a4b4

the problem is when an application is using PAM loaded and unloaded
and over again, the file descriptior never get closed on unload of the
pam module. If main app already uses Heimdal, Heimdal doesn't get
unloaded, but in some scenarios this happen more often.

Since we now use fortuna for our internal random generator, this is
not that bad.

Bug found by Victor Guerra.
2009-11-26 10:06:22 -08:00
Asanka Herath 1b6048561c Set HAVE_SCC=1 on Windows 2009-11-26 01:59:18 -05:00
Asanka Herath 62454211c0 (lib/roken) Add strerror_r() along with some missing symbols 2009-11-26 01:58:21 -05:00
Asanka Herath 405b7f530a (lib/roken) fk_flock() -> rk_flock() 2009-11-26 01:57:11 -05:00
Asanka Herath eb3dc6fabd (lib/roken) Use strerror_s() to emulate strerror_r() on Windows 2009-11-26 01:56:50 -05:00
Asanka Herath f065ca176f (lib/krb5) Update exports list 2009-11-26 01:55:48 -05:00
Asanka Herath 393a597858 SOCK_INIT/SOCK_EXIT -> rk_SOCK_INIT/rk_SOCK_EXIT and net_write_s() -> net_write() 2009-11-26 01:42:57 -05:00
Asanka Herath 67c3295fcb KRB5_DEPRECATED should be prefixed to the declaration 2009-11-26 01:41:57 -05:00
Asanka Herath 49d28d3f3a Thread safety for rand-w32 2009-11-26 01:39:42 -05:00
Asanka Herath e3882ffc62 (lib/hcrypto) Make w32crypto the default and only RAND method on Windows 2009-11-26 01:38:43 -05:00
Asanka Herath 8f6d724979 (lib/com_err) Add missing exports 2009-11-26 01:37:11 -05:00
Asanka Herath a3a72a77e2 Fix typo in configure.ac 2009-11-26 01:28:35 -05:00
Asanka Herath b397a69ca7 Remove krb5-types.h.w32
We are generating krb5-types.h using bits.c.
2009-11-26 01:26:41 -05:00
Asanka Herath faa7dd7234 (lib/roken) Add ct.c to libroken on Windows 2009-11-25 12:43:16 -05:00
Asanka Herath 72848585cd KRB5_DEPRECATED needs to be prefixed to the declaration on Windows 2009-11-25 12:43:16 -05:00
Asanka Herath 798d78e098 (lib/krb5/auth_context.c) Fix declaration 2009-11-25 12:43:15 -05:00
Asanka Herath a3727d2126 (lib/hx509) Add missing header files and update exports 2009-11-25 12:43:14 -05:00
Asanka Herath 4d923e766c (lib/hcrypto) Add missing header files and update exports list 2009-11-25 12:43:13 -05:00
Asanka Herath cb9fefd200 (lib/asn1) Add asn1-template.h to NTMakefile 2009-11-25 12:43:13 -05:00
Asanka Herath 251879f39e Generate krb5-types.h instead of using a static one on Windows 2009-11-25 12:43:12 -05:00
Asanka Herath 94c9bd3557 (lib/asn1) Bring Windows build up-to-date 2009-11-25 12:43:11 -05:00
Asanka Herath 84344949ec (lib/asn1/gen.c) The name for define_type() shouldn't include a semicolon 2009-11-25 12:43:10 -05:00
Asanka Herath 7513f59f01 include\crypto-header.h no longer needs to be generated on Windows 2009-11-25 12:43:10 -05:00
Love Hornquist Astrand 16a890a29c revert merged patches 2009-11-25 08:28:35 -08:00
Love Hornquist Astrand c8fc15de86 random number from windows csp 2009-11-25 07:52:39 -08:00
Love Hornquist Astrand 86f4c66efd Merge branch 'master' into wip/win32-port2 2009-11-25 05:41:14 -08:00
Gabor Gombas b6fe5a95d3 kdc and kinit wanted to use some symbols that were not exported by
libkrb5/libkdc

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 05:18:49 -08:00
Gabor Gombas 4c37844073 define KRB5_LIB_CALL in generated headers
glob.h did not define ROKEN_LIB_CALL and that caused havoc when it was
included before other roken headers, because those only check for the
existence of ROKEN_LIB_FUNCTION

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 05:14:46 -08:00
Gabor Gombas 75a53f54fc the MIT DB code is between "#if HAVE_DB1... #endif"
use the same check in the descriptor table

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 05:10:29 -08:00
Love Hornquist Astrand 55db6909fe _kdc_pk_initialize needs to be exported for kdc-replay
prompted by patch from Gabor Gombas <gombasg@sztaki.hu>
2009-11-25 05:08:44 -08:00
Gabor Gombas 17bfa5d3e5 "unix" is a built-in preprocessor symbol, so it cannot be used as a variable name
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 05:05:03 -08:00
Love Hornquist Astrand a059a70746 Only accept self-signed certs within chains for strong hash types 2009-11-25 05:03:16 -08:00
Asanka Herath b191b1e12f Make kdc build on windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-24 22:19:37 -08:00
Asanka Herath caf8f87598 Make hdb build on windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-24 21:59:12 -08:00
Asanka Herath 7097787a21 Make com_err build on windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-24 21:56:41 -08:00
Love Hornquist Astrand 2204b852a7 Merge branch 'master' into wip/win32-port2 2009-11-24 21:46:10 -08:00
Asanka Herath d00f9984a5 Make roken build on windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-24 21:42:02 -08:00
Love Hornquist Astrand f1c0c1bba3 prefix SOCKET symbols with rk_ 2009-11-25 05:29:18 +01:00
Love Hornquist Astrand 2f290bdd96 Merge 'master' 2009-11-25 02:32:26 +01:00
Asanka Herath c4b95f7330 Make build on windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 02:22:31 +01:00
Asanka Herath 452c20aed5 Make build on windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 02:19:05 +01:00
Asanka Herath 20c26609da Make build on windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 02:15:29 +01:00
Love Hornquist Astrand e0a6ee793b CHAR is not used, don't define it 2009-11-25 02:14:06 +01:00
Love Hornquist Astrand 26f7b41f25 define krb5_socket_t 2009-11-25 02:08:13 +01:00
Love Hornquist Astrand 93a56f6153 define krb5_socket_t 2009-11-25 02:07:45 +01:00
Asanka Herath 1650607d4c Windows prebuild filess
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 02:07:24 +01:00
Asanka Herath 16b7db3e5f Resource file for windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 02:04:14 +01:00
Love Hornquist Astrand 48d68a3815 define rk_PATH_DELIM 2009-11-25 02:02:10 +01:00
Love Hornquist Astrand 3199980f5a use rk_PATH_DELIM 2009-11-25 02:01:57 +01:00
Asanka Herath 3982b965c6 Make hx509 compile on windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 00:24:01 +01:00
Asanka Herath 5d48156c51 Make hx509 compile on windows
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-25 00:20:44 +01:00
Love Hornquist Astrand 98ed50fdf0 switch krb5_socket_t 2009-11-24 13:40:32 -08:00
Love Hornquist Astrand 052d34e611 define a socket type, krb5_socket_t 2009-11-24 13:36:03 -08:00
Love Hornquist Astrand 0c725419db Merge branch 'master' into wip/win32-port2 2009-11-24 12:36:04 -08:00
Asanka Herath 1d624801c1 Compile on windows
- include <stdlib.h>
- export file
- fill out structs to make it compile with visual studio

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-24 12:33:37 -08:00
Love Hornquist Astrand d48ac21325 Merge branch 'master' into wip/win32-port2 2009-11-24 12:31:00 -08:00
Asanka Herath c9fdd77bc8 probe exported symbols
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-24 12:30:24 -08:00
Asanka Herath d6f90d3ef5 probe exported symbols
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-24 12:30:17 -08:00
Love Hornquist Astrand 5a10fdf3d7 Merge branch 'master' into wip/win32-port2 2009-11-24 12:13:08 -08:00
Love Hornquist Astrand c6bbdb545b First drop of Windows build infrastructure from Secure Endpoints 2009-11-24 12:12:53 -08:00
Asanka Herath a87447f2b4 Use casts to reduce errors when converting sockaddr* to sockaddr_in or sockaddr_in6 2009-11-24 10:20:19 -08:00
Asanka Herath 81b70c3488 Copy cc_ops and kt_types when copying a krb5_context in krb5_copy_context() 2009-11-24 10:20:19 -08:00
Asanka Herath 7262cbab9c Comment for fd_from_socket() 2009-11-24 10:20:19 -08:00
Asanka Herath 480acc60ec Build libwind as a .dll by default 2009-11-24 10:20:19 -08:00
Asanka Herath f5b69e17f3 NTMakefile update for lib/roken to bulid additional modules and additional tests 2009-11-24 10:20:19 -08:00
Asanka Herath db6994d1f5 Header file ordering 2009-11-24 10:20:18 -08:00
Asanka Herath c0600f525c Add test for mini_inetd() 2009-11-24 10:20:18 -08:00
Asanka Herath 170e8158cb strcpy_s() and strcat_s() aren't drop-in replacements for strlcpy() and strlcat() 2009-11-24 10:20:18 -08:00
Asanka Herath 6c45d5614a Minor refactoring in simple_exec_w32.c 2009-11-24 10:20:18 -08:00
Asanka Herath 8e785a5750 Formatting changes and new mini_inetd() function signatures 2009-11-24 10:20:18 -08:00
Asanka Herath e1932ec0fd If a recv() return EINTR on Windows, don't retry
EINTR (or WSAEINTR) is used to indicate that a blocking call was cancelled
using WSACancelBlockingCall().  Retrying wouldn't be the right thing to
do in this case.
2009-11-24 10:20:18 -08:00
Asanka Herath a11386261d Change mini_inetd() to optionally return the connected socket
This is to support platforms where a socket is not an FD and can't
reliably be bound to the stdin and stdout file descriptors.
2009-11-24 10:20:18 -08:00
Asanka Herath 56afc4da1a Build libheimntlm as a .dll by default 2009-11-24 10:19:49 -08:00
Asanka Herath 81d091baa8 Add tests for the new path tokens 2009-11-24 10:19:49 -08:00
Asanka Herath 39f6fc00f8 krb5_net_read(), krb5_net_write() nad krb5_storage_from_fd() should accept both sockets and fds
When a socket and a file descriptor aren't interchangeable, these
functions should be able to determine whether it has received one or
the other and act accordingly.

This assumes that a fd can be cast into a SOCKET.
2009-11-24 10:19:49 -08:00
Asanka Herath 67e1aa5109 Need a DllMain in libkrb5 for path resolution 2009-11-24 10:19:49 -08:00
Asanka Herath 6073ca9a28 Add portable path tokens
Add USERCONFIG, COMMONCONFIG, LIBDIR, BINDIR, LIBEXEC, SBINDIR tokens.
2009-11-24 10:19:49 -08:00
Asanka Herath 93445a8133 Don't use Windows specific path tokens in lib/krb5/config_file.c 2009-11-24 10:19:49 -08:00
Asanka Herath 4634af9078 Consistent use of SOCKET data type in lib/krb5 2009-11-24 10:19:49 -08:00
Asanka Herath bd669f10eb Build dll.obj and don't build KRB4 specific targets if not building KRB4 2009-11-24 10:18:20 -08:00
Asanka Herath c6b8fad5dc Consistency updates for lib/kadm5 and don't check fd_set size if it's not necessary 2009-11-24 10:18:20 -08:00
Asanka Herath a79bf3464d Build libhx509 as a .dll by default 2009-11-24 10:18:20 -08:00
Asanka Herath 204789d408 Build libhdb as a .dll by default 2009-11-24 10:18:19 -08:00
Asanka Herath 348bd51d0a Build libhrypto as a .dll by default 2009-11-24 10:18:19 -08:00
Asanka Herath 988792b3f7 Build system update for lib/gssapi and new exports.def 2009-11-24 10:18:19 -08:00
Asanka Herath 59ae14e814 Consistency fixes for lib/com_err 2009-11-24 10:18:19 -08:00
Asanka Herath a70de39e9c Update exports.def and build rules for lib/asn1
The previous rules didn't export all the symbols we needed.
2009-11-24 10:18:19 -08:00
Asanka Herath 19185e136f NTMakefile for kdc and exports.def for libkdc 2009-11-24 10:18:19 -08:00
Asanka Herath 6aa28bcc91 Don't use SIGPIPE, SIGXCPU or geteuid() if they aren't available
in kdc/main.c
2009-11-24 10:18:19 -08:00
Asanka Herath fa8a92471c Don't build KRB4 specific code if we aren't supporting KRB4 2009-11-24 10:18:19 -08:00
Asanka Herath 8768960156 Don't rely on Posix like links in kdc 2009-11-24 10:18:19 -08:00
Asanka Herath d47c01083b Use SOCKET data type instead of ints for sockets in kdc 2009-11-24 10:18:19 -08:00
Asanka Herath 4583cc514d NTMakefile for kadmin 2009-11-24 10:17:51 -08:00
Asanka Herath a1942c1bad Use SOCKET data type instead of ints for sockets in kadmin
Also use the new mini_inetd() API
2009-11-24 10:17:51 -08:00
Asanka Herath 14ae739820 Don't rely on Posix links in kadmin/stash.c 2009-11-24 10:17:51 -08:00
Asanka Herath b79445f4e4 Config changes
- Use custom implementations for strlcat() and strlcpy() because strcpy_s()
and strcat_s() have different behavior.

- Define NO_POSIX_LINKS to indicate that link/unlink operations don't
quite work the way they should. I.e. in-use files can't be replaced that
way.

- Change definitions of directory macros to use correct path tokens.

- Define NO_INETD to indicate that there's no inetd
2009-11-24 10:17:51 -08:00
Asanka Herath 0b0ad49382 Complete NTMakefile for admin 2009-11-24 10:17:50 -08:00
Asanka Herath ef1501d081 Also include data when listing externals in an .OBJ file 2009-11-24 10:17:50 -08:00
Asanka Herath aa058a6a63 Typos and fixes for init_c.c to not include stuff we don't have 2009-11-24 10:17:50 -08:00
Asanka Herath 41afd0a139 Locale.h and setenv() 2009-11-24 10:17:50 -08:00
Asanka Herath 06179e66ad Additional include files for krb5 2009-11-24 10:17:50 -08:00
Asanka Herath 28023be15a Add setenv() to libroken 2009-11-24 10:17:50 -08:00
Asanka Herath 649a929a54 LIBKDC and binary prep macros 2009-11-24 10:17:50 -08:00
Asanka Herath 60f2a22e54 Port kuser 2009-11-24 10:17:50 -08:00
Asanka Herath 9072a62729 Build libasn1 as a DLL
In addition to building libasn1 as a DLL also add a build target
so that a list of exports can be generated and used to check with
the .def file whether any exports are being left out.
2009-11-24 10:17:50 -08:00
Asanka Herath 2df5c26c00 Build system update 2009-11-24 10:17:50 -08:00
Asanka Herath 4be30644fb Update for wind/NTMakefile 2009-11-24 10:17:49 -08:00
Asanka Herath 475f6ba509 Dependency fix for vers/NTMakefile 2009-11-24 10:17:49 -08:00
Asanka Herath 68e06566cc Use ROKEN_CPP_START and ROKEN_CPP_END instead of __BEGIN_DECLS/__END_DECLS 2009-11-24 10:17:49 -08:00
Asanka Herath 418dd986e5 Add bit-types to roken.h so that we don't need to include krb5-types.h everywhere 2009-11-24 10:17:18 -08:00
Asanka Herath 49b261efdc Formalize the simple_exec*() API 2009-11-24 10:17:18 -08:00
Asanka Herath 7ee1695f12 Add cloexec() and xfree() to libroken 2009-11-24 10:16:49 -08:00
Asanka Herath 5dd6355e56 libkrb5 .def file 2009-11-24 10:16:49 -08:00
Asanka Herath 191361fdf5 Calling convention change 2009-11-24 10:16:49 -08:00
Asanka Herath 78a237e3cc No dirfd() on Windows 2009-11-24 10:16:49 -08:00
Asanka Herath 6ba6a17ebd Do things the WinSock way 2009-11-24 10:16:49 -08:00
Asanka Herath d6adaa775f No geteuid() on Windows 2009-11-24 10:16:49 -08:00
Asanka Herath 77fee77d0e Use path tokens in krb5_config_parse_file_multi() 2009-11-24 10:16:22 -08:00
Asanka Herath 39d89e9fca Export .def for libkadm5srv 2009-11-24 10:15:14 -08:00
Asanka Herath c53686e69b More KRB5_DEPRECATED fixes 2009-11-24 10:15:14 -08:00
Asanka Herath c2f634d9ad KRB5_DEPRECATED is a storage class specifier 2009-11-24 10:12:45 -08:00
Asanka Herath 1bfde92838 Update krb5/NTMakefile 2009-11-24 10:12:45 -08:00
Asanka Herath 6a88c16dea Use wait_for_process() to wait for processes created with simple_exec* 2009-11-24 10:12:45 -08:00
Asanka Herath bf5b934b06 Include roken.h before including other Heimdal headers 2009-11-24 10:12:45 -08:00
Asanka Herath d84119813e No AF_UNIX on Windows and no SIGPIPE and SIGXCPU 2009-11-24 10:12:44 -08:00
Asanka Herath 246e60891c NTMakefile for kadm5 port 2009-11-24 10:12:44 -08:00
Asanka Herath 21775167c4 No dirfd() support on Windows 2009-11-24 10:12:44 -08:00
Asanka Herath 588d1e081f Update hx509/NTMakefile
Better dependency management for generated files.
2009-11-24 10:12:44 -08:00
Asanka Herath dd09636632 Move variable definitions above code
VC still doesn't deal with variable definitions mixed with code.
2009-11-24 10:12:44 -08:00
Asanka Herath ffb0fdb9c6 Better dependencty tracking for hdb/NTMakefile and build tests 2009-11-24 10:12:44 -08:00
Asanka Herath adab1b3cc1 Move HC_DEPRECATED_CRYPTO to front
The HC_DEPRECATED_CRYPTO macro is used as a storage class specifier
on Windows, and hence must be placed before the return type for a
function declaration.
2009-11-24 10:12:44 -08:00
Asanka Herath c1a6ab1d55 Update hcrypto/NTMakefile 2009-11-24 10:11:16 -08:00
Asanka Herath ce7d784648 Avoid using 'interface' as a variable name 2009-11-24 10:11:16 -08:00
Asanka Herath 72537c1f83 Update gssapi/NTMakefile 2009-11-24 10:11:16 -08:00
Asanka Herath 041b5c6292 Update asn/NTMakefile
Be explicit about dependencies.  A subsequent invocation of the NTMakefile
should correctly deduce dependencies for generated files instead of
assuming they are always out of date.
2009-11-24 10:11:16 -08:00
Asanka Herath 69554bf181 Use explicit-width integer types in krb5_types.h 2009-11-24 10:11:16 -08:00
Asanka Herath 85e2907c1c More changes to config.h.w32
Addition of :

NO_PIDFILES : We don't create PID files
NO_SIGPIPE, NO_SIGXCPU: These signals don't exist on Windows
NO_UNIX_SOCKETS: No AF_UNIX support

Also, ignore variable defintions when we are doing a preprocessor-only
run.
2009-11-24 10:11:16 -08:00
Asanka Herath c08c411853 Add KRB4 and DIR_hdbdir to the FEATURE_DEFS list
Add version.h and heim_threads.h to the list of include files.
2009-11-24 10:11:16 -08:00
Asanka Herath dc0b2b8648 Missing foo_LIB_FUNCTION fixes 2009-11-24 10:11:15 -08:00
Asanka Herath 6ca5815e3d Socket functions should use SOCKET instead of int 2009-11-24 10:11:15 -08:00
Asanka Herath 59a4c6b369 Missing roken.h declarations for Visual C and Windows 2009-11-24 10:11:15 -08:00
Asanka Herath 483da4ae9b (mini_identd_addrinfo) Use closesocket() to close sockets
Also, set closed sockets to INVALID_SOCKET so that they won't be
closed again.
2009-11-24 10:11:15 -08:00
Asanka Herath 867a1533be (arg_match_long) Use UNREACHABLE() macro to mark up unreachable code 2009-11-24 10:11:15 -08:00
Asanka Herath 4332f79a82 (eread,ewrite) Remove redundant includes
<err.h> is included by <roken.h>.
2009-11-24 10:11:15 -08:00
Asanka Herath 4da69ab0be (krb5_sendto) Use IS_BAD_SOCKET() to check if the socket is bad 2009-11-24 10:11:15 -08:00
Asanka Herath eef0943c0e (compile_et.c) Pick the last path delimiter whichever kind of slash it is 2009-11-24 10:11:15 -08:00
Asanka Herath 9d42b10027 (krb5_config_parse_file_multi) Don't leak memory when the path tokens can't be expanded 2009-11-24 10:11:15 -08:00
Asanka Herath b1063ea8fc Initial Windows port 2009-11-24 10:11:14 -08:00
Andrew Bartlett 25a2ac726b heimdal Fix invalid format string
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-11-23 20:36:54 -08:00
Love Hornquist Astrand 41d657a159 test more 2009-11-23 17:59:50 -08:00
Love Hornquist Astrand bfad19e74b pull in <sys/poll.h> 2009-11-23 17:56:49 -08:00
Love Hornquist Astrand ff642c0539 move out heim_ipc_main from here, its currently not common 2009-11-23 17:56:33 -08:00
Love Hornquist Astrand 599fefcb8d make async glue for non async case work 2009-11-23 17:56:06 -08:00
Love Hornquist Astrand 42ba3389db make work with poll 2009-11-23 17:52:46 -08:00
Love Hornquist Astrand 7d1e32e6d9 timeout depends on gcd for now 2009-11-23 17:49:11 -08:00
Love Hornquist Astrand 032385d3aa remove debug printf 2009-11-23 17:31:05 -08:00
Love Hornquist Astrand d4a562ebe6 handle gcd for sockets too 2009-11-23 17:28:56 -08:00
Love Hornquist Astrand ca876988d7 add gcd version, less bits on pipe, run socket in non-blocking mode 2009-11-23 12:47:39 -08:00
Love Hornquist Astrand d96a7eb2a1 start a unix service too 2009-11-23 09:51:30 -08:00
Love Hornquist Astrand 149898ec28 mkae compile 2009-11-23 09:19:49 -08:00
Love Hornquist Astrand adb71f15ec use launch flag, move loop to here 2009-11-23 09:06:39 -08:00
Love Hornquist Astrand ac9256594c move out loop from here 2009-11-23 09:06:22 -08:00
Love Hornquist Astrand fed3b2dffd launchd flag 2009-11-23 09:05:57 -08:00
Love Hornquist Astrand d616796649 add prototype for kcm_service and launchd flag 2009-11-23 09:05:48 -08:00
Love Hornquist Astrand 61035d0318 parse_time.h and heim-ipc.h header, remove unix/door headers 2009-11-23 09:05:31 -08:00
Love Hornquist Astrand e849f2302b simplify 2009-11-23 08:31:06 -08:00
Love Hornquist Astrand 4c69333255 use socket_set_reuseaddr 2009-11-23 08:29:34 -08:00
Love Hornquist Astrand ec2003ce09 close fd if we are not gcd 2009-11-23 08:25:10 -08:00
Love Hornquist Astrand 6e8515e3a8 listen on unix socket and stream fd 2009-11-23 08:02:54 -08:00
Love Hornquist Astrand c2ae0ce50e add missing prototypes 2009-11-23 08:02:22 -08:00
Love Hornquist Astrand 7dd146072c switch to getarg directly 2009-11-23 07:36:34 -08:00
Love Hornquist Astrand 960b6d9cc5 Its a stream fd, dgram later 2009-11-23 07:30:46 -08:00
Love Hornquist Astrand 60f6593f63 start for poll() based implementation 2009-11-23 07:28:17 -08:00
Love Hornquist Astrand 46f49ed531 implement more of the new syntax 2009-11-23 07:27:49 -08:00
Love Hornquist Astrand 826c14833f make cpp safe, from Allan McRae 2009-11-23 07:19:00 -08:00
Love Hornquist Astrand f8d3becbf3 1.4 features 2009-11-22 18:05:35 -08:00
Love Hornquist Astrand b1d26a6cba load pkinit bits 2009-11-22 17:34:57 -08:00
Love Hornquist Astrand a9e58b7e77 don't set flags when we are not asked to 2009-11-22 17:14:47 -08:00
Love Hornquist Astrand a216e42696 deprecated warning 2009-11-22 16:13:37 -08:00
Love Hornquist Astrand 589e8f0978 deprecated warning 2009-11-22 16:13:10 -08:00
Love Hornquist Astrand 7f628a0733 deprecated warning 2009-11-22 16:11:25 -08:00
Love Hornquist Astrand 94b702e938 deprecated warning 2009-11-22 16:10:25 -08:00
Love Hornquist Astrand a4e9e537e8 deprecated warning 2009-11-22 16:09:55 -08:00
Love Hornquist Astrand 1f0da1963a deprecated warning 2009-11-22 16:09:46 -08:00
Love Hornquist Astrand dedbadb6d6 format string 2009-11-22 15:08:44 -08:00
Love Hornquist Astrand ebffc842de prepend error string 2009-11-22 14:59:11 -08:00
Love Hornquist Astrand b22c42947c make krb5_prepend_error_message prepend 2009-11-22 14:58:20 -08:00
Love Hornquist Astrand bf3b753298 less warnings 2009-11-22 14:37:45 -08:00
Love Hornquist Astrand eece47d762 add krb5-mit.conf 2009-11-22 14:13:56 -08:00
Love Hornquist Astrand 5e13cd2e0d provide default when there is no default 2009-11-22 14:11:24 -08:00
Love Hornquist Astrand a882971606 remove unused vars 2009-11-22 13:58:42 -08:00
Love Hornquist Astrand ccc6175b53 use hx509_certs_iter_f 2009-11-22 13:57:48 -08:00
Love Hornquist Astrand f45766eda0 add hx509_certs_iter_f 2009-11-22 13:54:02 -08:00
Love Hornquist Astrand 6e319e49e1 use hx509_certs_iter_f 2009-11-22 13:53:41 -08:00
Love Hornquist Astrand 6ed36cd0f2 use hx509_certs_iter_f, malloc bug 2009-11-22 13:53:30 -08:00
Love Hornquist Astrand 6432296adc malloc bug 2009-11-22 13:53:19 -08:00
Love Hornquist Astrand f2178f07d5 use hx509_certs_iter_f 2009-11-22 13:53:03 -08:00
Love Hornquist Astrand 2153b884b6 use hx509_certs_iter_f 2009-11-22 13:52:54 -08:00
Love Hornquist Astrand cad74796e5 use hx509_certs_iter_f 2009-11-22 13:52:43 -08:00
Love Hornquist Astrand b1eb65c5ba use hx509_certs_iter_f 2009-11-22 13:52:31 -08:00
Love Hornquist Astrand 796a9f2ec7 doxygen 2009-11-22 13:52:06 -08:00
Love Hornquist Astrand 0e13e858b0 option file 2009-11-22 13:51:28 -08:00
Love Hornquist Astrand 7f14480d4a option file 2009-11-22 13:51:20 -08:00
Love Hornquist Astrand fab9dd38e1 use option file 2009-11-22 13:51:09 -08:00
Love Hornquist Astrand d183fc0952 handle sync unix socket message, turn async message into sync if the backend doesn't support them 2009-11-22 13:14:34 -08:00
Love Hornquist Astrand c228d7487b service is non optional 2009-11-22 12:57:35 -08:00
Love Hornquist Astrand 5813b0a4dd default master key version is 1 2009-11-22 12:53:56 -08:00
Love Hornquist Astrand df69397c4a add hdb-mitdb.c 2009-11-22 12:53:16 -08:00
Love Hornquist Astrand 89b14e91c2 backend to read the MIT Kerberos databse file directly 2009-11-22 12:52:57 -08:00
Love Hornquist Astrand 7b42f760b8 add _hdb_keytab2hdb_entry 2009-11-22 12:52:08 -08:00
Love Hornquist Astrand daa2048fd8 simplify? 2009-11-22 12:51:52 -08:00
Love Hornquist Astrand b9bb21f185 just return if we are asked for 0 bytes 2009-11-22 12:51:23 -08:00
Love Hornquist Astrand 2454e93c62 fix typo 2009-11-22 12:51:02 -08:00
Love Hornquist Astrand 2f2063198f update (c) 2009-11-22 12:50:39 -08:00
Love Hornquist Astrand 4dc9ccf0cb add new database backends 2009-11-22 12:49:13 -08:00
Love Hornquist Astrand 570414c12c add hdb-keytab.c 2009-11-22 12:35:26 -08:00
Love Hornquist Astrand a059382f79 why a large database, lets run the hdb out of the keytab 2009-11-22 12:34:40 -08:00
Love Hornquist Astrand 7aba6f94bd poke hole into the underlaying mach code, allow NULL krb5_context 2009-11-22 12:33:53 -08:00
Love Hornquist Astrand 46e0941e7d its krb5_auth_con_getremoteseqnumber 2009-11-22 12:32:53 -08:00
Love Hornquist Astrand 1494b7b611 add kdc syncing, more API cache glue, query if switching is supported 2009-11-22 12:32:39 -08:00
Love Hornquist Astrand afe4f3129b Read configuration plist on macs 2009-11-22 12:31:56 -08:00
Love Hornquist Astrand f66206220a add context to gss_context_query_attributes(), make oid const 2009-11-22 12:31:00 -08:00
Love Hornquist Astrand dcf7dc9a93 make oid const 2009-11-22 12:30:37 -08:00
Love Hornquist Astrand bff407bc9a add context to gss_context_query_attributes() 2009-11-22 12:30:24 -08:00
Love Hornquist Astrand 592689dcf3 Read configuration plist on macs 2009-11-22 12:27:52 -08:00
Love Hornquist Astrand eba120e8ce support EXTRACT_TICKET_TIMESYNC 2009-11-22 12:26:40 -08:00
Love Hornquist Astrand 58ca56ab95 deprecate krb5_auth_getremoteseqnumber 2009-11-22 12:26:23 -08:00
Love Hornquist Astrand b3e86a1cb6 track kdc offset better 2009-11-22 12:25:15 -08:00
Love Hornquist Astrand dab6e078b2 more logging, track kdc offset better 2009-11-22 12:24:58 -08:00
Love Hornquist Astrand a7d1283805 make it easier to get forwardable tickets by default (mmm boolan three state) 2009-11-22 12:24:29 -08:00
Love Hornquist Astrand b6ac1e61ff more logging, try harder to not loop 2009-11-22 12:23:48 -08:00
Love Hornquist Astrand 4bc5f02317 use HAVE_SCC 2009-11-22 12:23:29 -08:00
Love Hornquist Astrand 12d5d54f70 rename krb5_auth_con_getremoteseqnumber 2009-11-22 12:23:16 -08:00
Love Hornquist Astrand faa82b3890 support EXTRACT_TICKET_TIMESYNC 2009-11-22 12:22:59 -08:00
Love Hornquist Astrand 5f78dfe956 --disable-sqlite-cache 2009-11-22 12:17:18 -08:00
Love Hornquist Astrand 702277a3c9 more depenecies 2009-11-22 12:15:43 -08:00
Love Hornquist Astrand e3f13a4092 --disable-sqlite-cache 2009-11-22 12:11:16 -08:00
Love Hornquist Astrand 70104293ba handle BTMM, more logging 2009-11-22 11:57:17 -08:00
Love Hornquist Astrand bf1ecbd0ff wrap scc with have HAVE_SCC, enable running kcm as api cache 2009-11-22 11:56:43 -08:00
Love Hornquist Astrand 596bd00c9b wrap scc tests with have scc 2009-11-22 11:56:11 -08:00
Love Hornquist Astrand f4585e3cc3 make list caches more useful, support -A 2009-11-22 09:55:13 -08:00
Love Hornquist Astrand b48abe2e0d default to forwardable, use keychain password, handle krb5_cc_switch 2009-11-22 09:54:22 -08:00
Love Hornquist Astrand a895e85526 When a TS-ENC key was verified, send the salt for that key in the reply 2009-11-22 09:51:49 -08:00
Love Hornquist Astrand d6f5c959d6 remember the saltings we used in preauth in case the kdc doesn't sent
it back with the ticket.
2009-11-22 09:32:23 -08:00
Love Hornquist Astrand 2c14216733 don't override configuration if there is one 2009-11-22 08:41:10 -08:00
Love Hornquist Astrand 34cbe76fdc include <com_err.h> for com_right_r 2009-11-22 07:34:59 -08:00
Love Hornquist Astrand dc61739a4d add roken 2009-11-22 07:14:44 -08:00
Love Hornquist Astrand 228e9c8a21 add useage 2009-11-22 07:14:32 -08:00
Love Hornquist Astrand a4d4d34530 add useage 2009-11-22 07:14:25 -08:00
Love Hornquist Astrand f56b3e7f09 unused variable 2009-11-22 07:12:33 -08:00
Love Hornquist Astrand 2f1473b186 add depenecy for test.asn1 2009-11-22 06:57:41 -08:00
Love Hornquist Astrand 59d1bf12af use "headers.h", add usage 2009-11-22 06:54:11 -08:00
Love Hornquist Astrand 63db63e062 drop HAVE_CONFIG_H 2009-11-22 06:51:45 -08:00
Love Hornquist Astrand ca6df0fffc remove sandbox for now since it also require a sandbox profile, and that is not ready yet 2009-11-22 06:46:25 -08:00
Love Hornquist Astrand eeeff38603 switch to new syntax 2009-11-22 06:42:39 -08:00
Love Hornquist Astrand 270c4feaf1 add digest-service and announce 2009-11-22 06:42:14 -08:00
Love Hornquist Astrand 9fa76b8766 add missing argument 2009-11-22 06:41:57 -08:00
Love Hornquist Astrand 79fe41bbb9 cetype unused 2009-11-22 06:36:13 -08:00
Love Hornquist Astrand 70835f3119 add hdb_get_realms 2009-11-22 06:34:29 -08:00
Love Hornquist Astrand 0431d4cedd bonus files 2009-11-22 01:11:04 -08:00
Love Hornquist Astrand 6df0783c7e Redo client key handling for AS
Pick the replykey to be the same as the preauth key, this allows
us to delay the picking of client key to when its needed, this
means that we can have a reply keys for PKINIT that is independant
of what keys the client have.
2009-11-22 00:58:53 -08:00
Love Hornquist Astrand 9a5b9ed720 drop unused prototype 2009-11-22 00:39:21 -08:00
Love Hornquist Astrand 0adbdf8f98 drop include <sys/un.h> 2009-11-22 00:37:59 -08:00
Love Hornquist Astrand dd67212157 add disable btmm support 2009-11-22 00:29:36 -08:00
Love Hornquist Astrand 847161193c constify pkinit conf 2009-11-22 00:28:33 -08:00
Love Hornquist Astrand 4d48b172ab add pkinit configration for btmm 2009-11-22 00:28:13 -08:00
Love Hornquist Astrand 72fbb8714f make pkinit non optional 2009-11-22 00:27:45 -08:00
Love Hornquist Astrand 010e7a9f5f announce realm via bonjour 2009-11-22 00:27:14 -08:00
Love Hornquist Astrand 71c6fa48f6 bonjour_announce 2009-11-22 00:26:57 -08:00
Love Hornquist Astrand dbb5002e68 generic digest service 2009-11-22 00:26:32 -08:00
Love Hornquist Astrand 74cce43c8c make open log generic 2009-11-22 00:26:15 -08:00
Love Hornquist Astrand 04c3fc9882 add support for sandbox 2009-11-22 00:25:56 -08:00
Love Hornquist Astrand b02039ae30 have require_hwauth 2009-11-22 00:25:31 -08:00
Love Hornquist Astrand c5fffce8db abstract out adding dbinfo 2009-11-22 00:24:55 -08:00
Love Hornquist Astrand e5d2b6f6ad support kdc offset 2009-11-22 00:18:54 -08:00
Love Hornquist Astrand d96b74b4ad add contributor (c) 2009-11-22 00:17:21 -08:00
Love Hornquist Astrand 28c9deebf1 edd extra flags 2009-11-22 00:14:57 -08:00
Love Hornquist Astrand 926583be1e add _krb5_have_debug 2009-11-22 00:14:33 -08:00
Love Hornquist Astrand 857b6f4172 depend on libheim-ipcc 2009-11-22 00:14:22 -08:00
Love Hornquist Astrand 99f171309f remove unused variables 2009-11-22 00:14:07 -08:00
Love Hornquist Astrand e515f73e2c [gs]et kdc offset per ccache, add kcm as api cache 2009-11-22 00:09:25 -08:00
Love Hornquist Astrand eca5e4ecdf make more complete, expose kcm interface, use libheimipc 2009-11-22 00:07:03 -08:00
Love Hornquist Astrand d2c2e37ef5 add missing libs, update constants 2009-11-21 23:58:40 -08:00
Love Hornquist Astrand fe2dfe83a8 clean up and make work, require libheim-ipcs 2009-11-21 23:54:00 -08:00
Love Hornquist Astrand 368536bc08 add password/bare options 2009-11-21 23:53:26 -08:00
Love Hornquist Astrand 0510f7e0cd add more depencies 2009-11-21 23:14:20 -08:00
Love Hornquist Astrand aa7f658e16 add more depencies 2009-11-21 23:09:50 -08:00
Love Hornquist Astrand 70e2dd4bd6 add more depencies 2009-11-21 23:08:00 -08:00
Love Hornquist Astrand 607bae3c9e glue in working autoconf logic 2009-11-21 22:58:59 -08:00
Love Hornquist Astrand 7bb7bd72ab make compile and remove warnings 2009-11-21 17:12:38 -08:00
Love Hornquist Astrand d50689ec8b fake rk_LIBDISPATCH for now 2009-11-21 16:26:07 -08:00
Love Hornquist Astrand 9bcdc58cf6 pull in rk_LIBDISPATCH 2009-11-21 16:25:51 -08:00
Love Hornquist Astrand 5c53c3d7ba add dependency on HAVE_LIBDISPATCH 2009-11-21 16:09:43 -08:00
Love Hornquist Astrand 31405c40f3 add dependency on HAVE_LIBDISPATCH 2009-11-21 16:04:49 -08:00
Love Hornquist Astrand 89b777853a include asn1-common.h in installed header files 2009-11-21 16:01:05 -08:00
Love Hornquist Astrand ceb1cfa0be add ipc 2009-11-21 10:29:39 -08:00
Love Hornquist Astrand a587732e60 add lib/ipc/Makefile 2009-11-21 10:29:14 -08:00
Love Hornquist Astrand d0178934a1 basic ipc framework 2009-11-21 10:25:30 -08:00
Love Hornquist Astrand ee4afc8060 add block support 2009-11-21 10:25:08 -08:00
Love Hornquist Astrand b939943b07 first stange of asn1 table driven compiler 2009-11-21 10:24:56 -08:00
Love Hornquist Astrand ae56d6eede unused variable 2009-11-17 15:51:41 -08:00
Love Hornquist Astrand 8ec686805b expose decode_Key 2009-11-17 13:10:04 -08:00
Love Hornquist Astrand 069acd2188 sort 2009-11-17 13:09:12 -08:00
Love Hornquist Astrand 316fc6ff8f Simplify subkey usage for tgs-req, don't rewrite tgs-rep-sub-key keyuage for arcfour, its correct 2009-11-15 21:31:25 -08:00
Love Hornquist Astrand d6d4efe386 Include roken.h for strlcpy rewrite 2009-11-15 21:31:20 -08:00
Love Hornquist Astrand ab1b87b557 drop RCSID 2009-11-14 11:15:57 -08:00
Love Hornquist Astrand de0102fa0c drop RCSID 2009-11-14 11:14:56 -08:00
Love Hornquist Astrand 28364031f0 rename configure.in to configure.ac 2009-11-14 11:13:51 -08:00
Love Hornquist Astrand 999f716ff5 1.3.99 2009-11-14 11:13:08 -08:00
Love Hornquist Astrand 560f10033c move back krb5_get_err_text to error_string.c for now 2009-11-04 22:33:14 -08:00
Love Hornquist Astrand 768a4460b4 move back krb5_get_err_text to error_string.c for now 2009-11-04 22:33:04 -08:00
Love Hornquist Astrand d83aacd2c5 drop krb5_get_err_text 2009-11-04 22:27:55 -08:00
Love Hornquist Astrand b05756994b drop krb5_get_err_text 2009-11-04 20:03:55 -08:00
Love Hornquist Astrand 23d05643e1 Include <com_err.h> 2009-11-03 23:59:46 -08:00
Love Hornquist Astrand 8d16484f17 less const warnings for com_right_r 2009-11-03 23:59:38 -08:00
Love Hornquist Astrand aa292cd80b use krb5_get_error_message() 2009-11-03 23:51:11 -08:00
Love Hornquist Astrand 97dd51a2da use krb5_get_error_message() 2009-11-03 23:50:45 -08:00
Love Hornquist Astrand 6d9b72d76d simplify 2009-11-03 23:49:58 -08:00
Love Hornquist Astrand c01177976c use krb5_warn 2009-11-03 23:49:04 -08:00
Love Hornquist Astrand de84fec5a3 spelling 2009-11-03 23:37:40 -08:00
Love Hornquist Astrand 7d6291e128 set pointer before freeing 2009-11-03 23:34:48 -08:00
Love Hornquist Astrand 79597c6a3a use krb5_get_error_message() 2009-11-03 23:33:50 -08:00
Love Hornquist Astrand 07a81e6c86 use krb5_err 2009-11-03 23:29:15 -08:00
Love Hornquist Astrand 180c716ce8 use krb5_warn 2009-11-03 23:28:18 -08:00
Love Hornquist Astrand e9f536a839 ignore krb5_get_err_text 2009-11-03 22:27:12 -08:00
Love Hornquist Astrand 83ed187855 ignore krb5_get_err_text 2009-11-03 22:26:44 -08:00
Love Hornquist Astrand d639f7d881 use krb5_get_error_message() 2009-11-03 22:25:55 -08:00
Love Hornquist Astrand 80daa7681a remove unused variable 2009-11-03 22:22:40 -08:00
Love Hornquist Astrand 2b4b9a613e require com_right_r 2009-11-03 22:21:34 -08:00
Love Hornquist Astrand 01ae59fb03 Copyright (c) 1997, 2000 - 2005 Kungliga Tekniska Högskolan 2009-10-24 14:18:05 -07:00
Love Hornquist Astrand 6f4b693fe5 krb5.conf is in 5, sort
From Jeremy C. Reed
2009-10-24 14:15:48 -07:00
Love Hornquist Astrand 49811a8b80 Move libexec man pages to section 8
Proposed by Jeremy C. Reed
2009-10-23 10:04:57 -07:00
Love Hornquist Astrand 2cbf600508 The kimpersonate.1 manpage as wrong Document Title
From Jeremy C. Reed
2009-10-23 09:57:32 -07:00
Love Hornquist Astrand 1af4e2234a free cert on error 2009-10-22 08:23:19 -07:00
Love Hornquist Astrand 610737fe90 don't shadow variables, from Matthias Wallnöfer 2009-10-21 20:23:19 -07:00
Love Hornquist Astrand 600b435d06 Spelling
From Luke Howard
2009-10-19 09:32:15 -07:00
Love Hornquist Astrand 91fd0b2f17 Spelling
From Luke Howard
2009-10-19 09:32:10 -07:00
Love Hornquist Astrand 2ac04069b6 If the context already have a EVP_MD_CTX allocated, don't make a new
Patch from Derrick Pallas of Riverbed Techology
2009-10-16 16:40:49 -07:00
Love Hornquist Astrand 290255ee0b Drop optind variable since its only set (and -Wshadow libsystem)
From Matthias Dieter Wallnöfer
2009-10-16 08:26:43 -07:00
Love Hornquist Astrand a2806a995d remove $id$ 2009-10-15 15:01:39 -07:00
Love Hornquist Astrand 5dfe957a8f add (c) for the file that was left out 2009-10-15 14:59:58 -07:00
Love Hornquist Astrand 63e865e500 Fix quoting for [], reported by Klas Heggemann 2009-10-13 23:44:44 -07:00
Andrew Bartlett 6243038c9f s4:heimdal A real fix for bug 6801
The issue was that we would free the entry after the database, not
knowing that the entry was a talloc child of the database.

Andrew Bartlett

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-10-13 21:44:22 -07:00
Love Hornquist Astrand 39a751d6fb expose hdb_interface_version 2009-10-13 09:35:39 -07:00
Love Hornquist Astrand f064547294 Use com_right_r(). 2009-10-12 10:55:12 -07:00
Love Hornquist Astrand 0c5a5849e1 add com_right_r 2009-10-12 10:41:32 -07:00
Love Hornquist Astrand d366ed823c add krb5_?prepend_error_message() 2009-10-12 10:23:28 -07:00
Love Hornquist Astrand 1857a8b41c add krb5_?prepend_error_message() 2009-10-12 10:23:14 -07:00
Love Hornquist Astrand 33002c449c deprecate krb5_get_err_text 2009-10-12 09:38:14 -07:00
Love Hornquist Astrand 8d84cfe5c2 deprecate krb5_get_err_text 2009-10-12 09:37:54 -07:00
Love Hornquist Astrand f5e2873be2 Use strerror_r 2009-10-12 09:34:37 -07:00
Love Hornquist Astrand fd042b7656 Use strerror_r 2009-10-12 09:22:45 -07:00
Love Hornquist Astrand 5319735cf8 fixup link magic 2009-10-12 09:19:08 -07:00
Love Hornquist Astrand 682c5e5867 Use strerror_r 2009-10-12 09:07:31 -07:00
Love Hornquist Astrand bf01a8461f Use strerror_r 2009-10-12 09:06:11 -07:00
Love Hornquist Astrand fb35ca4026 detect strerror_r and if not there, provide it 2009-10-12 09:01:55 -07:00
Love Hornquist Astrand f0caeb7865 its enctyps not encodings 2009-10-12 07:32:29 -07:00
Love Hornquist Astrand 205fb5e608 Patch from Guillaume Rousse to update the Windows situation 2009-10-12 07:27:47 -07:00
Love Hornquist Astrand f13a9244a5 rc1 2009-10-11 19:13:01 -07:00
Love Hornquist Astrand 39d4a77d6a Disable this for AIX 2009-10-11 18:42:59 -07:00
Love Hornquist Astrand 279d62834d [HEIMDAL-646] malloc(0) checks for AIX 2009-10-11 18:17:12 -07:00
Love Hornquist Astrand a4881ea0d6 [HEIMDAL-646] malloc(0) checks for AIX 2009-10-11 18:04:43 -07:00
Love Hornquist Astrand 57faf165a0 [HEIMDAL-646] malloc(0) checks for AIX 2009-10-11 18:03:22 -07:00
Love Hornquist Astrand 6f6a384257 [HEIMDAL-646] malloc(0) checks for AIX 2009-10-11 18:02:56 -07:00
Love Hornquist Astrand b0e53280e2 [HEIMDAL-646] malloc(0) checks for AIX 2009-10-11 17:33:13 -07:00
Love Hornquist Astrand b4013ca830 [HEIMDAL-646] malloc(0) checks for AIX 2009-10-11 17:33:02 -07:00
Love Hornquist Astrand 75aebbf616 [HEIMDAL-646] malloc(0) checks for AIX 2009-10-11 17:32:38 -07:00
Love Hornquist Astrand da376b3c48 [HEIMDAL-646] malloc(0) checks for AIX 2009-10-11 17:19:00 -07:00
Love Hornquist Astrand dba1d46edf [HEIMDAL-646] use awk instead of grep -A 2009-10-11 17:04:13 -07:00
Love Hornquist Astrand 9f587ef0c2 Allocate some memory for OCSP responces 2009-10-11 16:26:26 -07:00
Love Hornquist Astrand 84111cb8e1 [HEIMDAL-646] malloc(0) checks for AIX 2009-10-11 16:25:42 -07:00
Love Hornquist Astrand 102cd04b0d its ok to return NULL if we are allocating zero elements 2009-10-11 15:38:21 -07:00
Love Hornquist Astrand 1e9ec73bbc [HEIMDAL-646] aix
AIX qsort() is unstable and might change the order of the elements
if they are equal, libwind require them to be in the same order as they were
on the input, pull in FreeBSD qsort and use that instead of AIX version.
2009-10-11 15:08:58 -07:00
Love Hornquist Astrand e1b14b7854 Use right type when mallocing data (allocated too much) 2009-10-11 15:08:27 -07:00
Love Hornquist Astrand 119eb68a2e Remove debug printf 2009-10-11 14:44:41 -07:00
Love Hornquist Astrand 377543e78e use size_t for index 2009-10-11 14:36:46 -07:00
Love Hornquist Astrand 93f0e450cc fix sizeof, only matter on platforms where sizeof(unsigned) != sizeof(uint32_t) 2009-10-11 12:22:19 -07:00
Love Hornquist Astrand 983d0f66f1 print lineno 2009-10-11 12:18:22 -07:00
Love Hornquist Astrand d36402a671 Don't assume ldap_bv2escaped_filter_value() is exported 2009-10-11 11:17:56 -07:00
Love Hornquist Astrand 977acdd84d Always send subkey and assume reply is encrypted using subkey 2009-10-11 09:12:01 -07:00
Love Hornquist Astrand 678f9f9f07 [HEIMDAL-533] KDC sends TGS-REP encrypted in session key not authenticator
From RFC 4120, page 35

   In preparing the authentication header, the client can select a sub-
   session key under which the response from the Kerberos server will be
   encrypted.  If the client selects a sub-session key, care must be
   taken to ensure the randomness of the selected sub-session key.

The client library alread handle this case.

Thanks to Sam Hartman to report this though Debian
2009-10-11 08:46:53 -07:00
Love Hornquist Astrand 8e08aa0a15 Use krb5_free_keyblock() 2009-10-11 08:45:51 -07:00
Love Hornquist Astrand 2a369fc7fe Capture failures from krb5_cc_get_principal()
Reported by Guillaume Rousse
2009-10-08 08:19:05 -07:00
Love Hornquist Astrand 943123da3b enable DES when getting the afs credential 2009-10-07 09:39:19 -07:00
Love Hornquist Astrand d3d9e5ecb5 free sp on error/full send 2009-10-06 11:19:27 -07:00
Love Hornquist Astrand 75210a985a spelling 2009-10-06 10:02:34 -07:00
Love Hornquist Astrand 4bab1141d8 syntax error, from Harald Barth 2009-10-06 09:36:18 -07:00
Love Hornquist Astrand 6d49d9feeb more text about TheseCells and ThisCell, from Harald Barth 2009-10-06 09:30:27 -07:00
Love Hornquist Astrand 77ecef0327 tell where kafs will search for files, from Harald Barth 2009-10-06 09:27:46 -07:00
Love Hornquist Astrand 62c061c79a Wordsmithing, from Harald Barth 2009-10-06 09:22:20 -07:00
Love Hornquist Astrand fbbb1bd04c pre11 2009-10-06 07:46:34 -07:00
Love Hornquist Astrand 57b40643b9 use server name for referral decision 2009-10-06 07:38:29 -07:00
Love Hornquist Astrand ceac2815bb Just use RAND_bytes() for generating random bytes 2009-10-06 06:00:24 -07:00
Love Hornquist Astrand d934c249f9 count the manpages 2009-10-05 22:50:18 -07:00
Love Hornquist Astrand ded5608c0b pick up configuration from the right spot 2009-10-05 22:48:03 -07:00
Love Hornquist Astrand 75a61b8842 krb5_build_authenticator is private 2009-10-05 22:09:23 -07:00
Love Hornquist Astrand 6d1d17efed don't canonicalize names that are short then 2 name element
Since KDC will probably guess wrong on them, and doing
afs@CLIENT-REALM have too large change of actually working.
2009-10-05 22:07:47 -07:00
Love Hornquist Astrand 4c5a79f21b add setup-env.in 2009-10-05 21:32:43 -07:00
Love Hornquist Astrand 8d381c8c34 add dependency for doxyout 2009-10-05 21:06:06 -07:00
Love Hornquist Astrand cbb6bb5427 include doxyout in DIST_EXTRA 2009-10-05 20:57:34 -07:00
Love Hornquist Astrand d7e7640d46 fix argumentin doxygen 2009-10-05 20:29:37 -07:00
Love Hornquist Astrand bfa9f0b639 pre10 2009-10-05 20:12:34 -07:00
Love Hornquist Astrand da91c5ed85 Fix tests 2009-10-05 20:11:49 -07:00
Love Hornquist Astrand a132ffe757 Simplify krb5_build_authenticator and unexport 2009-10-05 19:52:28 -07:00
Love Hornquist Astrand cc65dc4e8e Just make a copy of the cksum instead of trying to work around the
fact that its not really copied.
2009-10-05 19:25:46 -07:00
Love Hornquist Astrand 753e2cc925 Check that enctypes are valid/enabled before trying to request them 2009-10-05 19:17:11 -07:00
Love Hornquist Astrand 0d10dfb529 doxygen 2009-10-04 11:33:45 -07:00
Love Hornquist Astrand b0f73165a7 use krb5_make_principal 2009-10-04 11:29:54 -07:00
Love Hornquist Astrand 9e13b309d9 use krb5_make_principal 2009-10-04 11:29:43 -07:00
Love Hornquist Astrand ba8b14ebbc use krb5_make_principal 2009-10-04 11:29:29 -07:00
Love Hornquist Astrand c7f51c8c5b use krb5_make_principal 2009-10-04 11:29:20 -07:00
Love Hornquist Astrand 393ea16776 use krb5_make_principal 2009-10-04 11:29:05 -07:00
Love Hornquist Astrand 0153270494 use krb5_make_principal 2009-10-04 11:28:54 -07:00
Love Hornquist Astrand dc31556b7d use krb5_generate_subkey_extended 2009-10-04 11:12:43 -07:00
Love Hornquist Astrand 4f6759157b move krb5_generate_subkey to deprecated and provide doxygen 2009-10-04 11:02:44 -07:00
Love Hornquist Astrand 615820b0af move krb5_generate_subkey here and deprecate 2009-10-04 11:02:43 -07:00
Love Hornquist Astrand 2257ba3ea5 Anton Lundin 2009-10-03 13:34:16 -07:00
Love Hornquist Astrand 18d3895aad add Johan Gadsjö 2009-10-03 13:33:38 -07:00
Love Hornquist Astrand ff87429593 Make LDAP code fetch less attributes from LDAP server when KDC is asking
Johan Gadsjö did a awesome analysis of the LDAP access pattens
and sent us a patch that reduced the calls the ldap server by 4
times as many. The patch was adopted and change to avoid compile
time depencies and make the determination runtime instead. Thanks!
2009-10-03 13:20:41 -07:00
Love Hornquist Astrand 6f857bc86d @subsection kafs and afslog 2009-10-03 12:26:17 -07:00
Love Hornquist Astrand 4b79b6fa57 remove unused variable
Based on a report from Matthias Dieter Wallnöfer.
2009-10-03 11:38:55 -07:00
Love Hornquist Astrand 175111efd7 Make renewstr const char * to avoid const warning
Based on a report from Matthias Dieter Wallnöfer.
2009-10-03 11:37:38 -07:00
Love Hornquist Astrand 7b999148f8 Rename str to oid in the function namespace to avoid -Wshadow warning
Based on a report from Matthias Dieter Wallnöfer.
2009-10-03 11:35:45 -07:00
Love Hornquist Astrand ce0293b994 Rename f to ksf in the global function namespace to avoid -Wshadow warning
Based on a report from Matthias Dieter Wallnöfer.
2009-10-03 11:33:41 -07:00
Love Hornquist Astrand 64835d0836 Rename header to print_pem_stamp in the global namespace to avoid -Wshadow warning
Based on a report from Matthias Dieter Wallnöfer.
2009-10-03 11:24:03 -07:00
Matthias Dieter Wallnöfer 8457216616 heimdal kerberos - fix memory leak (free the plugin list always - not only in error cases)
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-10-03 11:13:09 -07:00
Love Hornquist Astrand 100c440153 Handle windows windows LH with interesting content info packets (broken) 2009-10-01 10:38:30 -07:00
Love Hornquist Astrand 7eac18abc3 verify that n0ll cert is broken 2009-09-30 01:20:38 -07:00
Love Hornquist Astrand 24f9a30864 reference to where cert comes from 2009-09-30 01:20:25 -07:00
Love Hornquist Astrand 824ac40a10 add data/n0ll.pem 2009-09-30 01:18:34 -07:00
Love Hornquist Astrand b17ad58fe5 n0ll names check 2009-09-30 01:18:04 -07:00
Love Hornquist Astrand d4e2da58cf count certs that verify and if no verify at all, whine 2009-09-30 01:17:50 -07:00
Love Hornquist Astrand 215b3813f6 teletexString is now a real string type 2009-09-30 00:54:13 -07:00
Love Hornquist Astrand 4d06f484ec implement TeletexString 2009-09-30 00:48:18 -07:00
Love Hornquist Astrand 0b144cdf8d implement teletexstring 2009-09-30 00:47:39 -07:00
Love Hornquist Astrand a5b04fe4b5 If et.authorization_data is not allocated, make it so.
Patch from Johan Gadsjö
2009-09-29 23:28:47 -07:00
Love Hornquist Astrand f9d3a70469 clean pkinit4.crt 2009-09-29 18:51:52 -07:00
Love Hornquist Astrand 18f2c32463 make _krb5_pk_set_user_id update ->cert too 2009-09-29 14:27:47 -07:00
Love Hornquist Astrand 918b64e6d8 test pk-enterprise 2009-09-29 14:27:13 -07:00
Love Hornquist Astrand 2064ee1a37 Wrap rc2 with COMMONCRYPTO_SUPPORTS_RC2 since its not suported on Leopard 2009-09-29 13:21:16 -07:00
Love Hornquist Astrand 16cb4ae495 make --pk-enterprise work again 2009-09-29 13:14:50 -07:00
Love Hornquist Astrand 91e067e925 Use hx509_context that build from krb5_context 2009-09-29 13:14:20 -07:00
Love Hornquist Astrand 1e65f30a2d drop hx509_context in krb5_id 2009-09-29 13:13:51 -07:00
Love Hornquist Astrand af61cd2eb4 Use hx509_context that build from krb5_context 2009-09-29 13:13:32 -07:00
Love Hornquist Astrand 2ec7e6b4fa Use hx509_context that build from krb5_context 2009-09-29 13:13:21 -07:00
Love Hornquist Astrand 1ac50627e6 add forward decl for hx509_certs_data 2009-09-29 11:29:20 -07:00
Love Hornquist Astrand a95f16503e load hx509 context 2009-09-29 11:29:02 -07:00
Love Hornquist Astrand e27f40b032 update usage for _krb5_pk_load_id 2009-09-29 11:28:51 -07:00
Love Hornquist Astrand 682e7e012c export hx509_certs_ref 2009-09-29 11:28:24 -07:00
Love Hornquist Astrand 0e762f8689 support output passphrases for copy certificate 2009-09-29 11:28:12 -07:00
Love Hornquist Astrand 50de7c4203 (hx509_lock_free): allow freeing NULL 2009-09-29 11:12:32 -07:00
Love Hornquist Astrand a610d28727 Add _krb5_get_init_creds_opt_set_pkinit_user_certs 2009-09-29 11:11:04 -07:00
Love Hornquist Astrand 97a511457f kinit helpers 2009-09-29 11:10:41 -07:00
Love Hornquist Astrand a49d9f3376 use _krb5_get_init_creds_opt_set_pkinit_user_certs 2009-09-29 10:49:08 -07:00
Love Hornquist Astrand 19e45237cb struct hx509_certs_data 2009-09-29 10:48:47 -07:00
Love Hornquist Astrand 17cd6e2d5f Use hx509_certs_ref() 2009-09-29 09:58:47 -07:00
Love Hornquist Astrand ec47674c2b expose hx509_certs_ref 2009-09-29 09:42:15 -07:00
Love Hornquist Astrand 61cc35b83b include hx509_context in krb5_context 2009-09-29 09:23:37 -07:00
Love Hornquist Astrand f7bde058ee Include dirfd for AIX too
From Anton Lundin
2009-09-29 08:56:07 -07:00
Love Hornquist Astrand 7fbe96b164 Paranoid in checking that we parsed the complete buffer 2009-09-29 08:26:17 -07:00
Love Hornquist Astrand 9680711e30 fixup installation documentation 2009-09-27 18:26:54 -07:00
Love Hornquist Astrand 30c385b965 build instruction and binaries now on web 2009-09-27 12:07:49 -07:00
Love Hornquist Astrand f960c129b5 add missing ] 2009-09-26 15:24:55 -07:00
Love Hornquist Astrand d1a46017f0 allow cross compiling TRY_RUN target (assume getaddrinfo is sane) 2009-09-26 15:22:39 -07:00
Love Hornquist Astrand 9d206b1654 allow cross compiling TRY_RUN target ( 2009-09-26 15:21:14 -07:00
Love Hornquist Astrand ec263fc5a4 reading negative size is wrong, zero is ok 2009-09-25 14:53:31 -07:00
Love Hornquist Astrand 9bace01559 Check for malloc(0) to make AIX happy
Prompted by [HEIMDAL-646] by Anton Lundin
2009-09-24 07:32:35 -07:00
Love Hornquist Astrand 98f2421134 Use krb5_cc_get_type() to get the type, dont assume typename_arg is set
Patch from Johan Gadsjö via Joakim Fallsjö
2009-09-24 07:19:33 -07:00
Love Hornquist Astrand 8ec3c9dcba remove UPDATED 2009-09-24 00:32:12 -07:00
Love Hornquist Astrand 2ae2fb48f0 add --with-cross-tools=dir to allow to special where cross tools are if they are not in path 2009-09-24 00:13:15 -07:00
Love Hornquist Astrand f8b06809a1 export _et_list, report by Barry Sia 2009-09-23 16:23:04 -07:00
Love Hornquist Astrand 92075b8825 add allow wrong oid flag, short for trust anchors 2009-09-23 00:02:46 -07:00
Love Hornquist Astrand 6b3fb1c674 drop $Id$ 2009-09-21 19:15:00 -07:00
Love Hornquist Astrand 2ef2c451a4 drop $Id$ 2009-09-21 19:14:50 -07:00
Love Hornquist Astrand 72908828b1 remove $Id$ 2009-09-21 10:36:37 -07:00
Love Hornquist Astrand 94cc296741 plug more leaks 2009-09-21 10:08:42 -07:00
Love Hornquist Astrand 76cf97e2b0 free pac after reading it 2009-09-21 09:59:38 -07:00
Love Hornquist Astrand 80c866a4a7 fix valgrind problems 2009-09-21 09:52:28 -07:00
Love Hornquist Astrand f68a1bfb1a use maybe-valgrind.sh 2009-09-21 09:38:10 -07:00
Love Hornquist Astrand 7016cb579f try checking if we should run libtool/valgrind or not 2009-09-21 09:37:55 -07:00
Love Hornquist Astrand ff5bd1f6c6 use socket_set_ipv6only to bind only to the local v6 socket
This is since we probably will get a v4 adresses a tiny bit later, and
that will fail binding.
2009-09-21 07:59:18 -07:00
Love Hornquist Astrand 3ed38b29c7 If client tried IPv6, but service only listened on IPv4 2009-09-21 07:55:33 -07:00
Love Hornquist Astrand d7dcaae909 str unused, drop 2009-09-21 06:26:39 -07:00
Love Hornquist Astrand e247375e1c add hx509_print_cert 2009-09-21 06:24:22 -07:00
Love Hornquist Astrand b9c11926f7 add hx509_print_cert 2009-09-21 06:24:14 -07:00
Love Hornquist Astrand 9c89bf0a73 use hx509_print_cert 2009-09-21 06:23:34 -07:00
Love Hornquist Astrand 7a0af9ae18 Its ok to pass down NULL as the context handle to error string function
Just ignore setting the error string if that is the case.
2009-09-21 06:21:23 -07:00
Love Hornquist Astrand a7d5b2a15e make zero_ivec unsigned 2009-09-20 22:37:27 -07:00
Love Hornquist Astrand c4192ba355 use = to between type and argument to be less confusing 2009-09-20 21:59:37 -07:00
Love Hornquist Astrand b7bae0b201 make sure there are splace for storing ETYPE_NULL att the end of the array 2009-09-20 21:57:20 -07:00
Love Hornquist Astrand 4018b7bb84 Add AC_PROG_LIBTOOL 2009-09-20 21:41:17 -07:00
Love Hornquist Astrand 043897bba4 remove ROKEN_VERSION 2009-09-20 01:36:42 -07:00
Love Hornquist Astrand a5b819e474 remove ROKEN_VERSION 2009-09-20 01:36:29 -07:00
Love Hornquist Astrand d55ee89437 use PACKAGE_VERSION instead 2009-09-20 01:36:09 -07:00
Love Hornquist Astrand 313a5011ac move krb5-types.cross to EXTRA_DIST 2009-09-20 01:11:49 -07:00
Love Hornquist Astrand ddb40e585e don't clean out crypto-headers.h, its a static file 2009-09-20 01:10:26 -07:00
Love Hornquist Astrand 80504759c1 include headers when we try to to find the symbols, since it might not be a variable... 2009-09-19 18:04:30 -07:00
Love Hornquist Astrand 3e2a2de537 Maybe include <ws2tcpip.h>. 2009-09-19 17:55:04 -07:00
Love Hornquist Astrand cfafa64f83 Maybe include <netdn.h>, maybe include <ws2tcpip.h> 2009-09-19 17:53:56 -07:00
Love Hornquist Astrand cadd62466b Maybe include <sys/socket.h> 2009-09-19 17:45:42 -07:00
Love Hornquist Astrand fb0fc045c9 check for winsock2 2009-09-19 17:35:53 -07:00
Love Hornquist Astrand a64366ba7f fix depenecies for make-roken 2009-09-19 17:25:54 -07:00
Love Hornquist Astrand 7005f1f3f9 process roken.h.in with a perlscript when cross compiling 2009-09-19 16:43:35 -07:00
Love Hornquist Astrand 7b83dfbe72 Fix #if _DECL_ definitions 2009-09-19 16:32:23 -07:00
Love Hornquist Astrand e94857ef33 Remove #if 0 code 2009-09-19 14:44:56 -07:00
Love Hornquist Astrand 61a21c6955 catch error from vasprintf 2009-09-19 14:36:06 -07:00
Love Hornquist Astrand fb63b6d6f0 Don't care about the result from write() in SIGSEGV handler 2009-09-19 14:34:58 -07:00
Love Hornquist Astrand 4795494a78 If there is no useful db support compile in, disable test 2009-09-19 14:06:35 -07:00
Love Hornquist Astrand 13d580409a Set default realm, makes test pass for hosts w/o default realm 2009-09-19 13:58:00 -07:00
Love Hornquist Astrand 914417c5c8 Remove unused structure 2009-09-19 13:55:34 -07:00
Love Hornquist Astrand f5a7b42db6 Don't parse realm for names, makes test pass for hosts w/o default realm 2009-09-19 13:43:58 -07:00
Love Hornquist Astrand e538b1e84b simplify, make sure length is set properly 2009-09-19 12:57:30 -07:00
Love Hornquist Astrand 26aefa1853 Don't free rsa (NULL) on failure to parse key 2009-09-19 12:35:27 -07:00
Love Hornquist Astrand b0e2117322 Add missing symbols and fix malformed symbols
Build failure reported by Rok Papež on heimdal-discuss
2009-09-19 12:26:52 -07:00
Love Hornquist Astrand b59d869489 have HAVE_DECL_ if special and is set to 0 on failure 2009-09-19 10:48:49 -07:00
Love Hornquist Astrand d687a46cee Add back missing AH_BOTTOM 2009-09-18 15:49:42 -07:00
Stefan Metzmacher 103cc941eb gssapi/krb5: set cred_handle in _gsskrb5_import_cred
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-09-18 14:29:50 -07:00
Love Hornquist Astrand ac8444c77f More #if -> #ifdef 2009-09-16 20:21:08 -07:00
Love Hornquist Astrand 9da5a02331 More #if -> #ifdef 2009-09-16 20:18:56 -07:00
Love Hornquist Astrand 082b2ecb08 use #ifdef 2009-09-16 16:39:37 -07:00
Love Hornquist Astrand da642095a7 SUN4 dead, sorry 2009-09-16 16:37:45 -07:00
Love Hornquist Astrand 048ccef92e SUN4 dead, sorry 2009-09-16 16:34:39 -07:00
Love Hornquist Astrand dec4371492 use !defined instead of ! 2009-09-16 16:30:51 -07:00
Love Hornquist Astrand 486ebbb49a use ifdef 2009-09-16 16:11:51 -07:00
Love Hornquist Astrand de036b72f2 authentication is always turned on 2009-09-16 16:10:19 -07:00
Love Hornquist Astrand 6fada85f78 if the UDP packet is truncated, return too packet large 2009-09-16 16:06:11 -07:00
Love Hornquist Astrand 6061cb5ee7 use max_request_str instead of max_request 2009-09-16 16:00:47 -07:00
Love Hornquist Astrand 52f94f5d42 Remove $Id$ 2009-09-16 15:11:00 -07:00
Love Hornquist Astrand 84b191349c remove more 2009-09-16 15:10:48 -07:00
Love Hornquist Astrand 8578600dbb Drop IRIX 4 support 2009-09-16 14:58:21 -07:00
Love Hornquist Astrand 53c878d313 Remove #if 0 for unused code 2009-09-16 14:55:16 -07:00
Love Hornquist Astrand bb05c428f7 no AC_SUBST for VOID_RETSIGTYPE 2009-09-16 12:23:14 -07:00
Love Hornquist Astrand 46443d23bb install tools in libexec/heimdal, fix deps 2009-09-16 05:59:54 -07:00
Love Hornquist Astrand e02f0d3646 fix asn1_compile_dep dependency 2009-09-16 05:56:41 -07:00
Love Hornquist Astrand 3d7488398a abstract out depenecy tracking for tools 2009-09-16 05:40:55 -07:00
Love Hornquist Astrand 6505961801 double include protection 2009-09-16 00:36:47 -07:00
Love Hornquist Astrand cddc59924c crypto headers are now stable, provide posix krb5-types.h 2009-09-16 00:24:25 -07:00
Love Hornquist Astrand dc4e8669ea Abstract out asn1_compile and slc 2009-09-16 00:12:13 -07:00
Love Hornquist Astrand 8e8c155c50 Make example sane and make LDAP style backends work (slight better)
Fix the format example, parse the string backward to take of the
master key before passing the database name down into the HDB backend
layer.
2009-09-12 17:26:10 -07:00
Love Hornquist Astrand 36ea29599d there is no database 2009-09-12 16:48:51 -07:00
Love Hornquist Astrand d890db78a8 Drop RCSID 2009-09-10 09:06:18 -07:00
Love Hornquist Astrand a0b4f918a8 doxygen 2009-09-10 09:03:43 -07:00
Love Hornquist Astrand 32d69c77f4 more doxygen 2009-09-08 11:09:55 -07:00
Love Hornquist Astrand 07634950e8 drop 45 library 2009-09-07 21:39:32 -07:00
Love Hornquist Astrand 6536f807de remove 45 library, never used 2009-09-07 21:27:21 -07:00
Love Hornquist Astrand cad48529d0 drop 45 library 2009-09-07 21:26:37 -07:00
Love Hornquist Astrand 17bad91ee5 drop RCSID 2009-09-07 21:25:22 -07:00
Love Hornquist Astrand 6a56476258 drop RCSID 2009-09-07 21:25:05 -07:00
Love Hornquist Astrand c5264d42f4 drop rcsid 2009-09-07 21:24:36 -07:00
Love Hornquist Astrand d6a785f025 drop rcsid 2009-09-07 21:24:04 -07:00
Love Hornquist Astrand a83bb81997 drop rcsid 2009-09-07 21:23:42 -07:00
Love Hornquist Astrand 9e4bc686d3 drop rcsid 2009-09-07 21:22:46 -07:00
Love Hornquist Astrand 9120d17eb0 Tell some what servers we tried to talk to 2009-09-07 20:55:05 -07:00
Love Hornquist Astrand 4c06438189 Add _krb5_krbhst_get_realm() to get what realm was used 2009-09-07 20:54:48 -07:00
Love Hornquist Astrand 878eb853df Add debug_dest member 2009-09-07 20:38:29 -07:00
Love Hornquist Astrand 6770fd45e1 Sprinkle _krb5_debug() for more info about what the framework is actually doing behind our back 2009-09-07 20:22:44 -07:00
Love Hornquist Astrand 5a3630ba00 Add _krb5_log() used for internal logging 2009-09-07 20:22:14 -07:00
Love Hornquist Astrand c0333682c6 Add logging if its specfied by the configuration file 2009-09-07 20:21:38 -07:00
Love Hornquist Astrand e437a39f79 add tests/bin 2009-09-07 16:37:01 -07:00
Love Hornquist Astrand ec41925167 add bin 2009-09-07 16:36:35 -07:00
Love Hornquist Astrand f4e14830cc drop unused vars 2009-09-07 16:26:04 -07:00
Love Hornquist Astrand 59e4c30803 drop unused vars 2009-09-07 16:25:57 -07:00
Love Hornquist Astrand a0603b4900 add kdigest 2009-09-07 16:23:33 -07:00
Love Hornquist Astrand ade7052a48 add kpasswd and kpasswdd 2009-09-07 16:22:36 -07:00
Love Hornquist Astrand 0f4db6447f use ${env_setup} 2009-09-07 16:22:16 -07:00
Love Hornquist Astrand 925d24daec migrate to ${env_setup} 2009-09-07 15:48:02 -07:00
Love Hornquist Astrand 7bb288bad9 add more tools 2009-09-07 15:47:36 -07:00
Love Hornquist Astrand e306c3f314 migrate to ${env_setup} 2009-09-07 15:45:31 -07:00
Love Hornquist Astrand 9002b81a5d migrate to ${env_setup} 2009-09-07 15:40:44 -07:00
Love Hornquist Astrand 6377aab76f migrate to ${env_setup} 2009-09-07 15:40:14 -07:00
Love Hornquist Astrand c3a3efe89f migrate to ${env_setup} 2009-09-07 15:39:29 -07:00
Love Hornquist Astrand 556555f7c4 drop unused stuff 2009-09-07 15:38:21 -07:00
Love Hornquist Astrand cb0ec3538b migrate to ${env_setup} 2009-09-07 15:36:50 -07:00
Love Hornquist Astrand 7cbd7c2bf0 sort lines 2009-09-07 15:34:49 -07:00
Love Hornquist Astrand d33cbbda51 sort lines 2009-09-07 15:34:43 -07:00
Love Hornquist Astrand 72590fb0c9 sort lines 2009-09-07 15:34:29 -07:00
Love Hornquist Astrand cdee28dd25 add kadmind 2009-09-07 15:34:18 -07:00
Love Hornquist Astrand 9a106ac7da migrate to ${env_setup} 2009-09-07 15:15:14 -07:00
Love Hornquist Astrand 84d880b0a5 migrate to ${env_setup} 2009-09-07 15:13:54 -07:00
Love Hornquist Astrand 0b2db226e3 use have_db 2009-09-07 15:12:55 -07:00
Love Hornquist Astrand 908f962644 migrate to ${env_setup} 2009-09-07 15:12:16 -07:00
Love Hornquist Astrand 0a9eeb8831 migrate to ${env_setup} 2009-09-07 15:10:43 -07:00
Love Hornquist Astrand 73802775b0 EGREP is defined by setup-env 2009-09-07 15:09:24 -07:00
Love Hornquist Astrand 012c91539e clean message log to make sure the right "ipropd-slave started" message is captured 2009-09-07 15:08:21 -07:00
Love Hornquist Astrand 76b32b6518 re-enable test 2009-09-07 14:52:56 -07:00
Love Hornquist Astrand e8dfb4b2d3 send logs to /tmp/heim-malloc-log 2009-09-07 14:22:06 -07:00
Love Hornquist Astrand a772c0d495 Assume that one dns timeout is 30s and wait slightly longer then that 2009-09-07 14:14:42 -07:00
Love Hornquist Astrand 237e8680be less echo of debug stuff 2009-09-07 13:25:21 -07:00
Love Hornquist Astrand 1825f6b404 add iprop commands 2009-09-07 13:21:33 -07:00
Love Hornquist Astrand 3b878f5a81 migrate to ${env_setup} 2009-09-07 13:21:21 -07:00
Love Hornquist Astrand b86cff8ddf migrate to ${env_setup} 2009-09-07 13:15:07 -07:00
Love Hornquist Astrand 6ef0e4204d Add heim_malloc_debug 2009-09-07 13:14:00 -07:00
Love Hornquist Astrand 6ea50b6bbd migrate to ${env_setup} 2009-09-07 13:13:38 -07:00
Love Hornquist Astrand 557685fed4 migrate to ${env_setup} 2009-09-07 13:05:31 -07:00
Love Hornquist Astrand 2b9ca6c027 add kswitch 2009-09-06 23:24:21 -07:00
Love Hornquist Astrand b8791f1624 migrate to ${env_setup} 2009-09-06 23:24:08 -07:00
Love Hornquist Astrand 4cee1d0b58 add newline 2009-09-06 23:19:18 -07:00
Love Hornquist Astrand 6683a553f2 externlize env-setup 2009-09-06 23:16:03 -07:00
Love Hornquist Astrand fb811a8ef9 drop srcdir, not used 2009-09-06 18:49:00 -07:00
Love Hornquist Astrand b2d2a37460 migrate to setup-env 2009-09-06 18:48:31 -07:00
Love Hornquist Astrand 45cb91dde2 switch to mostly configuration in setup-env for check-kdc 2009-09-06 18:38:23 -07:00
Love Hornquist Astrand 16b4ddcf14 document gss_release_cred 2009-09-06 12:18:14 -07:00
Love Hornquist Astrand 3c1deaa6c2 move krb5_compare_creds to doxygen 2009-09-06 11:46:03 -07:00
Love Hornquist Astrand e2cbb2d350 document flags to krb5_compare_creds() 2009-09-06 11:45:25 -07:00
Love Hornquist Astrand b7c329244c drop UPDATED 2009-09-06 09:09:22 -07:00
Love Hornquist Astrand e2cccfd4d4 drop date 2009-09-06 09:04:35 -07:00
Love Hornquist Astrand 64d0f86eb6 drop date 2009-09-06 09:04:17 -07:00
Love Hornquist Astrand b4e0897eec move @ symbol to first command 2009-09-06 08:59:30 -07:00
Love Hornquist Astrand 20975e9dcd split info documentation 2009-09-06 08:29:10 -07:00
Love Hornquist Astrand 36f403cec3 move all doxygen output to doc/doxyout/ 2009-09-06 08:28:42 -07:00
Love Hornquist Astrand 352b7663a3 indert end of header marker 2009-09-06 08:18:24 -07:00
Love Hornquist Astrand 3b761fddc0 check the clients with current_version, and if client have newer, whine 2009-09-05 14:41:03 -07:00
Love Hornquist Astrand 03b6f9a09b Don't send diffs to dead slaves 2009-09-05 14:31:49 -07:00
Love Hornquist Astrand 48c796fa78 pre9 2009-09-03 10:45:21 -07:00
Love Hornquist Astrand df00111aaf Don't try to print NULL, solaris printf wont have it
Reported in [HEIMDAL-635] by John Center
2009-09-03 09:16:37 -07:00
Love Hornquist Astrand 4bcc97bd09 doxygen fix vget_time uses args 2009-09-01 12:44:23 -07:00
Love Hornquist Astrand 30f13f0d5b doxygen fix get_strings uses ... 2009-09-01 12:43:50 -07:00
Love Hornquist Astrand 9f9783464c Don't make krb5_ccache point into krb5_context allocated memory
Don't make a copy of the krb5_cc_ops into krb5_context and hand that
out to callers of the api, this way its possible to free a krb5_context
w/o invalidating all krb5_ccaches that was allocated using that krb5_context
(also, it saves memory)
2009-09-01 12:22:16 -07:00
Love Hornquist Astrand 20001366aa Better support for kinit -k when client have subset of enctypes compared to KDC
Get the list of enctypes and use that to calculate the list of client supported
enctypes when talking to the KDC, this to make sure that KDC doesn't send
pw-challanges to the client for enctypes that the client software support
but there is no entry in the keytab.
2009-08-30 13:25:38 -07:00
Love Hornquist Astrand 54e10a2a13 Provide better error messages for libkafs 2009-08-30 11:10:15 -07:00
Love Hornquist Astrand a9cb60d7d5 more drop krb5_unparse_name.3 since its now in doxygen 2009-08-29 12:14:21 -07:00
Love Hornquist Astrand 80816d275e more doxygen 2009-08-29 12:13:41 -07:00
Love Hornquist Astrand 0d60a7d0ae implement gss-wrap-iov and friends 2009-08-29 09:04:53 -07:00
Love Hornquist Astrand 8052362e92 test spnegoiov 2009-08-29 09:03:46 -07:00
Love Hornquist Astrand c81b66aa0c init gm_flags for dynamic modules 2009-08-29 08:53:16 -07:00
Love Hornquist Astrand 8f376895ae drop export symbol 2009-08-29 08:51:00 -07:00
Love Hornquist Astrand dce2342816 drop krb5_ticket.3 2009-08-29 01:28:28 -07:00
Love Hornquist Astrand 940f050300 doxygen 2009-08-29 01:26:16 -07:00
Love Hornquist Astrand 3e16d622c5 fix ecdsa endif 2009-08-28 15:18:50 -07:00
Love Hornquist Astrand 3553a3e837 pre8 2009-08-28 13:39:14 -07:00
Stefan Metzmacher 2f1a370cd3 hack for gss-wrap-iov to it work
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-28 13:31:12 -07:00
Love Hornquist Astrand 33019cc597 Spelling, from Guillaume Rousse 2009-08-27 19:11:08 -07:00
Love Hornquist Astrand f030b4e59a free context 2009-08-27 18:30:29 -07:00
Love Hornquist Astrand 9a4e91b1de don't reset handle twice 2009-08-27 18:30:28 -07:00
Love Hornquist Astrand 74538fc2af Plug memory leak in prf function 2009-08-27 18:30:28 -07:00
Love Hornquist Astrand 6c3f3fafa3 Don't leak kerberos credentials when trying dns canon 2009-08-27 18:30:28 -07:00
Love Hornquist Astrand 45cfe3f971 Fix server context client context order to match callee 2009-08-27 18:30:28 -07:00
Love Hornquist Astrand 1999c85670 Make mech glue layer aware of composite mechs that uses mech glue layer credentials
This make it possible to use krb5/ntlm credentials with SPNEGO.
Needs some more work to avoid double fetching credentials.
2009-08-27 12:12:44 -07:00
Love Hornquist Astrand 32ee735d73 drop RCSID 2009-08-26 23:15:35 -07:00
Love Hornquist Astrand a2820df666 spelling 2009-08-26 22:53:38 -07:00
Love Hornquist Astrand d18cdee577 don't reset EC 2009-08-26 22:52:26 -07:00
Love Hornquist Astrand ebb2e72c61 make error message more unique 2009-08-26 22:43:25 -07:00
Love Hornquist Astrand 022e7d4319 Return unwrapped delegated credentials if the actual mech is not the called mech
Assumes that pseudo mechs are are of how mechglue credentails look like and
return credentials like that.

Pointed out on krbdev by Nicolas Williams
2009-08-26 22:32:50 -07:00
Love Hornquist Astrand 559103b218 if not trailer set, init EC to 0 2009-08-26 21:40:07 -07:00
Love Hornquist Astrand ba4909eba5 Link libroken with libcrypt since roken uses crypt() in unix_verify_password
Found by Guillaume Rousse
2009-08-26 15:20:51 -07:00
Love Hornquist Astrand f40805ec75 move iov TODO to generate TODO 2009-08-26 09:10:54 -07:00
Love Hornquist Astrand 13ba2956cc Check if COM_ERR_BINDDOMAIN_krb5 is defined, if it is, use bindtextdomain()
Older versions of compile_et doesn't support gettext/libintl support,
if they don't, there will be no such symbols and we can't load the
text domains for those symbols, so lets skip that.

Pointed out by Guillaume Rousse on heimdal-discuss
2009-08-26 09:02:25 -07:00
Love Hornquist Astrand e9603a6446 Only try ecdsa if there really is ecdsa support 2009-08-26 00:30:36 -07:00
Love Hornquist Astrand 23aebd619b Only release keys if they are allocated 2009-08-25 23:54:58 -07:00
Stefan Metzmacher 03998aeccb gsskrb5: fix test_context. after gss_wrap_iov changes
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-25 23:34:38 -07:00
Stefan Metzmacher 40a6abd116 gsskrb5: make the check for dcestyle and conf_req_flag == 0 more explicit
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-25 23:34:38 -07:00
Stefan Metzmacher 560cb0c132 gsskrb5: fix ec and padding handling in _gssapi_unwrap_cfx_iov()
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-25 23:34:38 -07:00
Stefan Metzmacher 76f0fb9170 gsskrb5: fix ec and padding handling in _gssapi_wrap_cfx_iov()
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-25 23:34:38 -07:00
Stefan Metzmacher f286dd5d64 gsskrb5: fix _gssapi_wrap_iov_length_cfx() - there's more than just krb5 overhead...
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-25 23:34:38 -07:00
Stefan Metzmacher 1a0423fd3d gsskrb5: make _gk_allocate_buffer() non static
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-25 23:34:38 -07:00
Stefan Metzmacher 60725fd2f5 gsskrb5: add _gk_verify_buffers()
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-25 23:34:37 -07:00
Love Hornquist Astrand a29c65b417 add krb5_free_unparsed_name for OpenSSH + gssapi patch, make it deprecated 2009-08-25 23:07:21 -07:00
Love Hornquist Astrand 19b997c61b add kswitch.1 2009-08-25 21:34:07 -07:00
Love Hornquist Astrand 02e28048df simple manpages for kswitch.1 2009-08-25 21:33:51 -07:00
Love Hornquist Astrand 1b07597123 drop EVP_cts support 2009-08-25 20:29:23 -07:00
Love Hornquist Astrand 7e1e9dc2e7 drop cts support 2009-08-25 20:28:33 -07:00
Love Hornquist Astrand a1aa022f8b drop evp-aes-cts 2009-08-25 20:27:04 -07:00
Love Hornquist Astrand a4d850a656 don't include evp-aes-cts.c 2009-08-25 20:26:38 -07:00
Love Hornquist Astrand 0d6e55df3c don't include evp-aes-cts.c 2009-08-25 20:26:25 -07:00
Love Hornquist Astrand 6ead770ad1 Implement CTS in terms of CBC 2009-08-25 20:26:01 -07:00
Love Hornquist Astrand 31871b4990 deifne KRB5_DEPRECATED 2009-08-25 14:35:42 -07:00
Love Hornquist Astrand 29562070ba no rpc for kadmin 2009-08-25 13:24:19 -07:00
Love Hornquist Astrand 400cc459fa deprecate krb5_config_parse_string_multi 2009-08-24 20:24:41 -07:00
Love Hornquist Astrand 46b48bc3e7 Document time function, krb5_config_parse_string_multi is not used 2009-08-24 19:52:10 -07:00
Love Hornquist Astrand 9ccc79c5b6 Don't leak context if nsi_probe failes
Deduced from valgrind log produced by Markus Moeller
2009-08-22 10:52:22 -07:00
Love Hornquist Astrand eb7448156c export d2i_RSAPublicKey 2009-08-21 21:42:03 -07:00
Love Hornquist Astrand 9f5d22b98a define and use d2i_RSAPublicKey 2009-08-21 18:57:09 -07:00
Love Hornquist Astrand 72e306c7e3 Push cert down deaper into the stack 2009-08-21 18:34:21 -07:00
Love Hornquist Astrand aee7858b16 Clean new files 2009-08-21 15:14:57 -07:00
Love Hornquist Astrand edb688c1e7 don't run EC test if there is broken EC support 2009-08-21 14:04:13 -07:00
Love Hornquist Astrand 30aa8a7166 there is already one verify, don't make two 2009-08-21 13:42:22 -07:00
Love Hornquist Astrand 941b2a1135 1.3.0pre7 2009-08-21 11:38:34 -07:00
Love Hornquist Astrand 796a522b46 always call cipher-init so that we can reset IV when caller wants too 2009-08-21 07:43:50 -07:00
Love Hornquist Astrand 2b6a34e132 allocate cleam memory for cipher to play with 2009-08-21 07:43:29 -07:00
Love Hornquist Astrand 6618ca5ffc switch to EVP_MD_CTX_create() and thus make smaller 2009-08-21 07:22:49 -07:00
Love Hornquist Astrand 56f90c5b19 switch to EVP_MD_CTX_create() and thus make smaller 2009-08-21 07:16:28 -07:00
Love Hornquist Astrand f465930be7 switch to EVP_MD_CTX_create() and thus make smaller 2009-08-21 07:16:19 -07:00
Love Hornquist Astrand dfd40e4403 switch to EVP_MD_CTX_create() and thus make smaller 2009-08-21 07:16:09 -07:00
Love Hornquist Astrand 984dd76fda switch to EVP_MD_CTX_create() and thus make smaller 2009-08-21 07:15:06 -07:00
Love Hornquist Astrand 7ad8c1fdfd switch to EVP_MD_CTX_create() and thus make smaller 2009-08-21 06:58:43 -07:00
Love Hornquist Astrand b69e856d44 Add kdestroy --all/-A 2009-08-21 06:58:31 -07:00
Love Hornquist Astrand c2f6e3eb34 Add kdestroy --all/-A 2009-08-21 06:53:46 -07:00
Love Hornquist Astrand 4f7156de1a switch to EVP_MD_CTX_create() and thus make smaller 2009-08-21 06:45:20 -07:00
Love Hornquist Astrand 292ff66a64 unused variable 2009-08-21 06:22:01 -07:00
Love Hornquist Astrand 9020bb0208 some more doxygen 2009-08-21 06:07:53 -07:00
Love Hornquist Astrand 4621ffd93c mark usage() as noreturn 2009-08-20 20:13:41 -07:00
Love Hornquist Astrand 3021868ebb Drop write only assignments 2009-08-20 20:13:08 -07:00
Love Hornquist Astrand 0c112865b4 Drop RCSID 2009-08-20 19:03:15 -07:00
Love Hornquist Astrand f5ad76fe70 set id = NULL to avoid warning 2009-08-20 19:02:18 -07:00
Love Hornquist Astrand 03cb3aa56b use EVP_MD_CTX_create 2009-08-20 17:13:09 -07:00
Love Hornquist Astrand 27b8565d5f Make verifing detached signatures easier 2009-08-20 16:27:25 -07:00
Love Hornquist Astrand e3da85a4ab add aliases to commands 2009-08-20 14:05:18 -07:00
Love Hornquist Astrand f6da838557 init variables since compiler doesn't get __attribute__((noreturn)) 2009-08-20 14:05:06 -07:00
Love Hornquist Astrand 1838afe680 Make sure return values are checked, always unblind if we blinded, handle error better 2009-08-20 14:04:34 -07:00
Love Hornquist Astrand f0aec0e637 allow one argument 2009-08-20 10:20:09 -07:00
Love Hornquist Astrand 62dc336bf9 Friendlier signing 2009-08-20 09:59:05 -07:00
Love Hornquist Astrand a7b2f1460b Allow --no-signer to work 2009-08-20 08:50:27 -07:00
Love Hornquist Astrand 14a68d5668 Set umask before creating credentials database to make sure cache is user only readable
Reported by Anton Lundin <glance@acc.umu.se>
2009-08-20 08:40:50 -07:00
Anton Lundin 76afc31e9b Try both v4 and v6 socket types
The libroken-getifaddrs fails to retrive the ipv6-address in
solaris-zones but it might connect over ipv6 anyway, and then the kdc
refuses to give a ticket with the cryptic message:

kinit: krb5_get_init_creds: No ENC-TS found

A saner message ends up in the kdc's logfile.

because of a ENXIO when looking for a ipv6-address on the
ipv4-interface, the whole getlifaddrs2 fails and getifaddrs2 is run
instead and it just discovers the ipv4-address.

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-20 07:51:56 -07:00
Love Hornquist Astrand 86d22e328f 1.3.0pre6 2009-08-20 06:55:20 -07:00
Love Hornquist Astrand c8753330e3 link libeditline with LIB_tgetent
Proposed in [HEIDMAL-619] from Anton Lundin
2009-08-20 05:33:44 -07:00
Love Hornquist Astrand 599a7e2e50 add ct_memcmp as an exported symbol 2009-08-20 04:34:26 -07:00
Love Hornquist Astrand 23c83fb6e3 move copy_etypes to HEIMDAL_SMALLER section 2009-08-19 16:58:29 -07:00
Love Hornquist Astrand 2f4ca1347f Don't include krb5_copy_context in a small heimdal 2009-08-19 16:53:03 -07:00
Love Hornquist Astrand 850f9be110 fix docxygen errors 2009-08-19 16:35:14 -07:00
Love Hornquist Astrand 5e1ceeddce Include "roken.h" for prototypes 2009-08-19 04:04:16 -07:00
Love Hornquist Astrand 929559ab2c Switch to using krb5_config_get_list() instead of krb5_config_get() 2009-08-19 04:02:25 -07:00
Love Hornquist Astrand 1edcea7811 more text 2009-08-18 10:47:02 -07:00
Love Hornquist Astrand 0b80f6e4ec document the rest of the storage functions 2009-08-18 10:46:10 -07:00
Love Hornquist Astrand 977f71c72e most of krb5_storage documented 2009-08-18 19:08:01 +02:00
Love Hornquist Astrand 36440df0e6 document krb5_ret_{u,}int{32,16,8} 2009-08-18 19:05:57 +02:00
Love Hornquist Astrand 695c7e17e1 document krb5_storage_{set,clear}_flags 2009-08-18 19:03:09 +02:00
Love Hornquist Astrand 92a6774227 document more in doxygen 2009-08-18 18:59:42 +02:00
Love Hornquist Astrand 8286ff8ec4 document more 2009-08-18 18:58:53 +02:00
Love Hornquist Astrand 5ea59c80a5 drop krb5_context.3 2009-08-18 18:38:11 +02:00
Love Hornquist Astrand 729a49037d pull the last info from krb5_context.3 2009-08-18 18:37:52 +02:00
Love Hornquist Astrand ca3ef895c3 x 2009-08-18 18:35:26 +02:00
Love Hornquist Astrand bb381aaebf document krb5_config_*_{list,bool} 2009-08-18 18:35:05 +02:00
Love Hornquist Astrand 0c5eeab318 move functions to private space that have no external consumers 2009-08-18 16:29:28 +02:00
Love Hornquist Astrand d8f6c9208b document krb5_config_*_string 2009-08-18 16:10:21 +02:00
Love Hornquist Astrand 574f8b6a6d document krb5_config_get_string 2009-08-18 16:05:21 +02:00
Love Hornquist Astrand 1aa17ecea6 document krb5_config_file_free 2009-08-18 16:01:32 +02:00
Love Hornquist Astrand 65f40a25c3 Always include md5, its needed for HMAC-MD5 that arcfour enctypes uses 2009-08-18 15:57:37 +02:00
Love Hornquist Astrand 6ec1a80772 Don't bother test with testing weak enctypes if not supported in library 2009-08-18 15:56:47 +02:00
Love Hornquist Astrand 1215f80622 Don't bother test with testing weak enctypes if not supported in library 2009-08-18 15:56:29 +02:00
Love Hornquist Astrand 4afb61a24a allow compiling out weak enctype support 2009-08-18 13:54:35 +02:00
Love Hornquist Astrand ee2814c5ff doxygen generates index 2009-08-18 13:29:47 +02:00
Love Hornquist Astrand 13de496f8a moved mdoc to doxygen 2009-08-18 13:28:58 +02:00
Love Hornquist Astrand aaf831a954 spelling 2009-08-18 13:27:07 +02:00
Love Hornquist Astrand d97b539cdf document kuserok ad doxygen 2009-08-18 13:26:07 +02:00
Love Hornquist Astrand 90bbf03216 Document krb5_kuserok() 2009-08-18 13:25:30 +02:00
Love Hornquist Astrand b54b72687e drop krb5_address.3 2009-08-18 13:11:55 +02:00
Love Hornquist Astrand 9c95cd27f9 doxygen, make constant time for real. 2009-08-18 13:10:23 +02:00
Love Hornquist Astrand b9018774d1 basic description of roken 2009-08-18 13:06:05 +02:00
Love Hornquist Astrand aab1f34689 add doxygen.c 2009-08-18 13:05:36 +02:00
Love Hornquist Astrand e4b4909e06 simplify todo list 2009-08-18 12:59:40 +02:00
Love Hornquist Astrand 88d55a1d06 Make compile for weak crypto global (HEIM_WEAK_CRYPTO) and use it for GSSAPI too 2009-08-17 18:06:42 +02:00
Love Hornquist Astrand 3560c4ed25 fix compile warning 2009-08-17 18:06:31 +02:00
Love Hornquist Astrand fc702a97f5 switch to use EVP interface instead of old crypto interface 2009-08-17 17:30:59 +02:00
Love Hornquist Astrand dd673af0b6 Import imath 1.14 2009-08-17 16:08:12 +02:00
Love Hornquist Astrand 62433c844c switch to use EVP interface instead of old crypto interface 2009-08-17 16:02:45 +02:00
Love Hornquist Astrand 06f016c1e6 Rename DEF_PROVIDER to HCRYPTO_DEF_PROVIDER 2009-08-17 13:59:17 +02:00
Love Hornquist Astrand 7afc04e7cf switch to use EVP interface instead of old crypto interface 2009-08-17 13:56:59 +02:00
Love Hornquist Astrand fcfa32b0b9 Use constant time memcmp 2009-08-17 12:04:51 +02:00
Love Hornquist Astrand a6bfd9bb41 use constant time memcmp 2009-08-17 12:01:06 +02:00
Love Hornquist Astrand 42cec58cb4 switch to use EVP interface instead of old crypto interface 2009-08-17 11:43:24 +02:00
Love Hornquist Astrand ec01d69f73 switch to use EVP interface instead of old crypto interface 2009-08-17 10:45:21 +02:00
Love Hornquist Astrand e8fce1170f separate out common crypto vs hcrypto 2009-08-17 10:39:19 +02:00
Love Hornquist Astrand 7f86c4d6a2 Add more EVP_MD symbols, don't depend on SHA1_Init/SHA256_Init 2009-08-17 10:24:59 +02:00
Love Hornquist Astrand a1f6faed25 switch to use EVP interface instead of old MDX_ style interface 2009-08-17 10:23:01 +02:00
Love Hornquist Astrand 77752adcc2 Add more EVP symbols, don't depend on MD4_Init/MD5_Init 2009-08-17 10:21:16 +02:00
Love Hornquist Astrand dfd1edb54d switch to use EVP interface instead of old MDX_ style interface 2009-08-17 10:20:01 +02:00
Love Hornquist Astrand ddb54ca483 switch to use EVP interface instead of old MDX_ style interface 2009-08-17 10:16:13 +02:00
Love Hornquist Astrand 13c3b9b1c6 switch to use EVP interface instead of old MDX_ style interface 2009-08-17 10:15:31 +02:00
Love Hornquist Astrand 639e93d436 switch to use EVP interface instead of old MDX_ style interface 2009-08-17 10:14:24 +02:00
Love Hornquist Astrand 3ef05891ee switch to use EVP interface instead of old MDX_ style interface 2009-08-17 10:13:04 +02:00
Love Hornquist Astrand ddb8230917 switch to use EVP interface instead of old MDX_ style interface 2009-08-17 10:10:42 +02:00
Love Hornquist Astrand 9745ba2d18 export right cts symbol 2009-08-17 08:53:43 +02:00
Love Hornquist Astrand 76e01c5084 (EVP_MD_CTX_cleanup): clean out memory 2009-08-16 20:42:38 +02:00
Love Hornquist Astrand c57fcae29a switch to use EVP interface instead of old MDX_ style interface 2009-08-16 20:35:40 +02:00
Love Hornquist Astrand dda9a74fa0 switch to use EVP interface instead of old MDX_ style interface 2009-08-16 20:28:50 +02:00
Love Hornquist Astrand 729a13a985 switch to use EVP interface instead of old MDX_ style interface 2009-08-16 20:10:41 +02:00
Love Hornquist Astrand c45ecc94bf switch to use EVP interface instead of old MDX_ style interface 2009-08-16 18:28:40 +02:00
Love Hornquist Astrand 9b138fdec4 remove HAVE_CONFIG_H 2009-08-16 18:28:12 +02:00
Love Hornquist Astrand 4378f084ef Switch to EVP_MD digest 2009-08-16 11:58:03 +02:00
Love Hornquist Astrand b39e108bd8 Switch to EVP_MD digest 2009-08-16 11:23:51 +02:00
Love Hornquist Astrand eceaab6670 use ct_memcmp 2009-08-15 14:24:19 +02:00
Love Hornquist Astrand 0bb8ad20d3 Use EVP for digest signatures 2009-08-15 14:24:00 +02:00
Love Hornquist Astrand fef41d9e23 Use constant time compare 2009-08-15 13:29:15 +02:00
Love Hornquist Astrand 1cd2e05d82 ct comment 2009-08-15 13:27:55 +02:00
Love Hornquist Astrand b657b2e680 Add constant time version of memcmp 2009-08-15 13:24:52 +02:00
Love Hornquist Astrand 6c28d3a772 Switch __FUNCTION__ to __FILE__ since Sun Developer studio doesn't support the former 2009-08-15 05:59:35 +02:00
Love Hornquist Astrand c8175f83a3 drop __FUNCTION__ 2009-08-15 05:57:07 +02:00
Love Hornquist Astrand c6198388b7 pre5 2009-08-14 20:16:45 +02:00
Love Hornquist Astrand cdf6c8a199 Don't return void, Solaris CC doesn't like that 2009-08-14 20:07:48 +02:00
Love Hornquist Astrand 8ef2d2d11b the key argument is const, mark it as such 2009-08-14 20:06:39 +02:00
Love Hornquist Astrand fcdd38288b Use ${kdestroy} instead of the direct path 2009-08-14 20:06:04 +02:00
Love Hornquist Astrand 6ac304d156 Use min() instead of MIN() 2009-08-14 20:05:36 +02:00
Love Hornquist Astrand 92f483823b pre4 2009-08-14 16:29:56 +02:00
Love Hornquist Astrand 4f6adc4573 x 2009-08-14 16:29:40 +02:00
Love Hornquist Astrand 92288a7137 Avoid testing ECDSA when hcrypto doesn't support it 2009-08-14 16:24:35 +02:00
Love Hornquist Astrand c9bc9957aa add ecdsa: hcrypto null if we are not using openssl 2009-08-14 16:21:01 +02:00
Love Hornquist Astrand f6dd20ae2b drop unused struct prototypes 2009-08-14 15:46:30 +02:00
Love Hornquist Astrand a26bd9bd2f slctest doesn't depend on LEXLIB, slc does though, reorder LDADD 2009-08-14 15:42:46 +02:00
Love Hornquist Astrand 241e0444d9 basic framework for ec.c 2009-08-14 15:33:20 +02:00
Love Hornquist Astrand 0ff7f9ebd2 doxygen 2009-08-14 15:12:05 +02:00
Love Hornquist Astrand 9160374a4c doxygen 2009-08-14 13:47:25 +02:00
Love Hornquist Astrand f01ca1a10e doxygen 2009-08-14 13:46:45 +02:00
Love Hornquist Astrand 550a6c9427 doxygen fixes, include <evp-hcrypto.h> if not using openssl 2009-08-14 11:45:18 +02:00
Love Hornquist Astrand ee68687168 @return, not @param for the return value 2009-08-14 11:43:45 +02:00
Love Hornquist Astrand 27b314c4e7 %o is unsigned int, case appropriately 2009-08-14 11:17:44 +02:00
Love Hornquist Astrand 0c539be609 Cast uid_t to long for printing 2009-08-14 11:15:45 +02:00
Love Hornquist Astrand 076f3b9b8c Provide glue function for dirfd() for Solaris 2009-08-14 11:02:08 +02:00
Love Hornquist Astrand f1207346f0 Fix printf argument error to errx() 2009-08-14 10:45:17 +02:00
Love Hornquist Astrand a72efaea19 drop dirfd(), and move to roken 2009-08-14 10:40:40 +02:00
Love Hornquist Astrand 8d8bc185ee Clean evp-{hcrypto,cc}.h 2009-08-14 10:32:48 +02:00
Love Hornquist Astrand b7fc0614f0 Add return type for ECDH_compute_key 2009-08-14 10:13:48 +02:00
Love Hornquist Astrand 7c18fc4cfe Solaris doesn't have dirfd(), lets pull it out from DIR * 2009-08-14 10:12:44 +02:00
Love Hornquist Astrand 193f14461f Add symbols renaming 2009-08-14 10:07:50 +02:00
Love Hornquist Astrand 628075b646 remove dup EC_KEY_free 2009-08-14 10:06:09 +02:00
Love Hornquist Astrand 88cd143fd4 Spelling 2009-08-14 10:04:45 +02:00
Love Hornquist Astrand b0757f7f3f Export krb5_crypto_fx_cf2 2009-08-14 05:49:02 +02:00
Love Hornquist Astrand d3828fe201 Don't depend on that memcmp() have same return value on all platforms
BSDish libc returns -14 3 14, while GNU LIBC returns -1 3 1.
2009-08-14 05:34:50 +02:00
Love Hornquist Astrand 21ff5b84a5 Fix symbols renaming for flock 2009-08-14 05:17:51 +02:00
Love Hornquist Astrand b7bee62e48 Show IPv4 and IPv6 adresses too as examples 2009-08-14 04:36:23 +02:00
Love Hornquist Astrand ede8ad11ad Support IPv6 numeric style addresses, example [2001:10:300::1]:88 2009-08-14 04:34:10 +02:00
Love Hornquist Astrand 40b7a12ed2 add Andrew Cobaugh 2009-08-14 04:09:22 +02:00
Love Hornquist Astrand 833ac10aab Use unsigned char instead of u_int32_t 2009-08-14 03:59:24 +02:00
Love Hornquist Astrand 57393f7b86 Add <limits.h> for INT_MAX, needed on Solaris 2009-08-14 03:05:18 +02:00
Love Hornquist Astrand af3a494387 pre3 2009-08-13 09:19:54 +02:00
Love Hornquist Astrand c1a54a5e37 Make KRB5SignedPath less fragile, only sign trivial parts of the encTicketPart
Sign the client and auth time (like its done in the PAC) and let that
be ehough for now. Add a Typed hole so that we don't break wireprotocol
next time.
2009-08-12 23:05:36 +02:00
Love Hornquist Astrand 1011050f65 x 2009-08-12 22:37:03 +02:00
Love Hornquist Astrand 354e4c0320 Text on how to load the MIT dump file 2009-08-11 23:33:11 +02:00
Love Hornquist Astrand 639f1dd1f2 Add section about "Migration from MIT Kerberos to Heimdal" 2009-08-11 22:28:33 +02:00
Love Hornquist Astrand 55c9d66d80 Drop md5/md4/rc4 reference and use EVP_ interface 2009-08-11 11:30:04 +02:00
Love Hornquist Astrand 33fcc11b3f Replace last SHA1_ with EVP_ replacement 2009-08-11 10:00:30 +02:00
Love Hornquist Astrand 18a4b69b48 Switch more cases to EVP crypto layer 2009-08-10 17:51:17 +02:00
Love Hornquist Astrand 21e8270aa2 Support RC4 in EVP 2009-08-10 11:48:12 +02:00
Love Hornquist Astrand 8276a469ab Add CommonCrypto support, split out all hcrypto specific code to hcrypto module 2009-08-10 09:07:37 +02:00
Love Hornquist Astrand 2a17be87ab Remove direct use of MD5 2009-08-10 09:06:50 +02:00
Love Hornquist Astrand da61635b75 Quest Software, Inc. and its contributors waive all copyright claims on
the attached getifaddrs test code and dedicate it to the public domain.

Changed to looked to the other heimdal test apps by me
2009-08-07 20:00:09 +02:00
Love Hornquist Astrand e57f65f563 clean better 2009-08-06 10:53:35 +02:00
Love Hornquist Astrand d77febb894 clean better 2009-08-06 10:20:19 +02:00
Love Hornquist Astrand 658a7b52ca clean better 2009-08-06 10:19:51 +02:00
Love Hornquist Astrand 0a92381e98 clean better 2009-08-06 10:19:28 +02:00
Love Hornquist Astrand 0351294ddf clean better 2009-08-06 10:19:11 +02:00
Love Hornquist Astrand 07f0c8be5d Clean better 2009-08-06 10:18:52 +02:00
Love Hornquist Astrand 655ee18a17 add missing files, clean better 2009-08-06 10:18:25 +02:00
Love Hornquist Astrand 44709846a0 add ec*.h files 2009-08-06 09:28:08 +02:00
Love Hornquist Astrand d1eb77fba8 add basic symbol renaming and header prototection 2009-08-06 09:27:35 +02:00
Love Hornquist Astrand 5334dd9702 add basic symbol renaming and header prototection 2009-08-06 09:26:54 +02:00
Love Hornquist Astrand a9b182bc4e add basic symbol renaming and header prototection 2009-08-06 09:25:52 +02:00
Love Hornquist Astrand 85a46732ef Include ec*.h files 2009-08-06 09:22:43 +02:00
Love Hornquist Astrand fa8990dcf4 clean ec*.h files 2009-08-06 09:22:27 +02:00
Love Hornquist Astrand cef9330349 If using OpenSSL, require EC 2009-08-06 09:19:08 +02:00
Love Hornquist Astrand 4b54606825 Add header and footer 2009-08-06 07:17:36 +02:00
Love Hornquist Astrand 3ae9834b37 As part of distdir don't build vis.h for platforms that doesn't need it 2009-08-05 15:42:55 +02:00
Love Hornquist Astrand 22beb0c190 add write bit to the directory before removing it 2009-08-05 15:31:03 +02:00
Love Hornquist Astrand dc3857fcfb EXTRA_DIST += gssapi.din 2009-08-05 14:20:00 +02:00
Love Hornquist Astrand b8ebf4e245 add wincrypt 2009-08-05 13:48:40 +02:00
Love Hornquist Astrand 95993f222c Fix order of flags, passes regression test now 2009-08-05 13:42:34 +02:00
Love Hornquist Astrand 3a031244bc Drop RCSID and HAVE_CONFIG_H 2009-08-05 13:37:37 +02:00
Love Hornquist Astrand e8fb270ace add leaks-kill.sh 2009-08-05 13:21:05 +02:00
Love Hornquist Astrand 80a62da8de make depend on config.h, so that we can't avoid symbol renaming 2009-08-05 12:47:11 +02:00
Ted Percival 1cbb0e766d Fix crash in rk_freeifaddrs due to freeing an invalid pointer
Crash occurs on Linux systems that support AF_NETLINK but do not have
getifaddrs() in libc (eg. SuSE 8.1).

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-05 12:29:26 +02:00
Love Hornquist Astrand 0ede7ac561 Pass down the use-dce-style flag instead of the while gssapi krb5 context 2009-08-05 12:00:07 +02:00
Love Hornquist Astrand 1fc7af5bcf Add missing files 2009-08-05 11:13:01 +02:00
Love Hornquist Astrand 529b5f9d2c add heim_threads.h 2009-08-04 20:59:46 +02:00
Stefan Metzmacher ab9e5d13ec gsskrb5: try to be compatible with windows for gss_wrap* and cfx
The good thing is that windows and heimdal both use EC=0
in the non DCE_STYLE case, so we need the windows compat hack
only in DCE_STYLE mode.

metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-04 20:22:05 +02:00
Stefan Metzmacher 0297d047a4 gsskrb5: add support for DCE_STYLE and des and des3 keys
Only the des keys are tested as windows doesn't support des3

metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-04 20:21:20 +02:00
Love Hornquist Astrand 013fb45a7f Make the send e_text on time skew error default to make it work with windows clients. 2009-08-04 20:19:44 +02:00
Stefan Metzmacher 772dfac438 lib/asn1: remove unused reference to vers.h
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-04 20:19:44 +02:00
Stefan Metzmacher 5b8a319a7e lib/krb5: fix the build without KRB4
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-04 20:19:44 +02:00
Love Hornquist Astrand abd2f29c44 Pull in roken and use ROKEN_CPP_BEGIN/ROKEN_CPP_END instead of cdecl 2009-08-04 20:19:44 +02:00
Stefan Metzmacher 513f59dcd4 heimdal:camellia: include roken.h
metze

Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-04 20:19:44 +02:00
Andrew Bartlett a4287ff403 Include roken.h to fix build of example_evp_cipher test on Linux
Signed-off-by: Love Hornquist Astrand <lha@h5l.org>
2009-08-04 20:19:44 +02:00
Andrew Bartlett f8c121b282 Add support for user principal names in certificates [HEIMDAL-602]
This extends the PKINIT code in Heimdal to ask the HDB layer if the
User Principal Name name in the certificate is an alias (perhaps just
by case change) of the name given in the AS-REQ.  (This was a TODO in
the Heimdal KDC)

The testsuite is extended to test this behaviour, and the other PKINIT
certficate (using the standard method to specify a principal name in a
certificate) is updated to use a Administrator (not administrator).
(This fixes the kinit test).
2009-08-04 09:34:58 +02:00
Love Hornquist Astrand 147184381e Check for NUL in the middle of the string 2009-08-04 00:57:35 +02:00
Love Hornquist Astrand 0d2e1a1692 1.3.0pre1 2009-08-03 16:21:02 +02:00
Love Hornquist Astrand 3cebc3767f add more test to test_acquire_cred that removes the need of test_init_creds.c 2009-08-03 13:05:36 +02:00
Love Hornquist Astrand 8669bc5209 test more combinations 2009-08-03 12:46:49 +02:00
Love Hornquist Astrand e6c2a70678 Indent some more 2009-08-03 12:10:07 +02:00
Love Hornquist Astrand b2129c0751 Indent the patch from Andrew and make it compile again 2009-08-03 10:54:44 +02:00
Love Hornquist Astrand ada7c73176 Indent the patch from Andrew and make it compile again 2009-08-03 10:50:50 +02:00
Love Hornquist Astrand 788480d28a heimdal Extend the 'hdb as a keytab' code [HEIMDAL-600]
This extends the hdb_keytab code to allow enumeration of all the keys.

The plan is to allow ktutil's copy command to copy from Samba4's
hdb_samba4 into a file-based keytab used in wireshark.

From Andrew Bartlett
2009-08-03 10:43:22 +02:00
Love Hornquist Astrand 99a05b37ca Add missing ',' between parameters [HEIMDAL-599]
From Michael Hammer of Gentoo, make this work with autoconf-2.64
2009-08-03 09:52:17 +02:00
Love Hornquist Astrand 296ebb00ba x 2009-07-31 14:15:13 +02:00
Love Hornquist Astrand 7b662b1fb5 x 2009-07-31 10:20:32 +02:00
Love Hornquist Astrand 44d0637328 x 2009-07-31 10:15:29 +02:00
Love Hornquist Astrand 01b53ac015 x 2009-07-31 07:29:09 +02:00
Love Hornquist Astrand ff89a727d4 Fix bounced condition 2009-07-30 19:19:35 +02:00
Love Hornquist Astrand 4d200dd2d5 Clean the list in a simpler way 2009-07-30 18:56:23 +02:00
Love Hornquist Astrand 20d4cca179 Make skip-ing work again, so that tests passes again 2009-07-30 18:55:45 +02:00
Love Hornquist Astrand ce28389265 Failed to open sockets. 2009-07-30 15:53:39 +02:00
Love Hornquist Astrand 20a06042da require local 2009-07-30 15:52:22 +02:00
Love Hornquist Astrand 856b8484c3 ignore different 2009-07-30 15:41:02 +02:00
Love Hornquist Astrand ae58266705 More doxygen. 2009-07-30 15:36:25 +02:00
Love Hornquist Astrand c97cc4647c rename kcm_protos to kcm-protos.h 2009-07-30 15:03:28 +02:00
Love Hornquist Astrand b10f885c59 Rename login_protos.h to login-protos.h 2009-07-30 14:48:37 +02:00
Love Hornquist Astrand 11024751a5 make compile 2009-07-30 14:25:12 +02:00
Love Hornquist Astrand 00658426b2 c->c_name always set 2009-07-30 14:20:22 +02:00
Love Hornquist Astrand 98b23aa4c7 (sendrequest) local must be set [CID-45] 2009-07-30 14:17:45 +02:00
Love Hornquist Astrand 30b87b0633 Dont look too careful on local [CID-23] 2009-07-30 14:16:20 +02:00
Love Hornquist Astrand 3608b815b4 Don't bother checking usage of minor_status [CID-23] 2009-07-30 14:01:57 +02:00
Love Hornquist Astrand 901bac07e8 Don't need to look check *input_name twice [CID-27]. 2009-07-30 14:00:48 +02:00
Love Hornquist Astrand 08256017e4 Don't dereference input_name [CID-27]. 2009-07-30 13:59:42 +02:00
Love Hornquist Astrand 705e50b079 Check name before using it [CID-43] 2009-07-30 13:48:39 +02:00
Love Hornquist Astrand a4df44985d use default princial if none is set [CID-48] 2009-07-30 13:22:46 +02:00
Love Hornquist Astrand 0f5f5947aa make sure client is set before trying to use it [CID-50] 2009-07-30 13:20:00 +02:00
Love Hornquist Astrand a1e127a3a8 Make sure we don't use negative indexing [CID-57] 2009-07-30 13:10:59 +02:00
Love Hornquist Astrand c9bb8ba35f Fail on parse error instead of craching [CID-58] 2009-07-30 13:08:54 +02:00
Love Hornquist Astrand 8490e8fd34 make compile 2009-07-30 13:04:30 +02:00
Love Hornquist Astrand e977f1cf2f You don't exists [CID-60] 2009-07-30 13:03:27 +02:00
Love Hornquist Astrand fab281f465 (setnmap): make sure strchr returned a string [CID-65] 2009-07-30 13:00:34 +02:00
Love Hornquist Astrand 7d8d09f3c0 make compile 2009-07-30 12:56:54 +02:00
Love Hornquist Astrand e184e053dd Catch memory allocation failures [CID-61] 2009-07-30 12:56:21 +02:00
Love Hornquist Astrand 3af78ea3fb out of memory [CID-63] 2009-07-30 12:53:50 +02:00
Love Hornquist Astrand 4674f2dc6c Better length checks [CID-67] 2009-07-30 12:50:01 +02:00
Love Hornquist Astrand a5b015ab7e Make sure av is freed if its allocated [CID-73] 2009-07-30 12:40:13 +02:00
Love Hornquist Astrand f3cf321660 Fail harder (exit) in case of failure [CID-76] 2009-07-30 12:32:23 +02:00
Love Hornquist Astrand 25b0f731ab Better handling of memory allocation failure [CID-77] 2009-07-30 12:27:19 +02:00
Love Hornquist Astrand 60c9bca968 Free new_key_data in case of failure [CID-78] 2009-07-30 12:10:14 +02:00
Love Hornquist Astrand 149edc15f7 Free krb5_auth_context [CID-95] 2009-07-30 12:03:33 +02:00
Love Hornquist Astrand dc95a7983d Release ticket on failure [CID-96] 2009-07-30 11:59:15 +02:00
Love Hornquist Astrand b2aaf4f306 free auth_context on close [CID-97] 2009-07-30 11:55:42 +02:00
Love Hornquist Astrand 2127d8d6bc free auth_context on close [CID-98] 2009-07-30 11:19:15 +02:00
Love Hornquist Astrand c961189f95 Remove dead code [CID-10] 2009-07-30 10:55:06 +02:00
Love Hornquist Astrand 20c376c62e Just fail if writing cookies failes [CID-100] 2009-07-30 10:52:23 +02:00
Love Hornquist Astrand 879051c308 Free sockets in cleanup function [CID-101] 2009-07-30 10:50:22 +02:00
Love Hornquist Astrand 269fcc53e7 Free auth_context [CID-102] 2009-07-30 10:48:06 +02:00
Love Hornquist Astrand e395b3a9ea Free d on failure [CID-103] 2009-07-30 10:45:19 +02:00
Love Hornquist Astrand 403085fdb8 Free nonces on completion [CID-104] 2009-07-30 10:44:18 +02:00
Love Hornquist Astrand c63b6a3368 Free digest on completion [CID-106] 2009-07-30 10:42:27 +02:00
Love Hornquist Astrand 0d49d0f1c4 Free ticket earlier [CID-108] 2009-07-30 10:39:52 +02:00
Love Hornquist Astrand c8b05eef61 (base64_encode): bound input length to /4 of max int and positive 2009-07-30 10:36:39 +02:00
Love Hornquist Astrand dfffe6d567 Check allocation error and free on error [CID-114] 2009-07-30 10:32:33 +02:00
Love Hornquist Astrand d8db9d5a5a Free get_options on failure [CID-119] 2009-07-30 10:30:20 +02:00
Love Hornquist Astrand 6312b8eb30 p will always be true, check for p[0] instead. [CID-144] 2009-07-30 10:24:47 +02:00
Love Hornquist Astrand 5373d3a869 Allow parsing of cert fail unless HX509_CERTS_UNPROTECT_ALL is set. 2009-07-30 10:20:04 +02:00
Love Hornquist Astrand 1bdf51f26f (strpoolcollect): allow p == NULL, return the empty string (allocated) 2009-07-30 10:08:48 +02:00
Love Hornquist Astrand 0da57a49d7 Make cgetstr() not return allocated memory on failure [CID-170] 2009-07-30 10:04:44 +02:00
Love Hornquist Astrand 09f64eb7c5 Free ent on failure [CID-171] 2009-07-30 09:59:23 +02:00
Love Hornquist Astrand 276867b63e Free the full keyblock and not just the content [CID-173] 2009-07-30 09:54:45 +02:00
Love Hornquist Astrand e8c46282ee Free keyblock when krb5_mk_rep() failes [CID-174] 2009-07-30 09:51:00 +02:00
Love Hornquist Astrand e568ea28b2 No need to check for NULL, principal is allocated. 2009-07-30 09:47:24 +02:00
Love Hornquist Astrand 90ed2b6790 Check result of calloc [CID-181] 2009-07-30 09:44:44 +02:00
Love Hornquist Astrand 3f802d359f Use right variable [CID-181] 2009-07-30 09:41:42 +02:00
Love Hornquist Astrand e1ecb6f7a6 Catch uninited variable [CID-182] 2009-07-30 09:40:05 +02:00
Love Hornquist Astrand bf5176e815 Check return value for allocation function [CID-180] 2009-07-30 07:59:24 +02:00
Love Hornquist Astrand 2c841b425e free edata on failure [CID-83] 2009-07-30 07:57:07 +02:00
Love Hornquist Astrand f46b5b4817 free generated ticket [CID-84] 2009-07-30 07:56:10 +02:00
Love Hornquist Astrand ca6e428093 check that we don't pass negative numbers of memset [CID-169] 2009-07-30 07:53:58 +02:00
Love Hornquist Astrand 3f3b499c39 NULL_RETURNS paranoid check [CID-66] 2009-07-30 07:50:18 +02:00
Love Hornquist Astrand 896391a56b Double free of sp on empty list of creds [CID-183] 2009-07-30 07:46:37 +02:00
Love Hornquist Astrand 1ca716bbc7 Free buf on random generator error [CID-177] 2009-07-30 07:42:12 +02:00
Love Hornquist Astrand a1964f4747 use after free [CID-184] [CID-185] 2009-07-30 07:38:24 +02:00
Love Hornquist Astrand 9581e59bde FORWARD_NULL fixes [CID-163] and friends 2009-07-30 07:36:03 +02:00
Love Hornquist Astrand d544768d1c don't clean heim_threads.h since it lives here 2009-07-30 07:31:05 +02:00
Love Hornquist Astrand b9644d7060 Test on wrong variable 2009-07-30 07:30:27 +02:00
Love Hornquist Astrand b1dc4dc97e (_hx509_Name_to_string): free memory on failure (that should not happen) [CID 176] 2009-07-30 07:25:36 +02:00
Love Hornquist Astrand 4e516cec33 Pruned to aggressivly 2009-07-29 23:14:44 +02:00
Love Hornquist Astrand 2e1ebf8598 add export/import cred 2009-07-29 23:12:16 +02:00
Love Hornquist Astrand 9b710bed81 store is never read again 2009-07-29 22:37:58 +02:00
Love Hornquist Astrand fa502c6648 Add support for gss_{import,export}_cred() as requested by metze
Works for krb5 and SPNEGO mechanisms. Kerberos credentials are passed as
credential cache names, or if there are memory based credentials, inband in the protocol. This means that the credentials buffers must be keep secret.

As documented by IBM (they have the wrong prototype though)
and GGF (GSS-API Extensions) back in 2001
2009-07-29 13:36:02 +02:00
Love Hornquist Astrand 2d54966d6e x 2009-07-28 17:55:41 +02:00
Love Hornquist Astrand e5c42ba42f rename krb5_storage_from_emem in documentation 2009-07-28 17:51:53 +02:00
Love Hornquist Astrand 565236c603 Add store-cred to the dispatch table 2009-07-28 09:50:05 +02:00
Love Hornquist Astrand c140f0255c Implement core of _gsskrb5_store_cred() 2009-07-27 09:42:46 +02:00
Love Hornquist Astrand de0ae78c4e Remove dlfcn implementation for AIX since nowadays AIX have dlopen()
Also drop license and copyright statement
2009-07-24 04:25:39 +02:00
Love Hornquist Astrand 1dd94e44ba Switch to macros for c++ extern "C" to please editors that want to autoindent 2009-07-23 19:27:34 +02:00
Love Hornquist Astrand f4c8242667 Add KCM for PADL. 2009-07-21 10:33:19 -07:00
Love Hornquist Astrand d7f438363d Add license for Jens-Uwe Mager, Helios Software GmbH (aix dlfcn layer) 2009-07-21 10:31:46 -07:00
Love Hornquist Astrand 6d9354edf7 x 2009-07-21 10:29:53 -07:00
Love Hornquist Astrand ebb3dd62c0 See README.dlfcn for license 2009-07-21 10:29:44 -07:00
Love Hornquist Astrand 5bb9a31a9a make work again and remove debug info 2009-07-19 21:34:26 -07:00
Love Hornquist Astrand 7e4854250e Actually register new plugins and plug a related memory leak 2009-07-19 21:23:56 -07:00
Love Hornquist Astrand 330fd7645d Always ask for principal (KADM5_PRINCIPAL)
The protocol for "get principal" does not support not sending
principal, so when the caller doesn't add KADM5_PRINCIPAL to the mask,
lets add it for them.

Reported by Henry.B.Hotz@jpl.nasa.gov in [HEIMDAL-588]
2009-07-19 21:01:20 -07:00
Love Hornquist Astrand 17de01f523 Check that get -o pkinit-acl works. 2009-07-19 20:57:47 -07:00
Love Hornquist Astrand 311ce98d85 (hdb_sqlite_rename): make rename work when there is a prefix 2009-07-19 18:42:02 -07:00
Love Hornquist Astrand bd073cfd72 Limit maxinum retries of BUSY/BLOCK/LOCKED operations to MAX_RETRIES (default 10) 2009-07-19 18:01:51 -07:00
Love Hornquist Astrand 4895349431 allow testing sqlite hdb backend 2009-07-19 17:59:23 -07:00
Love Hornquist Astrand 82150be255 allow loading sqlite 2009-07-19 17:58:53 -07:00
Love Hornquist Astrand 51fbbf93e3 (log_file): use strvisx rightly 2009-07-19 17:52:53 -07:00
Love Hornquist Astrand c7c58feb3f add NTLM name for hdb layer to make searching diffrently the regular "names" 2009-07-18 10:17:37 -07:00
Love Hornquist Astrand 317d837d0f krb5_get_cred_from_kdc and krb5_get_cred_from_kdc_opt deprecated 2009-07-17 20:39:35 -07:00
Love Hornquist Astrand 9211c47a30 Deprecate krb5_get_cred_from_kdc{,_opt} since they are replacement functions 2009-07-17 20:38:32 -07:00
Love Hornquist Astrand 80021f5e05 Make get_cred_kdc_any a private function. 2009-07-17 20:36:42 -07:00
Love Hornquist Astrand 517be51cc5 Test init_sec_context using keytab based credentials
Based on problem description from Rick Macklem in [HEIMDAL-197],
problem still not fixed.
2009-07-17 15:57:45 -07:00
Love Hornquist Astrand 8b71d0b93f Prefer the realm of the user when doing referrals style ISC krb5-get-creds
The the realm of the user's principal and prefer that when doing a lookup.
This code still need to be smarter can cache the "initial value" -> positive result
to avoid roundtrips to the KDC.
2009-07-17 15:43:19 -07:00
Love Hornquist Astrand d4ca938866 Only load plugins once and never unload them
Its expensive to load and unload plugins all the time, so lets stop doing that.
Run over the plugin directory and load all plugins and remember them all.
In the future, something should watch the directory and if it changes,
load the new plugins that was put there.
2009-07-17 15:18:00 -07:00
Love Hornquist Astrand de5110c05a (krb5_get_kdc_cred): make sure that out_creds points to NULL on failure 2009-07-16 23:54:54 -07:00
Love Hornquist Astrand 5d152d70eb Indent 2009-07-16 22:56:59 -07:00
Love Hornquist Astrand d0aadb9a0d Fix depenencies for test_punycode
This only matters in development enviroments and where you run make check.
2009-07-16 22:26:43 -07:00
Love Hornquist Astrand 3c053a2e09 fix up the paranoid code to make it work with ipv6. 2009-07-16 22:21:59 -07:00
Love Hornquist Astrand 3634423f36 Allow specifying runing user and chroot() enviroment
Allow the admin to switch the user the kdc is running under and
specify the chroot() directory to run in.

Please note you need a very special setup to get this working.
2009-07-16 22:15:26 -07:00
1777 changed files with 269495 additions and 77694 deletions
+234 -12
View File
@@ -1,26 +1,120 @@
# git-ls-files --others --exclude-from=.git/info/exclude # After changing this file, please run:
# Lines that start with '#' are comments. #
# For a project mostly in C, the following would be a good set of # git ls-files -i --exclude-standard
# exclude patterns (uncomment them if you want to use them): #
# *.[oa] # to check that you haven't inadvertently ignored any tracked files. This
# *~ # command should return no output. Any files listed by it are files
# present in the repository but ignored by .gitignore.
# General rules, with some exclusions for where they're too general.
.DS_Store .DS_Store
.deps/
.dirstamp
.libs/
Makefile
Makefile.in Makefile.in
asn1_*.[cx]
!/lib/asn1/asn1_gen.c
!/lib/asn1/asn1_print.c
!/lib/krb5/asn1_glue.c
*_asn1.h
!/lib/asn1/heim_asn1.h
*_asn1.hx
*_asn1-priv.h
*_asn1-priv.hx
*_asn1-template.c
*_asn1_files
*_err.[ch]
!/lib/com_err/com_err.[ch]
*-commands.[ch]
*~ *~
*.a
*.la
*.lo
*.o
# Top-level files.
/aclocal.m4 /aclocal.m4
/autom4te.cache /autom4te.cache
/compile /compile
/config.guess /config.guess
/config.log
/config.status
/config.sub /config.sub
/configure /configure
/depcomp /depcomp
/install-sh /install-sh
/libtool
/ltmain.sh /ltmain.sh
/missing /missing
/setupbuild.cmd
/ylwrap /ylwrap
/appl/login/login_protos.h
/lib/libedit/aclocal.m4
/lib/libedit/autom4te.cache
/lib/libedit/compile
/lib/libedit/config.guess
/lib/libedit/config.log
/lib/libedit/config.status
/lib/libedit/config.sub
/lib/libedit/configure
/lib/libedit/depcomp
/lib/libedit/install-sh
/lib/libedit/libtool
/lib/libedit/ltmain.sh
/lib/libedit/missing
/lib/libedit/setupbuild.cmd
/lib/libedit/ylwrap
# Files in subdirectories.
/admin/ktutil
/appl/afsutil/afslog
/appl/afsutil/pagsh
/appl/ftp/ftp/ftp
/appl/ftp/ftpd/ftpcmd.c
/appl/ftp/ftpd/ftpd
/appl/ftp/ftpd/gssapi.c
/appl/ftp/ftpd/security.c
/appl/ftp/ftpd/security.h
/appl/gssmask/gssmaestro
/appl/gssmask/gssmask
/appl/kf/kf
/appl/kf/kfd
/appl/kx/kx
/appl/kx/kxd
/appl/kx/rxtelnet
/appl/kx/rxterm
/appl/kx/tenletxr
/appl/login/login
/appl/login/login-protos.h
/appl/otp/otp
/appl/otp/otpprint
/appl/popper/pop_debug
/appl/popper/popper
/appl/push/pfrom
/appl/push/push
/appl/rcp/rcp
/appl/rsh/limits_conf.c
/appl/rsh/login_access.c
/appl/rsh/rsh
/appl/rsh/rshd
/appl/su/su
/appl/telnet/telnet/telnet
/appl/telnet/telnetd/telnetd
/appl/test/gssapi_client
/appl/test/gssapi_server
/appl/test/http_client
/appl/test/nt_gss_client
/appl/test/nt_gss_server
/appl/test/tcp_client
/appl/test/tcp_server
/appl/test/uu_client
/appl/test/uu_server
/appl/xnlock/xnlock
/cf/libtool.m4 /cf/libtool.m4
/cf/ltoptions.m4 /cf/ltoptions.m4
/cf/ltsugar.m4 /cf/ltsugar.m4
@@ -36,32 +130,140 @@ Makefile.in
/doc/krb5 /doc/krb5
/doc/ntlm /doc/ntlm
/doc/wind /doc/wind
/doc/vars.texi
/doc/doxyout
/include/*.h
!/include/crypto-headers.h
!/include/heim_threads.h
/include/bits
/include/config.h.in /include/config.h.in
/include/stamp-h.in /include/gssapi/*.h
/kcm/kcm_protos.h /include/kadm5/*.h
/include/stamp-h1
/include/version.h.in
/kadmin/add_random_users
/kadmin/kadmin
/kadmin/kadmind
/kcm/kcm
/kcm/kcm-protos.h
/kdc/digest-service
/kdc/hprop
/kdc/hpropd
/kdc/kdc
/kdc/kdc-protos.h /kdc/kdc-protos.h
/kdc/kdc-private.h /kdc/kdc-private.h
/kdc/kdc-replay
/kdc/kstash
/kdc/string2key
/kpasswd/kpasswd
/kpasswd/kpasswd-generator
/kpasswd/kpasswdd
/kuser/copy_cred_cache
/kuser/generate-requests
/kuser/kcc
/kuser/kdecode_ticket
/kuser/kdestroy
/kuser/kdigest
/kuser/kgetcred
/kuser/kimpersonate
/kuser/kinit
/kuser/klist
/kuser/kswitch
/kuser/kverify
/lib/asn1/asn1_compile
/lib/asn1/asn1_gen
/lib/asn1/asn1_print
/lib/asn1/asn1parse.c
/lib/asn1/asn1parse.h
/lib/asn1/der-protos.h /lib/asn1/der-protos.h
/lib/asn1/der-private.h /lib/asn1/der-private.h
/lib/asn1/lex.c
/lib/auth/Makefile.in /lib/auth/Makefile.in
/lib/com_err/compile_et
/lib/com_err/lex.c
/lib/com_err/parse.c /lib/com_err/parse.c
/lib/com_err/parse.h /lib/com_err/parse.h
/lib/com_err/snprintf.c
/lib/com_err/strlcpy.c
/lib/editline/snprintf.c
/lib/editline/strdup.c
/lib/editline/strlcat.c
/lib/editline/testit
/lib/gssapi/gss
/lib/gssapi/gsstool
/lib/gssapi/krb5/gsskrb5-private.h /lib/gssapi/krb5/gsskrb5-private.h
/lib/gssapi/ntlm/ntlm-private.h /lib/gssapi/ntlm/ntlm-private.h
/lib/gssapi/spnego/spnego-private.h /lib/gssapi/spnego/spnego-private.h
/lib/gssapi/test_context
/lib/gssapi/test_cred
/lib/gssapi/test_kcred
/lib/gssapi/test_ntlm
/lib/hdb/hdb-protos.h /lib/hdb/hdb-protos.h
/lib/hdb/hdb-private.h /lib/hdb/hdb-private.h
/lib/hx509/hx509-private.h /lib/hdb/test_dbinfo
/lib/hx509/hx509-protos.h /lib/hdb/test_hdbkeys
/lib/hx509/data/*.pem /lib/hdb/test_mkey
/lib/hx509/data/*.srl /lib/hx509/data/*.srl
/lib/hx509/data/*.req /lib/hx509/data/*.req
/lib/hx509/data/sub-ca-combined.crt /lib/hx509/data/sub-ca-combined.crt
/lib/hx509/hx509-private.h
/lib/hx509/hx509-protos.h
/lib/hx509/hxtool
/lib/hx509/sel-gram.c
/lib/hx509/sel-gram.h
/lib/hx509/sel-lex.c
/lib/ipc/tc
/lib/ipc/ts
/lib/ipc/ts-http
/lib/kadm5/iprop-log
/lib/kadm5/ipropd-master
/lib/kadm5/ipropd-slave
/lib/kadm5/test_pw_quality
/lib/kadm5/kadm5-protos.h /lib/kadm5/kadm5-protos.h
/lib/kadm5/kadm5-private.h /lib/kadm5/kadm5-private.h
/lib/kafs/resolve.c
/lib/kafs/strlcpy.c
/lib/kafs/strsep.c
/lib/kafs/strtok_r.c
/lib/krb5/krb5-protos.h /lib/krb5/krb5-protos.h
/lib/krb5/krb5-private.h /lib/krb5/krb5-private.h
/lib/krb5/krbhst-test
/lib/krb5/test_alname
/lib/krb5/test_crypto
/lib/krb5/test_forward
/lib/krb5/test_get_addrs
/lib/krb5/test_gic
/lib/krb5/test_kuserok
/lib/krb5/test_renew
/lib/krb5/test_rfc3961
/lib/krb5/verify_krb5_conf
/lib/ntlm/heimntlm-protos.h /lib/ntlm/heimntlm-protos.h
/lib/otp/ndbm_wrap.c
/lib/otp/ndbm_wrap.h
/lib/otp/otptest
/lib/otp/snprintf.c
/lib/otp/strcasecmp.c
/lib/otp/strlcat.c
/lib/otp/strlcpy.c
/lib/otp/strlwr.c
/lib/otp/strncasecmp.c
/lib/roken/glob.h
/lib/roken/make-roken
/lib/roken/make-roken.c
/lib/roken/resolve-test
/lib/roken/rkpty
/lib/roken/roken.h
/lib/roken/snprintf-test
/lib/roken/vis.h
/lib/sl/getprogname.c
/lib/sl/slc
/lib/sl/slc-gram.c
/lib/sl/slc-gram.h
/lib/sl/slc-lex.c
/lib/sl/snprintf.c
/lib/sl/strdup.c
/lib/sl/strtok_r.c
/lib/sl/strupr.c
/lib/wind/*.pyc /lib/wind/*.pyc
/lib/wind/bidi_table.c /lib/wind/bidi_table.c
/lib/wind/bidi_table.h /lib/wind/bidi_table.h
@@ -69,10 +271,30 @@ Makefile.in
/lib/wind/combining_table.h /lib/wind/combining_table.h
/lib/wind/errorlist_table.c /lib/wind/errorlist_table.c
/lib/wind/errorlist_table.h /lib/wind/errorlist_table.h
/lib/wind/idn-lookup
/lib/wind/map_table.c /lib/wind/map_table.c
/lib/wind/map_table.h /lib/wind/map_table.h
/lib/wind/normalize_table.c /lib/wind/normalize_table.c
/lib/wind/normalize_table.h /lib/wind/normalize_table.h
/lib/wind/punycode_examples.c /lib/wind/punycode_examples.c
/lib/wind/punycode_examples.h /lib/wind/punycode_examples.h
/out
/po/gen-po.sh
/scripts /scripts
/tests/bin/setup-env
/tests/can/krb5.conf
/tests/can/mit-pkinit-20070607.cf
/tests/db/have-db
/tests/db/krb5.conf
/tests/db/krb5.conf-sqlite
/tests/gss/krb5.conf
/tests/java/krb5.conf
/tests/kdc/krb5-pkinit-win.conf
/tests/kdc/krb5-pkinit.conf
/tests/kdc/krb5-slave.conf
/tests/kdc/krb5-weak.conf
/tests/kdc/krb5.conf
/tests/ldap/krb5.conf
/tests/plugin/krb5.conf
/tools/heimdal-gssapi.pc
/tools/krb5-config
+1 -1
View File
@@ -1,4 +1,4 @@
Copyright (c) 1995 - 2008 Kungliga Tekniska Högskolan Copyright (c) 1995 - 2011 Kungliga Tekniska Högskolan
(Royal Institute of Technology, Stockholm, Sweden). (Royal Institute of Technology, Stockholm, Sweden).
All rights reserved. All rights reserved.
+10 -2
View File
@@ -6,13 +6,21 @@ if KCM
kcm_dir = kcm kcm_dir = kcm
endif endif
SUBDIRS= include lib kuser kdc admin kadmin kpasswd SUBDIRS= include base lib kuser kdc admin kadmin kpasswd
SUBDIRS+= $(kcm_dir) appl doc tools tests packages etc po SUBDIRS+= $(kcm_dir) appl tools tests packages etc po
if HEIMDAL_DOCUMENTATION
SUBDIRS+= doc
endif
## ACLOCAL = @ACLOCAL@ -I cf ## ACLOCAL = @ACLOCAL@ -I cf
ACLOCAL_AMFLAGS = -I cf ACLOCAL_AMFLAGS = -I cf
EXTRA_DIST = \ EXTRA_DIST = \
NTMakefile \
windows \
TODO \ TODO \
LICENSE \ LICENSE \
README \ README \
+69 -3
View File
@@ -1,14 +1,80 @@
Release Notes - Heimdal - Version Heimdal 1.5.1
Bug fixes
- Fix building on Solaris, requires c99
- Fix building on Windows
- Build system updates
Release Notes - Heimdal - Version Heimdal 1.5
New features
- Support GSS name extensions/attributes
- SHA512 support
- No Kerberos 4 support
- Basic support for MIT Admin protocol (SECGSS flavor)
in kadmind (extract keytab)
- Replace editline with libedit
Release Notes - Heimdal - Version Heimdal 1.4
New features
- Support for reading MIT database file directly
- KCM is polished up and now used in production
- NTLM first class citizen, credentials stored in KCM
- Table driven ASN.1 compiler, smaller!, not enabled by default
- Native Windows client support
Notes
- Disabled write support NDBM hdb backend (read still in there) since
it can't handle large records, please migrate to a diffrent backend
(like BDB4)
Release Notes - Heimdal - Version Heimdal 1.3.3
Bug fixes
- Check the GSS-API checksum exists before trying to use it [CVE-2010-1321]
- Check NULL pointers before dereference them [kdc]
Release Notes - Heimdal - Version Heimdal 1.3.2
Bug fixes
- Don't mix length when clearing hmac (could memset too much)
- More paranoid underrun checking when decrypting packets
- Check the password change requests and refuse to answer empty packets
- Build on OpenSolaris
- Renumber AD-SIGNED-TICKET since it was stolen from US
- Don't cache /dev/*random file descriptor, it doesn't get unloaded
- Make C++ safe
- Misc warnings
Release Notes - Heimdal - Version Heimdal 1.3.1
Bug fixes
- Store KDC offset in credentials
- Many many more bug fixes
Release Notes - Heimdal - Version Heimdal 1.3.1
New features
- Make work with OpenLDAPs krb5 overlay
Release Notes - Heimdal - Version Heimdal 1.3 Release Notes - Heimdal - Version Heimdal 1.3
New features New features
- Partital support for MIT kadmind rpc protocol in kadmind - Partial support for MIT kadmind rpc protocol in kadmind
- Better support for finding keytab entries when using SPN aliases in the KDC - Better support for finding keytab entries when using SPN aliases in the KDC
- Support BER in ASN.1 library (needed for CMS) - Support BER in ASN.1 library (needed for CMS)
- Support decryption in Keychain private keys - Support decryption in Keychain private keys
- Support for new sqlite based credential cache - Support for new sqlite based credential cache
- Try both to KDC referals the the common DNS reverse lookup in GSS-API - Try both KDC referals and the common DNS reverse lookup in GSS-API
- Fix the KCM not not leak resources on failure - Fix the KCM to not leak resources on failure
- Add IPv6 support to iprop - Add IPv6 support to iprop
- Support localization of error strings in - Support localization of error strings in
kinit/klist/kdestroy and Kerberos library kinit/klist/kdestroy and Kerberos library
+42
View File
@@ -0,0 +1,42 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
!if exist(thirdparty/NTMakefile)
thirdparty=thirdparty
!endif
SUBDIRS = include lib\roken base lib kuser kdc admin kadmin kpasswd appl doc \
tools tests packages etc $(thirdparty) packages\windows\installer
!include windows/NTMakefile.w32
all::
@echo Build finished succesfully
+4 -4
View File
@@ -1,12 +1,12 @@
Heimdal is a Kerberos 5 implementation. Heimdal is a Kerberos 5 implementation.
Please see the manual in doc, by default installed in For information how to install see <http://www.h5l.org/compile.html>.
/usr/heimdal/info/heimdal.info for information on how to install.
There are also briefer man pages for most of the commands. There are briefer man pages for most of the commands.
Bug reports and bugs are appreciated, see more under Bug reports in Bug reports and bugs are appreciated, see more under Bug reports in
the manual on how we prefer them. the manual on how we prefer them: <heimdal-bugs@h5l.org>.
For more information see the web-page at For more information see the web-page at
<http://www.h5l.org/> or the mailing lists: <http://www.h5l.org/> or the mailing lists:
+17
View File
@@ -0,0 +1,17 @@
-- in order of preference
- client: support KRB5_PADATA_ENCRYPTED_CHALLENGE in lib/krb5/init_creds_pw.c
- client: don't support ENC-TS in FAST
- client: plugin support for fast plugins
- kdc: plugin support for fast plugins
partly done with "struct kdc_patypes"
- kcm: support FAST armor ticket
-- using PK-INIT anonymous
-- using host key
- client: tgs-req fast support
- kdc: tgs-req fast support
+13 -32
View File
@@ -1,49 +1,30 @@
-*- indented-text -*- -*- indented-text -*-
$Id$
* configure
* appl
** appl/popper
* doc
* kdc
* kadmin
* kpasswdd
* lib
** lib/asn1
** lib/auth
** lib/auth/sia
** lib/com_err
** lib/des
** lib/gssapi ** lib/gssapi
cache delegation credentials to avoid hitting the kdc ? require time cache delegation credentials to avoid hitting the kdc ? require time
stampless tickets, and was supported in the recv'ing end with 0.6.1. stampless tickets, and was supported in the recv'ing end with 0.6.1.
** lib/hdb make iov work for arcfour
make iov work for ntlm
interop test
make TYPE_STREAM work
** lib/kadm5 ** lib/kadm5
add policies? add policies?
fix to use rpc?
** lib/krb5 ** lib/krb5
verify_user: handle non-secure verification failing because of verify_user: handle non-secure verification failing because of
host->realm mapping host->realm mapping
** lib/roken * windows stuff
-- drop all double negation #ifndef NO_
-- got though windows specific ifdefs to minimized them
-- switch to use heim-ipc for services, like the kadmin change notification socket
-- Unify lib/krb5/expand_path_w32.c
-5
View File
@@ -1,5 +0,0 @@
make iov work for arcfour
make iov work for ntlm
interop test
make TYPE_STREAM work
+1 -3
View File
@@ -4,8 +4,6 @@ include $(top_srcdir)/Makefile.am.common
AM_CPPFLAGS += $(INCLUDE_readline) $(INCLUDE_hcrypto) AM_CPPFLAGS += $(INCLUDE_readline) $(INCLUDE_hcrypto)
SLC = $(top_builddir)/lib/sl/slc
man_MANS = ktutil.8 man_MANS = ktutil.8
sbin_PROGRAMS = ktutil sbin_PROGRAMS = ktutil
@@ -42,4 +40,4 @@ LDADD = \
$(LIB_readline) \ $(LIB_readline) \
$(LIB_roken) $(LIB_roken)
EXTRA_DIST = $(man_MANS) ktutil-commands.in EXTRA_DIST = NTMakefile ktutil-version.rc $(man_MANS) ktutil-commands.in
+74
View File
@@ -0,0 +1,74 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=admin
cincdirs=$(cincdirs) -I$(OBJ)
!include ../windows/NTMakefile.w32
SBINPROGRAMS=$(SBINDIR)\ktutil.exe
KTUTIL_OBJS= \
$(OBJ)\add.obj \
$(OBJ)\change.obj \
$(OBJ)\copy.obj \
$(OBJ)\destroy.obj \
$(OBJ)\get.obj \
$(OBJ)\ktutil.obj \
$(OBJ)\ktutil-commands.obj \
$(OBJ)\list.obj \
$(OBJ)\purge.obj \
$(OBJ)\remove.obj \
$(OBJ)\rename.obj
KTUTIL_LIBS= \
$(LIBHEIMDAL) \
$(LIBKADM5SRV) \
$(LIBSL) \
$(LIBROKEN) \
$(LIBVERS)
$(SBINDIR)\ktutil.exe: $(KTUTIL_OBJS) $(KTUTIL_LIBS) $(OBJ)\ktutil-version.res
$(EXECONLINK)
$(EXEPREP)
$(OBJ)\ktutil-commands.c $(OBJ)\ktutil-commands.h: ktutil-commands.in
cd $(OBJ)
$(CP) $(SRCDIR)\ktutil-commands.in $(OBJ)
$(BINDIR)\slc.exe ktutil-commands.in
cd $(SRCDIR)
INCFILES=\
$(OBJ)\ktutil-commands.h
all:: $(INCFILES) $(SBINPROGRAMS)
clean::
-$(RM) $(SBINPROGRAMS:.exe=.*)
+1 -1
View File
@@ -113,7 +113,7 @@ kt_add(struct add_options *opt, int argc, char **argv)
goto out; goto out;
} }
if (hex_decode(opt->password_string, data, len) != len) { if ((size_t)hex_decode(opt->password_string, data, len) != len) {
free(data); free(data);
krb5_warn(context, ENOMEM, "hex decode failed"); krb5_warn(context, ENOMEM, "hex decode failed");
goto out; goto out;
+11 -10
View File
@@ -90,7 +90,8 @@ kt_get(struct get_options *opt, int argc, char **argv)
void *kadm_handle = NULL; void *kadm_handle = NULL;
krb5_enctype *etypes = NULL; krb5_enctype *etypes = NULL;
size_t netypes = 0; size_t netypes = 0;
int i, j; size_t i;
int a, j;
unsigned int failed = 0; unsigned int failed = 0;
if((keytab = ktutil_open_keytab()) == NULL) if((keytab = ktutil_open_keytab()) == NULL)
@@ -120,7 +121,7 @@ kt_get(struct get_options *opt, int argc, char **argv)
} }
for(i = 0; i < argc; i++){ for(a = 0; a < argc; a++){
krb5_principal princ_ent; krb5_principal princ_ent;
kadm5_principal_ent_rec princ; kadm5_principal_ent_rec princ;
int mask = 0; int mask = 0;
@@ -129,9 +130,9 @@ kt_get(struct get_options *opt, int argc, char **argv)
int created = 0; int created = 0;
krb5_keytab_entry entry; krb5_keytab_entry entry;
ret = krb5_parse_name(context, argv[i], &princ_ent); ret = krb5_parse_name(context, argv[a], &princ_ent);
if (ret) { if (ret) {
krb5_warn(context, ret, "can't parse principal %s", argv[i]); krb5_warn(context, ret, "can't parse principal %s", argv[a]);
failed++; failed++;
continue; continue;
} }
@@ -161,14 +162,14 @@ kt_get(struct get_options *opt, int argc, char **argv)
if(ret == 0) if(ret == 0)
created = 1; created = 1;
else if(ret != KADM5_DUP) { else if(ret != KADM5_DUP) {
krb5_warn(context, ret, "kadm5_create_principal(%s)", argv[i]); krb5_warn(context, ret, "kadm5_create_principal(%s)", argv[a]);
krb5_free_principal(context, princ_ent); krb5_free_principal(context, princ_ent);
failed++; failed++;
continue; continue;
} }
ret = kadm5_randkey_principal(kadm_handle, princ_ent, &keys, &n_keys); ret = kadm5_randkey_principal(kadm_handle, princ_ent, &keys, &n_keys);
if (ret) { if (ret) {
krb5_warn(context, ret, "kadm5_randkey_principal(%s)", argv[i]); krb5_warn(context, ret, "kadm5_randkey_principal(%s)", argv[a]);
krb5_free_principal(context, princ_ent); krb5_free_principal(context, princ_ent);
failed++; failed++;
continue; continue;
@@ -177,7 +178,7 @@ kt_get(struct get_options *opt, int argc, char **argv)
ret = kadm5_get_principal(kadm_handle, princ_ent, &princ, ret = kadm5_get_principal(kadm_handle, princ_ent, &princ,
KADM5_PRINCIPAL | KADM5_KVNO | KADM5_ATTRIBUTES); KADM5_PRINCIPAL | KADM5_KVNO | KADM5_ATTRIBUTES);
if (ret) { if (ret) {
krb5_warn(context, ret, "kadm5_get_principal(%s)", argv[i]); krb5_warn(context, ret, "kadm5_get_principal(%s)", argv[a]);
for (j = 0; j < n_keys; j++) for (j = 0; j < n_keys; j++)
krb5_free_keyblock_contents(context, &keys[j]); krb5_free_keyblock_contents(context, &keys[j]);
krb5_free_principal(context, princ_ent); krb5_free_principal(context, princ_ent);
@@ -185,7 +186,7 @@ kt_get(struct get_options *opt, int argc, char **argv)
continue; continue;
} }
if(!created && (princ.attributes & KRB5_KDB_DISALLOW_ALL_TIX)) if(!created && (princ.attributes & KRB5_KDB_DISALLOW_ALL_TIX))
krb5_warnx(context, "%s: disallow-all-tix flag set - clearing", argv[i]); krb5_warnx(context, "%s: disallow-all-tix flag set - clearing", argv[a]);
princ.attributes &= (~KRB5_KDB_DISALLOW_ALL_TIX); princ.attributes &= (~KRB5_KDB_DISALLOW_ALL_TIX);
mask = KADM5_ATTRIBUTES; mask = KADM5_ATTRIBUTES;
if(created) { if(created) {
@@ -194,7 +195,7 @@ kt_get(struct get_options *opt, int argc, char **argv)
} }
ret = kadm5_modify_principal(kadm_handle, &princ, mask); ret = kadm5_modify_principal(kadm_handle, &princ, mask);
if (ret) { if (ret) {
krb5_warn(context, ret, "kadm5_modify_principal(%s)", argv[i]); krb5_warn(context, ret, "kadm5_modify_principal(%s)", argv[a]);
for (j = 0; j < n_keys; j++) for (j = 0; j < n_keys; j++)
krb5_free_keyblock_contents(context, &keys[j]); krb5_free_keyblock_contents(context, &keys[j]);
krb5_free_principal(context, princ_ent); krb5_free_principal(context, princ_ent);
@@ -205,7 +206,7 @@ kt_get(struct get_options *opt, int argc, char **argv)
int do_add = TRUE; int do_add = TRUE;
if (netypes) { if (netypes) {
int k; size_t k;
do_add = FALSE; do_add = FALSE;
for (k = 0; k < netypes; ++k) for (k = 0; k < netypes; ++k)
+36
View File
@@ -0,0 +1,36 @@
/***********************************************************************
* Copyright (c) 2010, Secure Endpoints Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
**********************************************************************/
#define RC_FILE_TYPE VFT_APP
#define RC_FILE_DESC_0409 "Kerberos Keytab Tool"
#define RC_FILE_ORIG_0409 "ktutil.exe"
#include "../windows/version.rc"
+26 -98
View File
@@ -40,12 +40,12 @@
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm .Nm
.Oo Fl k Ar keytab \*(Ba Xo .Oo Fl k Ar keytab \*(Ba Xo
.Fl -keytab= Ns Ar keytab .Fl Fl keytab= Ns Ar keytab
.Xc .Xc
.Oc .Oc
.Op Fl v | Fl -verbose .Op Fl v | Fl Fl verbose
.Op Fl -version .Op Fl Fl version
.Op Fl h | Fl -help .Op Fl h | Fl Fl help
.Ar command .Ar command
.Op Ar args .Op Ar args
.Sh DESCRIPTION .Sh DESCRIPTION
@@ -53,72 +53,43 @@
is a program for managing keytabs. is a program for managing keytabs.
Supported options: Supported options:
.Bl -tag -width Ds .Bl -tag -width Ds
.It Xo .It Fl v , Fl Fl verbose
.Fl v ,
.Fl -verbose
.Xc
Verbose output. Verbose output.
.El .El
.Pp .Pp
.Ar command .Ar command
can be one of the following: can be one of the following:
.Bl -tag -width srvconvert .Bl -tag -width srvconvert
.It add Xo .It add Oo Fl p Ar principal Oc Oo Fl Fl principal= Ns Ar principal Oc \
.Op Fl p Ar principal Oo Fl V Ar kvno Oc Oo Fl Fl kvno= Ns Ar kvno Oc Oo Fl e Ar enctype Oc \
.Op Fl -principal= Ns Ar principal Oo Fl Fl enctype= Ns Ar enctype Oc Oo Fl w Ar password Oc \
.Op Fl V Ar kvno Oo Fl Fl password= Ns Ar password Oc Oo Fl r Oc Oo Fl Fl random Oc \
.Op Fl -kvno= Ns Ar kvno Oo Fl s Oc Oo Fl Fl no-salt Oc Oo Fl H Oc Op Fl Fl hex
.Op Fl e Ar enctype
.Op Fl -enctype= Ns Ar enctype
.Op Fl w Ar password
.Op Fl -password= Ns Ar password
.Op Fl r
.Op Fl -random
.Op Fl s
.Op Fl -no-salt
.Op Fl H
.Op Fl -hex
.Xc
Adds a key to the keytab. Options that are not specified will be Adds a key to the keytab. Options that are not specified will be
prompted for. This requires that you know the password or the hex key of the prompted for. This requires that you know the password or the hex key of the
principal to add; if what you really want is to add a new principal to principal to add; if what you really want is to add a new principal to
the keytab, you should consider the the keytab, you should consider the
.Ar get .Ar get
command, which talks to the kadmin server. command, which talks to the kadmin server.
.It change Xo .It change Oo Fl r Ar realm Oc Oo Fl Fl realm= Ns Ar realm Oc \
.Op Fl r Ar realm Oo Fl Fl a Ar host Oc Oo Fl Fl admin-server= Ns Ar host Oc \
.Op Fl -realm= Ns Ar realm Oo Fl Fl s Ar port Oc Op Fl Fl server-port= Ns Ar port
.Op Fl -a Ar host
.Op Fl -admin-server= Ns Ar host
.Op Fl -s Ar port
.Op Fl -server-port= Ns Ar port
.Xc
Update one or several keys to new versions. By default, use the admin Update one or several keys to new versions. By default, use the admin
server for the realm of a keytab entry. Otherwise it will use the server for the realm of a keytab entry. Otherwise it will use the
values specified by the options. values specified by the options.
.Pp .Pp
If no principals are given, all the ones in the keytab are updated. If no principals are given, all the ones in the keytab are updated.
.It copy Xo .It copy Ar keytab-src Ar keytab-dest
.Ar keytab-src
.Ar keytab-dest
.Xc
Copies all the entries from Copies all the entries from
.Ar keytab-src .Ar keytab-src
to to
.Ar keytab-dest . .Ar keytab-dest .
.It get Xo .It get Oo Fl p Ar admin principal Oc \
.Op Fl p Ar admin principal Oo Fl Fl principal= Ns Ar admin principal Oc Oo Fl e Ar enctype Oc \
.Op Fl -principal= Ns Ar admin principal Oo Fl Fl enctypes= Ns Ar enctype Oc Oo Fl r Ar realm Oc \
.Op Fl e Ar enctype Oo Fl Fl realm= Ns Ar realm Oc Oo Fl a Ar admin server Oc \
.Op Fl -enctypes= Ns Ar enctype Oo Fl Fl admin-server= Ns Ar admin server Oc Oo Fl s Ar server port Oc \
.Op Fl r Ar realm Oo Fl Fl server-port= Ns Ar server port Oc Ar principal ...
.Op Fl -realm= Ns Ar realm
.Op Fl a Ar admin server
.Op Fl -admin-server= Ns Ar admin server
.Op Fl s Ar server port
.Op Fl -server-port= Ns Ar server port
.Ar principal ...
.Xc
For each For each
.Ar principal , .Ar principal ,
generate a new key for it (creating it if it doesn't already exist), generate a new key for it (creating it if it doesn't already exist),
@@ -128,69 +99,26 @@ If no
.Ar realm .Ar realm
is specified, the realm to operate on is taken from the first is specified, the realm to operate on is taken from the first
principal. principal.
.It list Xo .It list Oo Fl Fl keys Oc Op Fl Fl timestamp
.Op Fl -keys
.Op Fl -timestamp
.Xc
List the keys stored in the keytab. List the keys stored in the keytab.
.It remove Xo .It remove Oo Fl p Ar principal Oc Oo Fl Fl principal= Ns Ar principal Oc \
.Op Fl p Ar principal Oo Fl V kvno Oc Oo Fl Fl kvno= Ns Ar kvno Oc Oo Fl e enctype Oc \
.Op Fl -principal= Ns Ar principal Oo Fl Fl enctype= Ns Ar enctype Oc
.Op Fl V kvno
.Op Fl -kvno= Ns Ar kvno
.Op Fl e enctype
.Op Fl -enctype= Ns Ar enctype
.Xc
Removes the specified key or keys. Not specifying a Removes the specified key or keys. Not specifying a
.Ar kvno .Ar kvno
removes keys with any version number. Not specifying an removes keys with any version number. Not specifying an
.Ar enctype .Ar enctype
removes keys of any type. removes keys of any type.
.It rename Xo .It rename Ar from-principal Ar to-principal
.Ar from-principal
.Ar to-principal
.Xc
Renames all entries in the keytab that match the Renames all entries in the keytab that match the
.Ar from-principal .Ar from-principal
to to
.Ar to-principal . .Ar to-principal .
.It purge Xo .It purge Op Fl Fl age= Ns Ar age
.Op Fl -age= Ns Ar age
.Xc
Removes all old versions of a key for which there is a newer version Removes all old versions of a key for which there is a newer version
that is at least that is at least
.Ar age .Ar age
(default one week) old. (default one week) old.
.It srvconvert
.It srv2keytab Xo
.Op Fl s Ar srvtab
.Op Fl -srvtab= Ns Ar srvtab
.Xc
Converts the version 4 srvtab in
.Ar srvtab
to a version 5 keytab and stores it in
.Ar keytab .
Identical to:
.Bd -ragged -offset indent
.Li ktutil copy
.Li krb4: Ns Ar srvtab
.Ar keytab
.Ed
.It srvcreate
.It key2srvtab Xo
.Op Fl s Ar srvtab
.Op Fl -srvtab= Ns Ar srvtab
.Xc
Converts the version 5 keytab in
.Ar keytab
to a version 4 srvtab and stores it in
.Ar srvtab .
Identical to:
.Bd -ragged -offset indent
.Li ktutil copy
.Ar keytab
.Li krb4: Ns Ar srvtab
.Ed
.El .El
.Sh SEE ALSO .Sh SEE ALSO
.Xr kadmin 8 .Xr kadmin 8
+4 -1
View File
@@ -118,8 +118,11 @@ help(void *opt, int argc, char **argv)
argv[0]); argv[0]);
} else { } else {
if(c->func) { if(c->func) {
char *fake[] = { NULL, "--help", NULL }; char shelp[] = "--help";
char *fake[3];
fake[0] = argv[0]; fake[0] = argv[0];
fake[1] = shelp;
fake[2] = NULL;
(*c->func)(2, fake); (*c->func)(2, fake);
fprintf(stderr, "\n"); fprintf(stderr, "\n");
} }
+1 -1
View File
@@ -113,7 +113,7 @@ do_list(struct list_options *opt, const char *keytab_str)
rtbl_add_column_entry_by_id(table, 3, buf); rtbl_add_column_entry_by_id(table, 3, buf);
} }
if(opt->keys_flag) { if(opt->keys_flag) {
int i; size_t i;
s = malloc(2 * entry.keyblock.keyvalue.length + 1); s = malloc(2 * entry.keyblock.keyvalue.length + 1);
if (s == NULL) { if (s == NULL) {
krb5_warnx(context, "malloc failed"); krb5_warnx(context, "malloc failed");
+3
View File
@@ -10,6 +10,7 @@ dir_dce = dceutils
endif endif
SUBDIRS = \ SUBDIRS = \
afsutil \ afsutil \
dbutils \
ftp \ ftp \
login \ login \
$(dir_otp) \ $(dir_otp) \
@@ -25,3 +26,5 @@ SUBDIRS = \
kx \ kx \
kf \ kf \
$(dir_dce) $(dir_dce)
EXTRA_DIST = NTMakefile
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl
!include ../windows/NTMakefile.w32
+1 -4
View File
@@ -2,8 +2,6 @@
include $(top_srcdir)/Makefile.am.common include $(top_srcdir)/Makefile.am.common
AM_CPPFLAGS += $(INCLUDE_krb4)
bin_PROGRAMS = afslog pagsh bin_PROGRAMS = afslog pagsh
afslog_SOURCES = afslog.c afslog_SOURCES = afslog.c
@@ -13,10 +11,9 @@ pagsh_SOURCES = pagsh.c
man_MANS = afslog.1 pagsh.1 man_MANS = afslog.1 pagsh.1
LDADD = $(LIB_kafs) \ LDADD = $(LIB_kafs) \
$(LIB_krb4) \
$(top_builddir)/lib/krb5/libkrb5.la \ $(top_builddir)/lib/krb5/libkrb5.la \
$(top_builddir)/lib/asn1/libasn1.la \ $(top_builddir)/lib/asn1/libasn1.la \
$(LIB_hcrypto) \ $(LIB_hcrypto) \
$(LIB_roken) $(LIB_roken)
EXTRA_DIST = $(man_MANS) EXTRA_DIST = NTMakefile $(man_MANS)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\afsutil
!include ../../windows/NTMakefile.w32
+23 -24
View File
@@ -36,31 +36,30 @@
.Os HEIMDAL .Os HEIMDAL
.Sh NAME .Sh NAME
.Nm afslog .Nm afslog
.Nd .Nd obtain AFS tokens
obtain AFS tokens
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm .Nm
.Op Fl h | Fl -help .Op Fl h | Fl Fl help
.Op Fl -no-v4 .Op Fl Fl no-v4
.Op Fl -no-v5 .Op Fl Fl no-v5
.Op Fl u | Fl -unlog .Op Fl u | Fl Fl unlog
.Op Fl v | Fl -verbose .Op Fl v | Fl Fl verbose
.Op Fl -version .Op Fl Fl version
.Oo Fl c Ar cell \*(Ba Xo .Oo Fl c Ar cell \*(Ba Xo
.Fl -cell= Ns Ar cell .Fl Fl cell= Ns Ar cell
.Xc .Xc
.Oc .Oc
.Oo Fl k Ar realm \*(Ba Xo .Oo Fl k Ar realm \*(Ba Xo
.Fl -realm= Ns Ar realm .Fl Fl realm= Ns Ar realm
.Xc .Xc
.Oc .Oc
.Oo Fl P Ar principal \*(Ba Xo .Oo Fl P Ar principal \*(Ba Xo
.Fl -principal= Ns Ar principal .Fl Fl principal= Ns Ar principal
.Xc .Xc
.Oc .Oc
.Bk -words .Bk -words
.Oo Fl p Ar path \*(Ba Xo .Oo Fl p Ar path \*(Ba Xo
.Fl -file= Ns Ar path .Fl Fl file= Ns Ar path
.Xc .Xc
.Oc .Oc
.Ek .Ek
@@ -77,51 +76,51 @@ decides upon.
.Pp .Pp
Supported options: Supported options:
.Bl -tag -width Ds .Bl -tag -width Ds
.It Fl -no-v4 .It Fl Fl no-v4
This makes This makes
.Nm .Nm
not try using Kerberos 4. not try using Kerberos 4.
.It Fl -no-v5 .It Fl Fl no-v5
This makes This makes
.Nm .Nm
not try using Kerberos 5. not try using Kerberos 5.
.It Xo .It Xo
.Fl P Ar principal , .Fl P Ar principal ,
.Fl -principal Ar principal .Fl Fl principal Ar principal
.Xc .Xc
select what Kerberos 5 principal to use. select what Kerberos 5 principal to use.
.It Fl -cache Ar cache .It Fl Fl cache Ar cache
select what Kerberos 5 credential cache to use. select what Kerberos 5 credential cache to use.
.Fl -principal .Fl Fl principal
overrides this option. overrides this option.
.It Xo .It Xo
.Fl u , .Fl u ,
.Fl -unlog .Fl Fl unlog
.Xc .Xc
Destroy tokens instead of obtaining new. If this is specified, all Destroy tokens instead of obtaining new. If this is specified, all
other options are ignored (except for other options are ignored (except for
.Fl -help .Fl Fl help
and and
.Fl -version ) . .Fl Fl version ) .
.It Xo .It Xo
.Fl v , .Fl v ,
.Fl -verbose .Fl Fl verbose
.Xc .Xc
Adds more verbosity for what is actually going on. Adds more verbosity for what is actually going on.
.It Xo .It Xo
.Fl c Ar cell, .Fl c Ar cell,
.Fl -cell= Ns Ar cell .Fl Fl cell= Ns Ar cell
.Xc .Xc
This specified one or more cell names to get tokens for. This specified one or more cell names to get tokens for.
.It Xo .It Xo
.Fl k Ar realm , .Fl k Ar realm ,
.Fl -realm= Ns Ar realm .Fl Fl realm= Ns Ar realm
.Xc .Xc
This is the Kerberos realm the AFS servers live in, this should This is the Kerberos realm the AFS servers live in, this should
normally not be specified. normally not be specified.
.It Xo .It Xo
.Fl p Ar path , .Fl p Ar path ,
.Fl -file= Ns Ar path .Fl Fl file= Ns Ar path
.Xc .Xc
This specified one or more file paths for which tokens should be This specified one or more file paths for which tokens should be
obtained. obtained.
+4 -4
View File
@@ -180,9 +180,9 @@ afslog_file(const char *path)
static int static int
do_afslog(const char *cell) do_afslog(const char *cell)
{ {
int k5ret, k4ret; int k5ret;
k5ret = k4ret = 0; k5ret = 0;
#ifdef KRB5 #ifdef KRB5
if(context != NULL && id != NULL && use_krb5) { if(context != NULL && id != NULL && use_krb5) {
@@ -195,9 +195,9 @@ do_afslog(const char *cell)
cell = "<default cell>"; cell = "<default cell>";
#ifdef KRB5 #ifdef KRB5
if (k5ret) if (k5ret)
warnx("krb5_afslog(%s): %s", cell, krb5_get_err_text(context, k5ret)); krb5_warn(context, k5ret, "krb5_afslog(%s)", cell);
#endif #endif
if (k5ret || k4ret) if (k5ret)
return 1; return 1;
return 0; return 0;
} }
+15 -13
View File
@@ -36,44 +36,45 @@
.Os Heimdal .Os Heimdal
.Sh NAME .Sh NAME
.Nm pagsh .Nm pagsh
.Nd .Nd creates a new credential cache sandbox
creates a new credential cache sandbox
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm .Nm
.Op Fl c .Op Fl c Ar command-string
.Op Fl h | Fl -help .Op Fl h | Fl Fl help
.Op Fl -version .Op Fl Fl version
.Op Fl -cache-type= Ns Ar string .Op Fl Fl cache-type= Ns Ar string
.Ar command [args...] .Ar command [args...]
.Sh DESCRIPTION .Sh DESCRIPTION
Supported options: Supported options:
.Bl -tag -width Ds .Bl -tag -width Ds
.It Xo .It Xo
.Fl c .Fl c Ar command-string
Executes command(s) contained in
.Ar command-string .
.Xc .Xc
.It Xo .It Xo
.Fl -cache-type= Ns Ar string .Fl Fl cache-type= Ns Ar string
.Xc .Xc
.It Xo .It Xo
.Fl h , .Fl h ,
.Fl -help .Fl Fl help
.Xc .Xc
.It Xo .It Xo
.Fl -version .Fl Fl version
.Xc .Xc
.El .El
.Pp .Pp
.Nm .Nm
creates a new credential cache sandbox for the user to live in. creates a new credential cache sandbox for the user to live in.
If AFS is installed on the computer, the user is put in a newly If AFS is installed on the computer, the user is put in a newly
created PAG. created Process Authentication Group (PAG).
.Pp .Pp
For Kerberos 5, the credential cache type that is used is the same as For Kerberos 5, the credential cache type that is used is the same as
the credential cache type that was used at the time of the credential cache type that was used at the time of
.Nm .Nm
invocation. invocation.
The credential cache type can be controlled by the option The credential cache type can be controlled by the option
.Fl -cache-type . .Fl Fl cache-type .
.Sh EXAMPLES .Sh EXAMPLES
Create a new sandbox where new credentials can be used, while the old Create a new sandbox where new credentials can be used, while the old
credentials can be used by other processes. credentials can be used by other processes.
@@ -89,4 +90,5 @@ $ klist
klist: No ticket file: /tmp/krb5cc_03014a klist: No ticket file: /tmp/krb5cc_03014a
.Ed .Ed
.Sh SEE ALSO .Sh SEE ALSO
.Xr afslog 1 .Xr afslog 1 ,
.Xr kinit 1
+3 -1
View File
@@ -138,7 +138,7 @@ main(int argc, char **argv)
if (name == NULL) if (name == NULL)
krb5_errx(context, 1, "Generated credential cache have no name"); krb5_errx(context, 1, "Generated credential cache have no name");
snprintf(tf, sizeof(tf), "%s:%s", typename_arg, name); snprintf(tf, sizeof(tf), "%s:%s", krb5_cc_get_type(context, id), name);
ret = krb5_cc_close(context, id); ret = krb5_cc_close(context, id);
if (ret) if (ret)
@@ -169,6 +169,8 @@ main(int argc, char **argv)
path = getenv("SHELL"); path = getenv("SHELL");
if(path == NULL){ if(path == NULL){
struct passwd *pw = k_getpwuid(geteuid()); struct passwd *pw = k_getpwuid(geteuid());
if (pw == NULL)
errx(1, "no such user: %d", (int)geteuid());
path = strdup(pw->pw_shell); path = strdup(pw->pw_shell);
} }
} else { } else {
+13
View File
@@ -0,0 +1,13 @@
# $Id$
include $(top_srcdir)/Makefile.am.common
bin_PROGRAMS = bsearch
bsearch_SOURCES = bsearch.c
man_MANS = bsearch.1
EXTRA_DIST = NTMakefile $(man_MANS)
LDADD = $(LIB_roken) $(LIB_vers) $(LIB_heimbase)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\dbutils
!include ../../windows/NTMakefile.w32
+114
View File
@@ -0,0 +1,114 @@
.\"
.\" Copyright (c) 2011, Secure Endpoints Inc.
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\"
.\" - Redistributions of source code must retain the above copyright
.\" notice, this list of conditions and the following disclaimer.
.\"
.\" - Redistributions in binary form must reproduce the above copyright
.\" notice, this list of conditions and the following disclaimer in
.\" the documentation and/or other materials provided with the
.\" distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
.\" "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
.\" LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
.\" FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
.\" COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
.\" INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
.\" (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
.\" SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
.\" STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
.\" ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
.\" OF THE POSSIBILITY OF SUCH DAMAGE.
.\"
.Dd November 30, 2011
.Dt BSEARCH 1
.Os KTH-KRB
.Sh NAME
.Nm bsearch
.Nd manages one-time passwords
.Sh SYNOPSIS
.Nm bsearch
.Op Fl KVvh
.Op Fl b Ar block-size
.Op Fl m Ar max-cache-size
.Ar file
.Ar [key ...]
.Sh DESCRIPTION
The
.Nm
program performs binary searches of
.Ar file
which must be a sorted flat text file.
.Pp
Each line is a record. Each record starts with a key
that is optionally followed by whitespace and a value.
Whitespace may be quoted with a backslash, but newline
and carriage-return characters must be quoted in some
other manner (e.g., as backslash-n and backslash-r).
Escapes are not interpreted nor removed.
.Pp
If no key arguments are given on the comman-line, then
keys will be read from standard input.
.Pp
By default only values are printed to standard output.
Use the -K option to also print keys. The exit status
will be non-zero if any key lookups fail.
.Pp
Options are:
.Bl -tag -width Ds
.It Fl K
Print keys.
.It Fl V
Don't print values.
.It Fl h
Print usage and exit.
.It Fl v
Print statistic and debug information to standard
error.
.Ar file
A sorted flat text file. NOTE: use the "C" locale for
sorting this file, as in "LC_ALL=C sort -u -o file
file".
.It Fl h
For getting a help message.
.It Fl m
Set
.Ar max-cache-size
as the maximum cache size. If the
.Ar file
is smaller than this size then the whole file will be
read into memory, else the program will read blocks.
Defaults to 1MB.
.It Fl b
Set
.Ar block-size
as the block size for block-wise I/O. This must be a
power of 2, must be no smaller than 512 and no larger
than 1MB. Defaults to the
.Ar file's
filesystem's preferred blocksize.
.El
.Sh EXAMPLES
.Bd -literal -offset indent
$ env LC_ALL=C sort -o /tmp/words /usr/share/dict/words
$ bsearch -Kv /tmp/words day
Using whole-file method
Key day found at offset 327695 in 12 loops and 0 reads
day
$
.Sh NOTES
.Pp
Records must not be longer than one block's size.
.Pp
Flat text files must be sorted in the "C" locale. In
some systems the default locale may result in
case-insensitive sorting by the sort command.
.Sh SEE ALSO
.Xr sort 1
+205
View File
@@ -0,0 +1,205 @@
/*
* Copyright (c) 2011, Secure Endpoints Inc.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
*
* - Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
*
* - Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in
* the documentation and/or other materials provided with the
* distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
* "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
* LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
* FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
* COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT,
* INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR
* SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT,
* STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
* OF THE POSSIBILITY OF SUCH DAMAGE.
*
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <strings.h>
#include <errno.h>
#include <roken.h>
#include <heimbase.h>
#include <getarg.h>
#include <vers.h>
int help_flag;
int version_flag;
int verbose_flag;
int print_keys_flag;
int no_values_flag;
int block_size_int;
int max_size_int;
struct getargs args[] = {
{ "print-keys", 'K', arg_flag, &print_keys_flag,
"print keys", NULL },
{ "no-values", 'V', arg_flag, &no_values_flag,
"don't print values", NULL },
{ "verbose", 'v', arg_flag, &verbose_flag,
"print statistics and informative messages", NULL },
{ "help", 'h', arg_flag, &help_flag,
"print usage message", NULL },
{ "block-size", 'b', arg_integer, &block_size_int,
"block size", "integer" },
{ "max-cache-size", 'm', arg_integer, &max_size_int,
"maximum cache size", "integer" },
{ "version", '\0', arg_flag, &version_flag, NULL, NULL }
};
static int num_args = sizeof(args) / sizeof(args[0]);
static void
usage(int status)
{
arg_printusage(args, num_args, NULL, "file [key ...]");
exit(status);
}
#define MAX_BLOCK_SIZE (1024 * 1024)
#define DEFAULT_MAX_FILE_SIZE (1024 * 1024)
int
main(int argc, char **argv)
{
char keybuf[1024];
char *fname;
char *key = keybuf;
char *value;
char *p;
bsearch_file_handle bfh = NULL;
size_t num;
size_t loc; /* index where record is located or to be inserted */
size_t loops; /* number of loops/comparisons needed for lookup */
size_t reads = 0; /* number of reads needed for a lookup */
size_t failures = 0; /* number of lookup failures -- for exit status */
size_t block_size = 0;
size_t max_size = 0;
int optidx = 0;
int blockwise;
int ret = 0;
setprogname(argv[0]);
if (getarg(args, num_args, argc, argv, &optidx))
usage(1);
if (version_flag) {
print_version(NULL);
return 0;
}
if (help_flag)
usage(0);
if (block_size_int != 0 && block_size_int < 512) {
fprintf(stderr, "Invalid block size: too small\n");
return 1;
}
if (block_size_int > 0) {
/* Check that block_size is a power of 2 */
num = block_size_int;
while (num) {
if ((num % 2) && (num >> 1)) {
fprintf(stderr, "Invalid block size: must be power "
"of two\n");
return 1;
}
num >>= 1;
}
if (block_size_int > MAX_BLOCK_SIZE)
fprintf(stderr, "Invalid block size: too large\n");
block_size = block_size_int;
}
if (max_size_int < 0)
usage(1);
max_size = max_size_int;
argc -= optind;
argv += optind;
if (argc == 0)
usage(1);
fname = argv[0];
argc--;
argv++;
ret = __bsearch_file_open(fname, max_size, block_size, &bfh, &reads);
if (ret != 0) {
perror("bsearch_file_open");
return 1;
}
__bsearch_file_info(bfh, &block_size, &max_size, &blockwise);
if (verbose_flag && blockwise) {
fprintf(stderr, "Using block-wise method with block size %lu and "
"cache size %lu\n",
(long unsigned)block_size, (long unsigned)max_size);
} else if (verbose_flag) {
fprintf(stderr, "Using whole-file method\n");
}
for (;;) {
loops = 0; /* reset stats */
/* Eww */
if (argc) {
key = *(argv++);
if (!key)
break;
} else {
if (!fgets(keybuf, sizeof (keybuf), stdin))
break;
p = strchr(key, '\n');
if (!p)
break;
*p = '\0';
if (!*key)
continue;
}
ret = __bsearch_file(bfh, key, &value, &loc, &loops, &reads);
if (ret != 0) {
if (ret > 0) {
fprintf(stderr, "Error: %s\n", strerror(ret));
__bsearch_file_close(&bfh);
return 1;
}
if (verbose_flag)
fprintf(stderr, "Key %s not found in %lu loops and %lu reads; "
"insert at %lu\n", key, (long unsigned)loops,
(long unsigned)reads, (long unsigned)loc);
failures++;
continue;
}
if (verbose_flag)
fprintf(stderr, "Key %s found at offset %lu in %lu loops and "
"%lu reads\n", key, (long unsigned)loc,
(long unsigned)loops, (long unsigned)reads);
if (print_keys_flag && !no_values_flag && value)
printf("%s %s\n", key, value);
else if (print_keys_flag)
printf("%s\n", key);
else if (no_values_flag && value)
printf("%s\n", value);
free(value);
}
if (failures)
return 2;
__bsearch_file_close(&bfh);
return 0;
}
+1
View File
@@ -24,6 +24,7 @@ k5dcecon_SOURCES = k5dcecon.c k5dce.h
dpagaix_SOURCES = dpagaix.c dpagaix_SOURCES = dpagaix.c
EXTRA_DIST = \ EXTRA_DIST = \
NTMakefile \
dfspag.exp \ dfspag.exp \
README.dcedfs \ README.dcedfs \
README.original \ README.original \
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\dceutils
!include ../../windows/NTMakefile.w32
+1 -1
View File
@@ -55,7 +55,7 @@ typedef unsigned char krb5_octet;
typedef krb5_octet krb5_boolean; typedef krb5_octet krb5_boolean;
typedef krb5short krb5_keytype; /* in k5.2 it's a short */ typedef krb5short krb5_keytype; /* in k5.2 it's a short */
typedef krb5_int32 krb5_flags; typedef krb5_int32 krb5_flags;
typedef krb5_int32 krb5_timestamp; typedef krb5_int32 krb5_timestamp; /* is a time_t in krb5.h */
typedef char * krb5_pointer; /* pointer to unexposed data */ typedef char * krb5_pointer; /* pointer to unexposed data */
+2
View File
@@ -3,3 +3,5 @@
include $(top_srcdir)/Makefile.am.common include $(top_srcdir)/Makefile.am.common
SUBDIRS = common ftp ftpd SUBDIRS = common ftp ftpd
EXTRA_DIST = NTMakefile
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\ftp
!include ../../windows/NTMakefile.w32
+2 -2
View File
@@ -2,11 +2,11 @@
include $(top_srcdir)/Makefile.am.common include $(top_srcdir)/Makefile.am.common
AM_CPPFLAGS += $(INCLUDE_krb4)
noinst_LIBRARIES = libcommon.a noinst_LIBRARIES = libcommon.a
libcommon_a_SOURCES = \ libcommon_a_SOURCES = \
sockbuf.c \ sockbuf.c \
buffer.c \ buffer.c \
common.h common.h
EXTRA_DIST = NTMakefile
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\ftp\common
!include ../../../windows/NTMakefile.w32
+1 -1
View File
@@ -41,4 +41,4 @@ LDADD = \
$(LIB_roken) \ $(LIB_roken) \
$(LIB_readline) $(LIB_readline)
EXTRA_DIST = $(man_MANS) EXTRA_DIST = NTMakefile $(man_MANS)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\ftp\ftp
!include ../../../windows/NTMakefile.w32
+5
View File
@@ -1759,6 +1759,11 @@ setnmap(int argc, char **argv)
mapflag = 1; mapflag = 1;
code = 1; code = 1;
cp = strchr(altarg, ' '); cp = strchr(altarg, ' ');
if (cp == NULL) {
printf("Usage: %s missing space\n",argv[0]);
code = -1;
return;
}
if (proxy) { if (proxy) {
while(*++cp == ' ') while(*++cp == ' ')
continue; continue;
+4 -4
View File
@@ -53,8 +53,8 @@ file transfer program
.Op Fl t .Op Fl t
.Op Fl v .Op Fl v
.Op Fl x .Op Fl x
.Op Fl -no-gss-bindings .Op Fl Fl no-gss-bindings
.Op Fl -no-gss-delegate .Op Fl Fl no-gss-delegate
.Op Ar host .Op Ar host
.Sh DESCRIPTION .Sh DESCRIPTION
.Nm .Nm
@@ -103,10 +103,10 @@ Turn on passive mode.
Enables debugging. Enables debugging.
.It Fl g .It Fl g
Disables file name globbing. Disables file name globbing.
.It Fl -no-gss-bindings .It Fl Fl no-gss-bindings
Don't use GSS-API bindings when talking to peer. IP addresses will not Don't use GSS-API bindings when talking to peer. IP addresses will not
be checked to ensure they match. be checked to ensure they match.
.It Fl -no-gss-delegate .It Fl Fl no-gss-delegate
Disable delegation of GSSAPI credentials. Disable delegation of GSSAPI credentials.
.It Fl l .It Fl l
Disables command line editing. Disables command line editing.
+3 -3
View File
@@ -678,7 +678,7 @@ sendrequest (char *cmd, char *local, char *remote, char *lmode, int printnames)
char *rmode = "w"; char *rmode = "w";
if (verbose && printnames) { if (verbose && printnames) {
if (local && strcmp (local, "-") != 0) if (strcmp (local, "-") != 0)
printf ("local: %s ", local); printf ("local: %s ", local);
if (remote) if (remote)
printf ("remote: %s\n", remote); printf ("remote: %s\n", remote);
@@ -909,7 +909,7 @@ recvrequest (char *cmd, char *local, char *remote,
is_retr = strcmp (cmd, "RETR") == 0; is_retr = strcmp (cmd, "RETR") == 0;
if (is_retr && verbose && printnames) { if (is_retr && verbose && printnames) {
if (local && strcmp (local, "-") != 0) if (strcmp (local, "-") != 0)
printf ("local: %s ", local); printf ("local: %s ", local);
if (remote) if (remote)
printf ("remote: %s\n", remote); printf ("remote: %s\n", remote);
@@ -936,7 +936,7 @@ recvrequest (char *cmd, char *local, char *remote,
return; return;
} }
oldintr = signal (SIGINT, abortrecv); oldintr = signal (SIGINT, abortrecv);
if (!local_given || (strcmp (local, "-") && *local != '|')) { if (!local_given || (strcmp(local, "-") && *local != '|')) {
if (access (local, 2) < 0) { if (access (local, 2) < 0) {
char *dir = strrchr (local, '/'); char *dir = strrchr (local, '/');
+19 -42
View File
@@ -45,9 +45,9 @@ RCSID("$Id$");
int ftp_do_gss_bindings = 0; int ftp_do_gss_bindings = 0;
int ftp_do_gss_delegate = 1; int ftp_do_gss_delegate = 1;
struct gss_data { struct gssapi_data {
gss_ctx_id_t context_hdl; gss_ctx_id_t context_hdl;
char *client_name; gss_name_t client_name;
gss_cred_id_t delegated_cred_handle; gss_cred_id_t delegated_cred_handle;
void *mech_data; void *mech_data;
}; };
@@ -55,7 +55,7 @@ struct gss_data {
static int static int
gss_init(void *app_data) gss_init(void *app_data)
{ {
struct gss_data *d = app_data; struct gssapi_data *d = app_data;
d->context_hdl = GSS_C_NO_CONTEXT; d->context_hdl = GSS_C_NO_CONTEXT;
d->delegated_cred_handle = GSS_C_NO_CREDENTIAL; d->delegated_cred_handle = GSS_C_NO_CREDENTIAL;
#if defined(FTP_SERVER) #if defined(FTP_SERVER)
@@ -85,7 +85,7 @@ gss_decode(void *app_data, void *buf, int len, int level)
gss_buffer_desc input, output; gss_buffer_desc input, output;
gss_qop_t qop_state; gss_qop_t qop_state;
int conf_state; int conf_state;
struct gss_data *d = app_data; struct gssapi_data *d = app_data;
size_t ret_len; size_t ret_len;
input.length = len; input.length = len;
@@ -114,14 +114,15 @@ gss_overhead(void *app_data, int level, int len)
static int static int
gss_encode(void *app_data, void *from, int length, int level, void **to) gss_encode(void *app_data, void *from, int length, int level, void **to)
{ {
OM_uint32 maj_stat, min_stat; OM_uint32 min_stat;
gss_buffer_desc input, output; gss_buffer_desc input, output;
int conf_state; int conf_state;
struct gss_data *d = app_data; struct gssapi_data *d = app_data;
input.length = length; input.length = length;
input.value = from; input.value = from;
maj_stat = gss_wrap (&min_stat, /* XXX We should really display the major status... */
(void) gss_wrap(&min_stat,
d->context_hdl, d->context_hdl,
level == prot_private, level == prot_private,
GSS_C_QOP_DEFAULT, GSS_C_QOP_DEFAULT,
@@ -173,7 +174,7 @@ gss_adat(void *app_data, void *buf, size_t len)
gss_buffer_desc input_token, output_token; gss_buffer_desc input_token, output_token;
OM_uint32 maj_stat, min_stat; OM_uint32 maj_stat, min_stat;
gss_name_t client_name; gss_name_t client_name;
struct gss_data *d = app_data; struct gssapi_data *d = app_data;
gss_channel_bindings_t bindings; gss_channel_bindings_t bindings;
if (ftp_do_gss_bindings) { if (ftp_do_gss_bindings) {
@@ -219,32 +220,8 @@ gss_adat(void *app_data, void *buf, size_t len)
gss_release_buffer(&min_stat, &output_token); gss_release_buffer(&min_stat, &output_token);
} }
if(maj_stat == GSS_S_COMPLETE){ if(maj_stat == GSS_S_COMPLETE){
char *name; d->client_name = client_name;
gss_buffer_desc export_name; client_name = GSS_C_NO_NAME;
gss_OID oid;
maj_stat = gss_display_name(&min_stat, client_name,
&export_name, &oid);
if(maj_stat != 0) {
reply(500, "Error displaying name");
goto out;
}
/* XXX kerberos */
if(oid != GSS_KRB5_NT_PRINCIPAL_NAME) {
reply(500, "OID not kerberos principal name");
gss_release_buffer(&min_stat, &export_name);
goto out;
}
name = malloc(export_name.length + 1);
if(name == NULL) {
reply(500, "Out of memory");
gss_release_buffer(&min_stat, &export_name);
goto out;
}
memcpy(name, export_name.value, export_name.length);
name[export_name.length] = '\0';
gss_release_buffer(&min_stat, &export_name);
d->client_name = name;
if(p) if(p)
reply(235, "ADAT=%s", p); reply(235, "ADAT=%s", p);
else else
@@ -272,19 +249,19 @@ gss_adat(void *app_data, void *buf, size_t len)
gss_release_buffer(&new_stat, &status_string); gss_release_buffer(&new_stat, &status_string);
reply(431, "Security resource unavailable"); reply(431, "Security resource unavailable");
} }
out:
if (client_name) if (client_name)
gss_release_name(&min_stat, &client_name); gss_release_name(&min_stat, &client_name);
free(p); free(p);
return 0; return 0;
} }
int gss_userok(void*, char*); int gssapi_userok(void*, char*);
int gss_session(void*, char*); int gssapi_session(void*, char*);
struct sec_server_mech gss_server_mech = { struct sec_server_mech gss_server_mech = {
"GSSAPI", "GSSAPI",
sizeof(struct gss_data), sizeof(struct gssapi_data),
gss_init, /* init */ gss_init, /* init */
NULL, /* end */ NULL, /* end */
gss_check_prot, gss_check_prot,
@@ -296,8 +273,8 @@ struct sec_server_mech gss_server_mech = {
gss_adat, gss_adat,
NULL, /* pbsz */ NULL, /* pbsz */
NULL, /* ccc */ NULL, /* ccc */
gss_userok, gssapi_userok,
gss_session gssapi_session
}; };
#else /* FTP_SERVER */ #else /* FTP_SERVER */
@@ -357,7 +334,7 @@ gss_auth(void *app_data, char *host)
char *p; char *p;
int n; int n;
gss_channel_bindings_t bindings; gss_channel_bindings_t bindings;
struct gss_data *d = app_data; struct gssapi_data *d = app_data;
OM_uint32 mech_flags = GSS_C_MUTUAL_FLAG | GSS_C_SEQUENCE_FLAG; OM_uint32 mech_flags = GSS_C_MUTUAL_FLAG | GSS_C_SEQUENCE_FLAG;
const char *knames[] = { "ftp", "host", NULL }, **kname = knames; const char *knames[] = { "ftp", "host", NULL }, **kname = knames;
@@ -522,7 +499,7 @@ gss_auth(void *app_data, char *host)
struct sec_client_mech gss_client_mech = { struct sec_client_mech gss_client_mech = {
"GSSAPI", "GSSAPI",
sizeof(struct gss_data), sizeof(struct gssapi_data),
gss_init, gss_init,
gss_auth, gss_auth,
NULL, /* end */ NULL, /* end */
+2 -3
View File
@@ -555,10 +555,9 @@ help(int argc, char **argv)
for (i = 0; i < lines; i++) { for (i = 0; i < lines; i++) {
for (j = 0; j < columns; j++) { for (j = 0; j < columns; j++) {
c = cmdtab + j * lines + i; c = cmdtab + j * lines + i;
if (c->c_name && (!proxy || c->c_proxy)) { if ((!proxy || c->c_proxy)) {
printf("%s", c->c_name); printf("%s", c->c_name);
} } else {
else if (c->c_name) {
for (k=0; k < strlen(c->c_name); k++) { for (k=0; k < strlen(c->c_name); k++) {
putchar(' '); putchar(' ');
} }
+8 -2
View File
@@ -81,7 +81,7 @@ name_to_level(const char *name)
for(i = 0; i < sizeof(level_names) / sizeof(level_names[0]); i++) for(i = 0; i < sizeof(level_names) / sizeof(level_names[0]); i++)
if(!strncasecmp(level_names[i].name, name, strlen(name))) if(!strncasecmp(level_names[i].name, name, strlen(name)))
return level_names[i].level; return level_names[i].level;
return (enum protection_level)-1; return prot_invalid;
} }
#endif #endif
@@ -550,14 +550,20 @@ void mec(char *msg, enum protection_level level)
} }
buf_size = strlen(msg) + 2; buf_size = strlen(msg) + 2;
buf = malloc(buf_size); buf = malloc(buf_size);
if (buf == NULL) {
reply(501, "Failed to allocate %lu", (unsigned long)buf_size);
return;
}
len = base64_decode(msg, buf); len = base64_decode(msg, buf);
command_prot = level; command_prot = level;
if(len == (size_t)-1) { if(len == (size_t)-1) {
free(buf);
reply(501, "Failed to base64-decode command"); reply(501, "Failed to base64-decode command");
return; return;
} }
len = (*mech->decode)(app_data, buf, len, level); len = (*mech->decode)(app_data, buf, len, level);
if(len == (size_t)-1) { if(len == (size_t)-1) {
free(buf);
reply(535, "Failed to decode command"); reply(535, "Failed to decode command");
return; return;
} }
@@ -677,7 +683,7 @@ set_command_prot(enum protection_level level)
ret = command("CCC"); ret = command("CCC");
if(ret != COMPLETE) { if(ret != COMPLETE) {
printf("Failed to clear command channel.\n"); printf("Failed to clear command channel.\n");
return -1; return prot_invalid;
} }
} }
command_prot = level; command_prot = level;
+5 -4
View File
@@ -37,10 +37,11 @@
#define __security_h__ #define __security_h__
enum protection_level { enum protection_level {
prot_clear, prot_invalid = -1,
prot_safe, prot_clear = 0,
prot_confidential, prot_safe = 1,
prot_private prot_confidential = 2,
prot_private = 3
}; };
struct sec_client_mech { struct sec_client_mech {
+2 -4
View File
@@ -2,7 +2,7 @@
include $(top_srcdir)/Makefile.am.common include $(top_srcdir)/Makefile.am.common
AM_CPPFLAGS += -I$(srcdir)/../common $(INCLUDE_krb4) -DFTP_SERVER AM_CPPFLAGS += -I$(srcdir)/../common -DFTP_SERVER
libexec_PROGRAMS = ftpd libexec_PROGRAMS = ftpd
@@ -24,7 +24,6 @@ ftpd_SOURCES = \
security.c \ security.c \
kauth.c \ kauth.c \
klist.c \ klist.c \
$(krb4_sources) \
$(krb5_sources) $(krb5_sources)
EXTRA_ftpd_SOURCES = kauth.c gssapi.c gss_userok.c EXTRA_ftpd_SOURCES = kauth.c gssapi.c gss_userok.c
@@ -47,8 +46,7 @@ LDADD = ../common/libcommon.a \
$(LIB_gssapi) \ $(LIB_gssapi) \
$(LIB_krb5) \ $(LIB_krb5) \
$(LIB_kafs) \ $(LIB_kafs) \
$(LIB_krb4) \
$(LIB_hcrypto) \ $(LIB_hcrypto) \
$(LIB_roken) $(LIB_roken)
EXTRA_DIST = $(man_MANS) EXTRA_DIST = NTMakefile $(man_MANS)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\ftp\ftpd
!include ../../../windows/NTMakefile.w32
+5 -5
View File
@@ -155,11 +155,11 @@ cmd
{ {
if ($5) { if ($5) {
if (paranoid && if (paranoid &&
(data_dest->sa_family != AF_INET || (data_dest->sa_family != his_addr->sa_family ||
(ntohs(data_dest->sin_port) < IPPORT_RESERVED) || (socket_get_port(data_dest) < IPPORT_RESERVED) ||
memcmp(data_dest->sin_addr, memcmp(socket_get_address(data_dest),
&his_addr->sin_addr, socket_get_address(his_addr),
sizeof(data_dest.sin_addr)) != 0)) { socket_addr_size(his_addr)) != 0)) {
usedefault = 1; usedefault = 1;
reply(500, "Illegal PORT range rejected."); reply(500, "Illegal PORT range rejected.");
} else { } else {
+8 -8
View File
@@ -47,11 +47,11 @@
.Op Fl p Ar port .Op Fl p Ar port
.Op Fl T Ar maxtimeout .Op Fl T Ar maxtimeout
.Op Fl t Ar timeout .Op Fl t Ar timeout
.Op Fl -gss-bindings .Op Fl Fl gss-bindings
.Op Fl I | Fl -no-insecure-oob .Op Fl I | Fl Fl no-insecure-oob
.Op Fl u Ar default umask .Op Fl u Ar default umask
.Op Fl B | Fl -builtin-ls .Op Fl B | Fl Fl builtin-ls
.Op Fl -good-chars= Ns Ar string .Op Fl Fl good-chars= Ns Ar string
.Sh DESCRIPTION .Sh DESCRIPTION
.Nm Ftpd .Nm Ftpd
is the is the
@@ -101,7 +101,7 @@ Debugging information is written to the syslog using LOG_FTP.
.It Fl g .It Fl g
Anonymous users will get a umask of Anonymous users will get a umask of
.Ar umask . .Ar umask .
.It Fl -gss-bindings .It Fl Fl gss-bindings
require the peer to use GSS-API bindings (ie make sure IP addresses match). require the peer to use GSS-API bindings (ie make sure IP addresses match).
.It Fl i .It Fl i
Open a socket and wait for a connection. This is mainly used for Open a socket and wait for a connection. This is mainly used for
@@ -144,16 +144,16 @@ revert to the old behavior.
Verbose mode. Verbose mode.
.It Xo .It Xo
.Fl B , .Fl B ,
.Fl -builtin-ls .Fl Fl builtin-ls
.Xc .Xc
use built-in ls to list files use built-in ls to list files
.It Xo .It Xo
.Fl -good-chars= Ns Ar string .Fl Fl good-chars= Ns Ar string
.Xc .Xc
allowed anonymous upload filename chars allowed anonymous upload filename chars
.It Xo .It Xo
.Fl I .Fl I
.Fl -no-insecure-oob .Fl Fl no-insecure-oob
.Xc .Xc
don't allow insecure out of band. don't allow insecure out of band.
Heimdal ftp clients before 0.6.3 doesn't support secure oob, so turning Heimdal ftp clients before 0.6.3 doesn't support secure oob, so turning
+14 -19
View File
@@ -329,7 +329,7 @@ main(int argc, char **argv)
#endif #endif
if(interactive_flag) if(interactive_flag)
mini_inetd (port); mini_inetd(port, NULL);
/* /*
* LOG_NDELAY sets up the logging connection immediately, * LOG_NDELAY sets up the logging connection immediately,
@@ -346,14 +346,9 @@ main(int argc, char **argv)
syslog(LOG_ERR, "getsockname (%s): %m",argv[0]); syslog(LOG_ERR, "getsockname (%s): %m",argv[0]);
exit(1); exit(1);
} }
#if defined(IP_TOS) && defined(HAVE_SETSOCKOPT) #if defined(IP_TOS)
{ if (ctrl_addr->sa_family == AF_INET)
int tos = IPTOS_LOWDELAY; socket_set_tos(STDIN_FILENO, IP_TOS);
if (setsockopt(STDIN_FILENO, IPPROTO_IP, IP_TOS,
(void *)&tos, sizeof(int)) < 0)
syslog(LOG_WARNING, "setsockopt (IP_TOS): %m");
}
#endif #endif
data_source->sa_family = ctrl_addr->sa_family; data_source->sa_family = ctrl_addr->sa_family;
socket_set_port (data_source, socket_set_port (data_source,
@@ -1111,10 +1106,14 @@ do_store(char *name, char *mode, int unique)
if(guest && filename_check(name)) if(guest && filename_check(name))
return; return;
if (unique && stat(name, &st) == 0 && if (unique) {
(name = gunique(name)) == NULL) { char *uname;
LOGCMD(*mode == 'w' ? "put" : "append", name); if (stat(name, &st) == 0) {
if ((uname = gunique(name)) == NULL)
return; return;
name = uname;
}
LOGCMD(*mode == 'w' ? "put" : "append", name);
} }
if (restart_point) if (restart_point)
@@ -1272,13 +1271,9 @@ dataconn(const char *name, off_t size, const char *mode)
} }
close(pdata); close(pdata);
pdata = s; pdata = s;
#if defined(IP_TOS) && defined(HAVE_SETSOCKOPT) #if defined(IPTOS_THROUGHPUT)
{ if (from->sa_family == AF_INET)
int tos = IPTOS_THROUGHPUT; socket_set_tos(s, IPTOS_THROUGHPUT);
setsockopt(s, IPPROTO_IP, IP_TOS, (void *)&tos,
sizeof(tos));
}
#endif #endif
reply(150, "Opening %s mode data connection for '%s'%s.", reply(150, "Opening %s mode data connection for '%s'%s.",
type == TYPE_A ? "ASCII" : "BINARY", name, sizebuf); type == TYPE_A ? "ASCII" : "BINARY", name, sizebuf);
+17 -96
View File
@@ -33,122 +33,43 @@
#include "ftpd_locl.h" #include "ftpd_locl.h"
#include <gssapi/gssapi.h> #include <gssapi/gssapi.h>
#include <gssapi/gssapi_krb5.h>
#include <krb5.h>
/* XXX a bit too much of krb5 dependency here...
What is the correct way to do this?
*/
struct gss_krb5_data {
krb5_context context;
};
/* XXX sync with gssapi.c */ /* XXX sync with gssapi.c */
struct gss_data { struct gssapi_data {
gss_ctx_id_t context_hdl; gss_ctx_id_t context_hdl;
char *client_name; gss_name_t client_name;
gss_cred_id_t delegated_cred_handle; gss_cred_id_t delegated_cred_handle;
void *mech_data; void *mech_data;
}; };
int gss_userok(void*, char*); /* to keep gcc happy */ int gssapi_userok(void*, char*); /* to keep gcc happy */
int gss_session(void*, char*); /* to keep gcc happy */ int gssapi_session(void*, char*); /* to keep gcc happy */
int int
gss_userok(void *app_data, char *username) gssapi_userok(void *app_data, char *username)
{ {
struct gss_data *data = app_data; struct gssapi_data *data = app_data;
krb5_error_code ret;
krb5_principal client;
struct gss_krb5_data *kdata;
kdata = calloc(1, sizeof(struct gss_krb5_data)); /* Yes, this logic really is inverted. */
if (kdata == NULL) return !gss_userok(data->client_name, username);
return 1;
data->mech_data = kdata;
ret = krb5_init_context(&(kdata->context));
if (ret) {
free(kdata);
return 1;
}
ret = krb5_parse_name(kdata->context, data->client_name, &client);
if(ret) {
krb5_free_context(kdata->context);
free(kdata);
return 1;
}
ret = krb5_kuserok(kdata->context, client, username);
if (!ret) {
krb5_free_principal(kdata->context, client);
krb5_free_context(kdata->context);
free(kdata);
return 1;
}
ret = 0;
krb5_free_principal(kdata->context, client);
return ret;
} }
int int
gss_session(void *app_data, char *username) gssapi_session(void *app_data, char *username)
{ {
struct gss_data *data = app_data; struct gssapi_data *data = app_data;
krb5_error_code ret; OM_uint32 major, minor;
OM_uint32 minor_status; int ret = 0;
struct gss_krb5_data *kdata;
ret = 0;
kdata = (struct gss_krb5_data *)(data->mech_data);
/* more of krb-depend stuff :-( */
/* gss_add_cred() ? */
if (data->delegated_cred_handle != GSS_C_NO_CREDENTIAL) { if (data->delegated_cred_handle != GSS_C_NO_CREDENTIAL) {
krb5_ccache ccache = NULL; major = gss_store_cred(&minor, data->delegated_cred_handle,
const char* ticketfile; GSS_C_INITIATE, GSS_C_NO_OID,
struct passwd *kpw; 1, 1, NULL, NULL);
if (GSS_ERROR(major))
ret = krb5_cc_new_unique(kdata->context, NULL, NULL, &ccache);
if (ret)
goto fail;
ticketfile = krb5_cc_get_name(kdata->context, ccache);
ret = gss_krb5_copy_ccache(&minor_status,
data->delegated_cred_handle,
ccache);
if (ret) {
ret = 0;
goto fail;
}
do_destroy_tickets = 1;
kpw = getpwnam(username);
if (kpw == NULL) {
unlink(ticketfile);
ret = 1; ret = 1;
goto fail;
}
chown (ticketfile, kpw->pw_uid, kpw->pw_gid);
if (asprintf(&k5ccname, "FILE:%s", ticketfile) != -1) {
esetenv ("KRB5CCNAME", k5ccname, 1);
}
afslog(NULL, 1); afslog(NULL, 1);
fail:
if (ccache)
krb5_cc_close(kdata->context, ccache);
} }
gss_release_cred(&minor_status, &data->delegated_cred_handle); gss_release_cred(&minor, &data->delegated_cred_handle);
krb5_free_context(kdata->context);
free(kdata);
return ret; return ret;
} }
+19 -2
View File
@@ -64,6 +64,7 @@ RCSID("$Id$");
#include <roken.h> #include <roken.h>
#include "extern.h" #include "extern.h"
#ifndef HAVE_UTMPX_H
#ifndef WTMP_FILE #ifndef WTMP_FILE
#ifdef _PATH_WTMP #ifdef _PATH_WTMP
#define WTMP_FILE _PATH_WTMP #define WTMP_FILE _PATH_WTMP
@@ -71,6 +72,7 @@ RCSID("$Id$");
#define WTMP_FILE "/var/adm/wtmp" #define WTMP_FILE "/var/adm/wtmp"
#endif #endif
#endif #endif
#endif
#ifdef HAVE_ASL_H #ifdef HAVE_ASL_H
@@ -109,11 +111,17 @@ ftpd_logwtmp_wtmp(char *line, char *name, char *host)
#ifdef WTMPX_FILE #ifdef WTMPX_FILE
static int fdx; static int fdx;
#endif #endif
#ifdef HAVE_UTMP_H
struct utmp ut; struct utmp ut;
#ifdef WTMPX_FILE #endif
#if defined(WTMPX_FILE) || defined(HAVE_UTMPX_H)
struct utmpx utx; struct utmpx utx;
#endif #endif
#ifdef HAVE_UTMPX_H
memset(&utx, 0, sizeof(struct utmpx));
#endif
#ifdef HAVE_UTMP_H
memset(&ut, 0, sizeof(struct utmp)); memset(&ut, 0, sizeof(struct utmp));
#ifdef HAVE_STRUCT_UTMP_UT_TYPE #ifdef HAVE_STRUCT_UTMP_UT_TYPE
if(name[0]) if(name[0])
@@ -130,8 +138,9 @@ ftpd_logwtmp_wtmp(char *line, char *name, char *host)
strncpy(ut.ut_host, host, sizeof(ut.ut_host)); strncpy(ut.ut_host, host, sizeof(ut.ut_host));
#endif #endif
ut.ut_time = time(NULL); ut.ut_time = time(NULL);
#endif
#ifdef WTMPX_FILE #if defined(WTMPX_FILE) || defined(HAVE_UTMPX_H)
strncpy(utx.ut_line, line, sizeof(utx.ut_line)); strncpy(utx.ut_line, line, sizeof(utx.ut_line));
strncpy(utx.ut_user, name, sizeof(utx.ut_user)); strncpy(utx.ut_user, name, sizeof(utx.ut_user));
strncpy(utx.ut_host, host, sizeof(utx.ut_host)); strncpy(utx.ut_host, host, sizeof(utx.ut_host));
@@ -154,15 +163,23 @@ ftpd_logwtmp_wtmp(char *line, char *name, char *host)
utx.ut_type = DEAD_PROCESS; utx.ut_type = DEAD_PROCESS;
#endif #endif
#ifdef HAVE_UTMPX_H
pututxline(&utx);
#endif
if(!init){ if(!init){
#ifdef WTMP_FILE
fd = open(WTMP_FILE, O_WRONLY|O_APPEND, 0); fd = open(WTMP_FILE, O_WRONLY|O_APPEND, 0);
#endif
#ifdef WTMPX_FILE #ifdef WTMPX_FILE
fdx = open(WTMPX_FILE, O_WRONLY|O_APPEND, 0); fdx = open(WTMPX_FILE, O_WRONLY|O_APPEND, 0);
#endif #endif
init = 1; init = 1;
} }
if(fd >= 0) { if(fd >= 0) {
#ifdef WTMP_FILE
write(fd, &ut, sizeof(struct utmp)); /* XXX */ write(fd, &ut, sizeof(struct utmp)); /* XXX */
#endif
#ifdef WTMPX_FILE #ifdef WTMPX_FILE
write(fdx, &utx, sizeof(struct utmpx)); write(fdx, &utx, sizeof(struct utmpx));
#endif #endif
+2 -1
View File
@@ -8,5 +8,6 @@ gssmask_SOURCES = gssmask.c common.c common.h protocol.h
gssmaestro_SOURCES = gssmaestro.c common.c common.h protocol.h gssmaestro_SOURCES = gssmaestro.c common.c common.h protocol.h
LDADD = $(top_builddir)/lib/gssapi/libgssapi.la $(LIB_roken) LDADD = $(top_builddir)/lib/gssapi/libgssapi.la $(LIB_roken) $(top_builddir)/lib/krb5/libkrb5.la
EXTRA_DIST = NTMakefile
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\gssmask
!include ../../windows/NTMakefile.w32
+1 -20
View File
@@ -427,7 +427,6 @@ HandleOP(AcceptContext)
gss_ctx_id_t ctx; gss_ctx_id_t ctx;
gss_cred_id_t deleg_cred = GSS_C_NO_CREDENTIAL; gss_cred_id_t deleg_cred = GSS_C_NO_CREDENTIAL;
gss_buffer_desc input_token, output_token; gss_buffer_desc input_token, output_token;
gss_buffer_t input_token_ptr = GSS_C_NO_BUFFER;
ret32(c, hContext); ret32(c, hContext);
ret32(c, flags); ret32(c, flags);
@@ -440,7 +439,6 @@ HandleOP(AcceptContext)
if (in_token.length) { if (in_token.length) {
input_token.length = in_token.length; input_token.length = in_token.length;
input_token.value = in_token.data; input_token.value = in_token.data;
input_token_ptr = &input_token;
} else { } else {
input_token.length = 0; input_token.length = 0;
input_token.value = NULL; input_token.value = NULL;
@@ -848,22 +846,12 @@ HandleOP(CallExtension)
errx(1, "CallExtension"); errx(1, "CallExtension");
} }
krb5_error_code KRB5_LIB_FUNCTION
_krb5_pk_enterprise_cert (
krb5_context /*context*/,
const char */*user_id*/,
krb5_const_realm /*realm*/,
krb5_principal */*principal*/);
static int static int
HandleOP(AcquirePKInitCreds) HandleOP(AcquirePKInitCreds)
{ {
krb5_error_code ret;
int32_t flags; int32_t flags;
krb5_data pfxdata; krb5_data pfxdata;
char fn[] = "FILE:/tmp/pkcs12-creds-XXXXXXX"; char fn[] = "FILE:/tmp/pkcs12-creds-XXXXXXX";
const char *default_realm = "H5L.ORG";
krb5_principal principal = NULL; krb5_principal principal = NULL;
int fd; int fd;
@@ -878,13 +866,6 @@ HandleOP(AcquirePKInitCreds)
krb5_data_free(&pfxdata); krb5_data_free(&pfxdata);
close(fd); close(fd);
/* get credentials */
ret = _krb5_pk_enterprise_cert(context, fn, default_realm, &principal);
if (ret)
krb5_err(context, 1, ret, "krb5_pk_enterprise_certs");
if (principal) if (principal)
krb5_free_principal(context, principal); krb5_free_principal(context, principal);
@@ -1252,7 +1233,7 @@ main(int argc, char **argv)
err(1, "error opening %s", lf); err(1, "error opening %s", lf);
} }
mini_inetd(htons(port)); mini_inetd(htons(port), NULL);
fprintf(logfile, "connected\n"); fprintf(logfile, "connected\n");
{ {
+1 -1
View File
@@ -17,4 +17,4 @@ LDADD = $(top_builddir)/lib/krb5/libkrb5.la \
$(top_builddir)/lib/asn1/libasn1.la \ $(top_builddir)/lib/asn1/libasn1.la \
$(LIB_roken) $(LIB_roken)
EXTRA_DIST = $(man_MANS) EXTRA_DIST = NTMakefile $(man_MANS)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\kf
!include ../../windows/NTMakefile.w32
+9 -9
View File
@@ -41,20 +41,20 @@
.Nm .Nm
.Oo .Oo
.Fl p Ar port | .Fl p Ar port |
.Fl -port Ns = Ns Ar port .Fl Fl port Ns = Ns Ar port
.Oc .Oc
.Oo .Oo
.Fl l Ar login | .Fl l Ar login |
.Fl -login Ns = Ns Ar login .Fl Fl login Ns = Ns Ar login
.Oc .Oc
.Oo .Oo
.Fl c Ar ccache | .Fl c Ar ccache |
.Fl -ccache Ns = Ns Ar ccache .Fl Fl ccache Ns = Ns Ar ccache
.Oc .Oc
.Op Fl F | -forwardable .Op Fl F | -forwardable
.Op Fl G | -no-forwardable .Op Fl G | -no-forwardable
.Op Fl h | -help .Op Fl h | -help
.Op Fl -version .Op Fl Fl version
.Ar host ... .Ar host ...
.Sh DESCRIPTION .Sh DESCRIPTION
The The
@@ -65,17 +65,17 @@ Options supported are:
.Bl -tag -width indent .Bl -tag -width indent
.It Xo .It Xo
.Fl p Ar port , .Fl p Ar port ,
.Fl -port Ns = Ns Ar port .Fl Fl port Ns = Ns Ar port
.Xc .Xc
port to connect to port to connect to
.It Xo .It Xo
.Fl l Ar login , .Fl l Ar login ,
.Fl -login Ns = Ns Ar login .Fl Fl login Ns = Ns Ar login
.Xc .Xc
remote login name remote login name
.It Xo .It Xo
.Fl c Ar ccache , .Fl c Ar ccache ,
.Fl -ccache Ns = Ns Ar ccache .Fl Fl ccache Ns = Ns Ar ccache
.Xc .Xc
remote cred cache remote cred cache
.It Fl F , -forwardable .It Fl F , -forwardable
@@ -83,7 +83,7 @@ forward forwardable credentials
.It Fl G , -no-forwardable .It Fl G , -no-forwardable
do not forward forwardable credentials do not forward forwardable credentials
.It Fl h , -help .It Fl h , -help
.It Fl -version .It Fl Fl version
.El .El
.Pp .Pp
.Nm .Nm
@@ -94,7 +94,7 @@ In order for
.Nm .Nm
to work you will need to acquire your initial ticket with forwardable to work you will need to acquire your initial ticket with forwardable
flag, i.e. flag, i.e.
.Nm kinit Fl -forwardable . .Nm kinit Fl Fl forwardable .
.Pp .Pp
.Nm telnet .Nm telnet
is able to forward tickets by itself. is able to forward tickets by itself.
+11
View File
@@ -146,6 +146,7 @@ proto (int sock, const char *hostname, const char *service,
auth_context, auth_context,
&sock); &sock);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn (context, status, "krb5_auth_con_setaddr"); krb5_warn (context, status, "krb5_auth_con_setaddr");
return 1; return 1;
} }
@@ -156,6 +157,7 @@ proto (int sock, const char *hostname, const char *service,
KRB5_NT_SRV_HST, KRB5_NT_SRV_HST,
&server); &server);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn (context, status, "krb5_sname_to_principal"); krb5_warn (context, status, "krb5_sname_to_principal");
return 1; return 1;
} }
@@ -174,6 +176,7 @@ proto (int sock, const char *hostname, const char *service,
NULL, NULL,
NULL); NULL);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn(context, status, "krb5_sendauth"); krb5_warn(context, status, "krb5_sendauth");
return 1; return 1;
} }
@@ -185,6 +188,7 @@ proto (int sock, const char *hostname, const char *service,
data_send.length = strlen(remote_name) + 1; data_send.length = strlen(remote_name) + 1;
status = krb5_write_priv_message(context, auth_context, &sock, &data_send); status = krb5_write_priv_message(context, auth_context, &sock, &data_send);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn (context, status, "krb5_write_message"); krb5_warn (context, status, "krb5_write_message");
return 1; return 1;
} }
@@ -192,6 +196,7 @@ proto (int sock, const char *hostname, const char *service,
data_send.length = strlen(ccache_name)+1; data_send.length = strlen(ccache_name)+1;
status = krb5_write_priv_message(context, auth_context, &sock, &data_send); status = krb5_write_priv_message(context, auth_context, &sock, &data_send);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn (context, status, "krb5_write_message"); krb5_warn (context, status, "krb5_write_message");
return 1; return 1;
} }
@@ -200,12 +205,14 @@ proto (int sock, const char *hostname, const char *service,
status = krb5_cc_default (context, &ccache); status = krb5_cc_default (context, &ccache);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn (context, status, "krb5_cc_default"); krb5_warn (context, status, "krb5_cc_default");
return 1; return 1;
} }
status = krb5_cc_get_principal (context, ccache, &principal); status = krb5_cc_get_principal (context, ccache, &principal);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn (context, status, "krb5_cc_get_principal"); krb5_warn (context, status, "krb5_cc_get_principal");
return 1; return 1;
} }
@@ -220,6 +227,7 @@ proto (int sock, const char *hostname, const char *service,
NULL); NULL);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn (context, status, "krb5_make_principal"); krb5_warn (context, status, "krb5_make_principal");
return 1; return 1;
} }
@@ -238,6 +246,7 @@ proto (int sock, const char *hostname, const char *service,
&creds, &creds,
&data); &data);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn (context, status, "krb5_get_forwarded_creds"); krb5_warn (context, status, "krb5_get_forwarded_creds");
return 1; return 1;
} }
@@ -245,6 +254,7 @@ proto (int sock, const char *hostname, const char *service,
status = krb5_write_priv_message(context, auth_context, &sock, &data); status = krb5_write_priv_message(context, auth_context, &sock, &data);
if (status) { if (status) {
krb5_auth_con_free(context, auth_context);
krb5_warn (context, status, "krb5_mk_priv"); krb5_warn (context, status, "krb5_mk_priv");
return 1; return 1;
} }
@@ -252,6 +262,7 @@ proto (int sock, const char *hostname, const char *service,
krb5_data_free (&data); krb5_data_free (&data);
status = krb5_read_priv_message(context, auth_context, &sock, &data); status = krb5_read_priv_message(context, auth_context, &sock, &data);
krb5_auth_con_free(context, auth_context);
if (status) { if (status) {
krb5_warn (context, status, "krb5_mk_priv"); krb5_warn (context, status, "krb5_mk_priv");
return 1; return 1;
+5 -5
View File
@@ -41,15 +41,15 @@
.Nm .Nm
.Oo .Oo
.Fl p Ar port | .Fl p Ar port |
.Fl -port Ns = Ns Ar port .Fl Fl port Ns = Ns Ar port
.Oc .Oc
.Op Fl i | -inetd .Op Fl i | -inetd
.Oo .Oo
.Fl R Ar regpag | .Fl R Ar regpag |
.Fl -regpag Ns = Ns Ar regpag .Fl Fl regpag Ns = Ns Ar regpag
.Oc .Oc
.Op Fl h | -help .Op Fl h | -help
.Op Fl -version .Op Fl Fl version
.Sh DESCRIPTION .Sh DESCRIPTION
This is the daemon for This is the daemon for
.Xr kf 1 . .Xr kf 1 .
@@ -57,14 +57,14 @@ Supported options:
.Bl -tag -width indent .Bl -tag -width indent
.It Xo .It Xo
.Fl p Ar port , .Fl p Ar port ,
.Fl -port Ns = Ns Ar port .Fl Fl port Ns = Ns Ar port
.Xc .Xc
port to listen to port to listen to
.It Fl i , -inetd .It Fl i , -inetd
not started from inetd not started from inetd
.It Xo .It Xo
.Fl R Ar regpag , .Fl R Ar regpag ,
.Fl -regpag= Ns Ar regpag .Fl Fl regpag= Ns Ar regpag
.Xc .Xc
path to regpag binary path to regpag binary
.El .El
+5 -2
View File
@@ -274,14 +274,17 @@ proto (int sock, const char *service)
data.data = ret_string; data.data = ret_string;
data.length = strlen(ret_string) + 1; data.length = strlen(ret_string) + 1;
return krb5_write_priv_message(context, auth_context, &sock, &data); status = krb5_write_priv_message(context, auth_context, &sock, &data);
krb5_auth_con_free(context, auth_context);
return status;
} }
static int static int
doit (int port, const char *service) doit (int port, const char *service)
{ {
if (do_inetd) if (do_inetd)
mini_inetd(port); mini_inetd(port, NULL);
return proto (STDIN_FILENO, service); return proto (STDIN_FILENO, service);
} }
+1 -1
View File
@@ -46,7 +46,7 @@ kxd_SOURCES = \
EXTRA_kxd_SOURCES = writeauth.c EXTRA_kxd_SOURCES = writeauth.c
EXTRA_DIST = rxterm.in rxtelnet.in tenletxr.in $(man_MANS) EXTRA_DIST = NTMakefile rxterm.in rxtelnet.in tenletxr.in $(man_MANS)
man_MANS = kx.1 rxtelnet.1 rxterm.1 tenletxr.1 kxd.8 man_MANS = kx.1 rxtelnet.1 rxterm.1 tenletxr.1 kxd.8
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\kx
!include ../../windows/NTMakefile.w32
+3 -3
View File
@@ -270,7 +270,7 @@ get_xsockets (int *number, struct x_socket **sockets, int tcp_socket)
tmp = try_socket (&s[n], dpy, *path); tmp = try_socket (&s[n], dpy, *path);
if (tmp == -1) { if (tmp == -1) {
if (errno != ENOTDIR && errno != ENOENT) if (errno != ENOTDIR && errno != ENOENT)
return -1; err(1, "failed to open '%s'", *path);
} else if (tmp == 1) { } else if (tmp == 1) {
while(--n >= 0) { while(--n >= 0) {
close (s[n].fd); close (s[n].fd);
@@ -288,7 +288,7 @@ get_xsockets (int *number, struct x_socket **sockets, int tcp_socket)
tmp = try_pipe (&s[n], dpy, *path); tmp = try_pipe (&s[n], dpy, *path);
if (tmp == -1) { if (tmp == -1) {
if (errno != ENOTDIR && errno != ENOENT && errno != ENOSYS) if (errno != ENOTDIR && errno != ENOENT && errno != ENOSYS)
return -1; err(1, "failed to open '%s'", *path);
} else if (tmp == 1) { } else if (tmp == 1) {
while (--n >= 0) { while (--n >= 0) {
close (s[n].fd); close (s[n].fd);
@@ -306,7 +306,7 @@ get_xsockets (int *number, struct x_socket **sockets, int tcp_socket)
if (tcp_socket) { if (tcp_socket) {
tmp = try_tcp (&s[n], dpy); tmp = try_tcp (&s[n], dpy);
if (tmp == -1) if (tmp == -1)
return -1; err(1, "failed to open tcp stocket");
else if (tmp == 1) { else if (tmp == 1) {
while (--n >= 0) { while (--n >= 0) {
close (s[n].fd); close (s[n].fd);
+33 -8
View File
@@ -51,6 +51,33 @@ typedef struct krb5_kx_context krb5_kx_context;
#define K5DATA(kc) ((krb5_kx_context*)kc->data) #define K5DATA(kc) ((krb5_kx_context*)kc->data)
#define CONTEXT(kc) (K5DATA(kc)->context) #define CONTEXT(kc) (K5DATA(kc)->context)
/*
*
*/
static void
ksyslog(krb5_context context, krb5_error_code ret, const char *fmt, ...)
__attribute__((__format__(__printf__, 3, 0)));
static void
ksyslog(krb5_context context, krb5_error_code ret, const char *fmt, ...)
{
const char *msg;
char *str = NULL;
va_list va;
msg = krb5_get_error_message(context, ret);
va_start(va, fmt);
vasprintf(&str, fmt, va);
va_end(va);
syslog(LOG_ERR, "%s: %s", str, msg);
krb5_free_error_message(context, msg);
free(str);
}
/* /*
* Destroy the krb5 context in `c'. * Destroy the krb5 context in `c'.
*/ */
@@ -378,8 +405,7 @@ recv_v5_auth (kx_context *kc, int sock, u_char *buf)
ret = krb5_sock_to_principal (CONTEXT(kc), sock, "host", ret = krb5_sock_to_principal (CONTEXT(kc), sock, "host",
KRB5_NT_SRV_HST, &server); KRB5_NT_SRV_HST, &server);
if (ret) { if (ret) {
syslog (LOG_ERR, "krb5_sock_to_principal: %s", ksyslog (CONTEXT(kc), ret, "krb5_sock_to_principal");
krb5_get_err_text (CONTEXT(kc), ret));
exit (1); exit (1);
} }
@@ -393,22 +419,19 @@ recv_v5_auth (kx_context *kc, int sock, u_char *buf)
&ticket); &ticket);
krb5_free_principal (CONTEXT(kc), server); krb5_free_principal (CONTEXT(kc), server);
if (ret) { if (ret) {
syslog (LOG_ERR, "krb5_sock_to_principal: %s", ksyslog (CONTEXT(kc), ret, "krb5_recvauth");
krb5_get_err_text (CONTEXT(kc), ret));
exit (1); exit (1);
} }
ret = krb5_auth_con_getkey (CONTEXT(kc), auth_context, &K5DATA(kc)->keyblock); ret = krb5_auth_con_getkey (CONTEXT(kc), auth_context, &K5DATA(kc)->keyblock);
if (ret) { if (ret) {
syslog (LOG_ERR, "krb5_auth_con_getkey: %s", ksyslog (CONTEXT(kc), ret, "krb5_auth_con_getkey");
krb5_get_err_text (CONTEXT(kc), ret));
exit (1); exit (1);
} }
ret = krb5_crypto_init (CONTEXT(kc), K5DATA(kc)->keyblock, 0, &K5DATA(kc)->crypto); ret = krb5_crypto_init (CONTEXT(kc), K5DATA(kc)->keyblock, 0, &K5DATA(kc)->crypto);
if (ret) { if (ret) {
syslog (LOG_ERR, "krb5_crypto_init: %s", ksyslog (CONTEXT(kc), ret, "krb5_crypto_init");
krb5_get_err_text (CONTEXT(kc), ret));
exit (1); exit (1);
} }
@@ -416,6 +439,8 @@ recv_v5_auth (kx_context *kc, int sock, u_char *buf)
ticket->client = NULL; ticket->client = NULL;
krb5_free_ticket (CONTEXT(kc), ticket); krb5_free_ticket (CONTEXT(kc), ticket);
krb5_auth_con_free(CONTEXT(kc), auth_context);
return 0; return 0;
} }
+1 -2
View File
@@ -36,8 +36,7 @@
.Os KTH-KRB .Os KTH-KRB
.Sh NAME .Sh NAME
.Nm kx .Nm kx
.Nd .Nd securely forward X conections
securely forward X conections
.Sh SYNOPSIS .Sh SYNOPSIS
.Ar kx .Ar kx
.Op Fl l Ar username .Op Fl l Ar username
+4 -5
View File
@@ -428,7 +428,7 @@ doit_active (kx_context *kc)
tmp2 = get_xsockets (&nsockets, &sockets, kc->tcp_flag); tmp2 = get_xsockets (&nsockets, &sockets, kc->tcp_flag);
if (tmp2 < 0) if (tmp2 < 0)
return 1; errx(1, "Failed to open sockets");
display_num = tmp2; display_num = tmp2;
if (kc->tcp_flag) if (kc->tcp_flag)
snprintf (display, display_size, "localhost:%u", display_num); snprintf (display, display_size, "localhost:%u", display_num);
@@ -436,10 +436,9 @@ doit_active (kx_context *kc)
snprintf (display, display_size, ":%u", display_num); snprintf (display, display_size, ":%u", display_num);
error = create_and_write_cookie (xauthfile, xauthfile_size, error = create_and_write_cookie (xauthfile, xauthfile_size,
cookie, cookie_len); cookie, cookie_len);
if (error) { if (error)
warnx ("failed creating cookie file: %s", strerror(error)); errx(1, "failed creating cookie file: %s", strerror(error));
return 1;
}
status_output (kc->debug_flag); status_output (kc->debug_flag);
for (;;) { for (;;) {
fd_set fdset; fd_set fdset;
+1 -2
View File
@@ -36,8 +36,7 @@
.Os KTH-KRB .Os KTH-KRB
.Sh NAME .Sh NAME
.Nm kxd .Nm kxd
.Nd .Nd securely forward X conections
securely forward X conections
.Sh SYNOPSIS .Sh SYNOPSIS
.Ar kxd .Ar kxd
.Op Fl t .Op Fl t
+20 -8
View File
@@ -99,6 +99,7 @@ cleanup(int nsockets, struct x_socket *sockets)
free (sockets[i].pathname); free (sockets[i].pathname);
} }
} }
free(sockets);
} }
/* /*
@@ -170,11 +171,17 @@ recv_conn (int sock, kx_context *kc,
if (*p != INIT) if (*p != INIT)
fatal(kc, sock, "Bad message"); fatal(kc, sock, "Bad message");
p++; p++;
if ((p - msg) < sizeof(msg))
fatal(kc, sock, "user");
p += kx_get_int (p, &tmp32, 4, 0); p += kx_get_int (p, &tmp32, 4, 0);
len = min(sizeof(user), tmp32); if (tmp32 >= sizeof(user) - 1)
memcpy (user, p, len); fatal(kc, sock, "user name too long");
if ((p - msg) + tmp32 >= sizeof(msg))
fatal(kc, sock, "user too long");
memcpy (user, p, tmp32);
p += tmp32; p += tmp32;
user[len] = '\0'; user[tmp32] = '\0';
passwd = k_getpwnam (user); passwd = k_getpwnam (user);
if (passwd == NULL) if (passwd == NULL)
@@ -184,6 +191,9 @@ recv_conn (int sock, kx_context *kc,
fatal (kc, sock, "%s not allowed to login as %s", fatal (kc, sock, "%s not allowed to login as %s",
kc->user, user); kc->user, user);
if ((p - msg) >= sizeof(msg))
fatal(kc, sock, "user too long");
flags = *p++; flags = *p++;
if (flags & PASSIVE) { if (flags & PASSIVE) {
@@ -239,15 +249,17 @@ recv_conn (int sock, kx_context *kc,
umask(077); umask(077);
if (!(flags & PASSIVE)) { if (!(flags & PASSIVE)) {
p += kx_get_int (p, &tmp32, 4, 0); p += kx_get_int (p, &tmp32, 4, 0);
len = min(tmp32, display_size); if (tmp32 > display_size)
memcpy (display, p, len); fatal(kc, sock, "display too large");
display[len] = '\0'; if ((p - msg) + tmp32 + 8 >= sizeof(msg))
fatal(kc, sock, "user too long");
memcpy (display, p, tmp32);
display[tmp32] = '\0';
p += tmp32; p += tmp32;
p += kx_get_int (p, &tmp32, 4, 0); p += kx_get_int (p, &tmp32, 4, 0);
len = min(tmp32, xauthfile_size); len = min(tmp32, xauthfile_size);
memcpy (xauthfile, p, len); memcpy (xauthfile, p, len);
xauthfile[len] = '\0'; xauthfile[len] = '\0';
p += tmp32;
} }
#if defined(SO_KEEPALIVE) && defined(HAVE_SETSOCKOPT) #if defined(SO_KEEPALIVE) && defined(HAVE_SETSOCKOPT)
if (flags & KEEP_ALIVE) { if (flags & KEEP_ALIVE) {
@@ -760,7 +772,7 @@ main (int argc, char **argv)
} }
if (!inetd_flag) if (!inetd_flag)
mini_inetd (port); mini_inetd (port, NULL);
signal (SIGCHLD, childhandler); signal (SIGCHLD, childhandler);
return doit(STDIN_FILENO, tcp_flag); return doit(STDIN_FILENO, tcp_flag);
+1 -2
View File
@@ -36,8 +36,7 @@
.Os KTH_KRB .Os KTH_KRB
.Sh NAME .Sh NAME
.Nm rxtelnet .Nm rxtelnet
.Nd .Nd start a telnet and forward X-connections.
start a telnet and forward X-connections.
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm rxtelnet .Nm rxtelnet
.Op Fl l Ar username .Op Fl l Ar username
+1 -2
View File
@@ -36,8 +36,7 @@
.Os KTH_KRB .Os KTH_KRB
.Sh NAME .Sh NAME
.Nm rxterm .Nm rxterm
.Nd .Nd start a secure remote xterm
start a secure remote xterm
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm rxterm .Nm rxterm
.Op Fl l Ar username .Op Fl l Ar username
+1 -2
View File
@@ -36,8 +36,7 @@
.Os KTH_KRB .Os KTH_KRB
.Sh NAME .Sh NAME
.Nm tenletxr .Nm tenletxr
.Nd .Nd forward X-connections backwards.
forward X-connections backwards.
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm tenletxr .Nm tenletxr
.Op Fl l Ar username .Op Fl l Ar username
+5 -5
View File
@@ -12,7 +12,7 @@ login_SOURCES = \
login.c \ login.c \
login_access.c \ login_access.c \
login_locl.h \ login_locl.h \
login_protos.h \ login-protos.h \
loginpaths.h \ loginpaths.h \
limits_conf.c \ limits_conf.c \
osfc2.c \ osfc2.c \
@@ -32,9 +32,9 @@ LDADD = $(LIB_otp) \
$(LIB_security) \ $(LIB_security) \
$(DBLIB) $(DBLIB)
$(srcdir)/login_protos.h: $(srcdir)/login-protos.h:
cd $(srcdir); perl ../../cf/make-proto.pl -o login_protos.h -q -P comment $(login_SOURCES) || rm -f login_protos.h cd $(srcdir); perl ../../cf/make-proto.pl -o login-protos.h -q -P comment $(login_SOURCES) || rm -f login-protos.h
$(login_OBJECTS): $(srcdir)/login_protos.h $(login_OBJECTS): $(srcdir)/login-protos.h
EXTRA_DIST = $(man_MANS) EXTRA_DIST = NTMakefile $(man_MANS)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\login
!include ../../windows/NTMakefile.w32
+4 -2
View File
@@ -82,7 +82,7 @@ copy_env(void)
extend_env(*p); extend_env(*p);
} }
int void
login_read_env(const char *file) login_read_env(const char *file)
{ {
char **newenv; char **newenv;
@@ -93,11 +93,13 @@ login_read_env(const char *file)
i = read_environment(file, &newenv); i = read_environment(file, &newenv);
for (j = 0; j < i; j++) { for (j = 0; j < i; j++) {
p = strchr(newenv[j], '='); p = strchr(newenv[j], '=');
if (p == NULL)
errx(1, "%s: missing = in string %s",
file, newenv[j]);
*p++ = 0; *p++ = 0;
add_env(newenv[j], p); add_env(newenv[j], p);
*--p = '='; *--p = '=';
free(newenv[j]); free(newenv[j]);
} }
free(newenv); free(newenv);
return 0;
} }
+1 -2
View File
@@ -5,8 +5,7 @@
.Os HEIMDAL .Os HEIMDAL
.Sh NAME .Sh NAME
.Nm login .Nm login
.Nd .Nd authenticate a user and start new session
authenticate a user and start new session
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm .Nm
.Op Fl fp .Op Fl fp
+1 -2
View File
@@ -5,8 +5,7 @@
.Os HEIMDAL .Os HEIMDAL
.Sh NAME .Sh NAME
.Nm login.access .Nm login.access
.Nd .Nd login access control table
login access control table
.Sh DESCRIPTION .Sh DESCRIPTION
The The
.Nm login.access .Nm login.access
+1 -1
View File
@@ -150,6 +150,6 @@ struct spwd;
extern char **env; extern char **env;
extern int num_env; extern int num_env;
#include "login_protos.h" #include "login-protos.h"
#endif /* __LOGIN_LOCL_H__ */ #endif /* __LOGIN_LOCL_H__ */
+4 -5
View File
@@ -7,12 +7,11 @@ AM_CPPFLAGS += $(INCLUDE_hcrypto)
bin_PROGRAMS = otp otpprint bin_PROGRAMS = otp otpprint
bin_SUIDS = otp bin_SUIDS = otp
otp_SOURCES = otp.c otp_locl.h otp_SOURCES = otp.c otp_locl.h
otp_LDADD = $(LIB_hcrypto) $(LIB_roken) $(top_builddir)/lib/otp/libotp.la
otpprint_SOURCES = otpprint.c otp_locl.h otpprint_SOURCES = otpprint.c otp_locl.h
otpprint_LDADD = $(LIB_hcrypto) $(LIB_roken) $(top_builddir)/lib/otp/libotp.la
man_MANS = otp.1 otpprint.1 man_MANS = otp.1 otpprint.1
LDADD = \ EXTRA_DIST = NTMakefile $(man_MANS)
$(top_builddir)/lib/otp/libotp.la \
$(LIB_roken)
EXTRA_DIST = $(man_MANS)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\otp
!include ../../windows/NTMakefile.w32
+1 -2
View File
@@ -36,8 +36,7 @@
.Os KTH-KRB .Os KTH-KRB
.Sh NAME .Sh NAME
.Nm otp .Nm otp
.Nd .Nd manages one-time passwords
manages one-time passwords
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm otp .Nm otp
.Op Fl dhlor .Op Fl dhlor
+1 -2
View File
@@ -36,8 +36,7 @@
.Os KTH-KRB .Os KTH-KRB
.Sh NAME .Sh NAME
.Nm otpprint .Nm otpprint
.Nd .Nd print lists of one-time passwords
print lists of one-time passwords
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm otp .Nm otp
.Op Fl n Ar count .Op Fl n Ar count
+1 -1
View File
@@ -44,6 +44,6 @@ LDADD = \
man_MANS = popper.8 man_MANS = popper.8
EXTRA_DIST = pop3.rfc1081 pop3e.rfc1082 \ EXTRA_DIST = NTMakefile pop3.rfc1081 pop3e.rfc1082 \
popper.README.release README-FIRST \ popper.README.release README-FIRST \
$(man_MANS) $(man_MANS)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\popper
!include ../../windows/NTMakefile.w32
-3
View File
@@ -52,9 +52,6 @@ void pop_auth_set_error(const char *message);
#ifdef KRB5 #ifdef KRB5
extern struct auth_mech gssapi_mech; extern struct auth_mech gssapi_mech;
#endif #endif
#ifdef KRB4
extern struct auth_mech krb4_mech;
#endif
#endif /* __pop_auth_h__ */ #endif /* __pop_auth_h__ */
+7 -4
View File
@@ -103,6 +103,7 @@ doit_v5 (char *host, int port)
krb5_auth_context auth_context = NULL; krb5_auth_context auth_context = NULL;
krb5_principal server; krb5_principal server;
int s = get_socket (host, port); int s = get_socket (host, port);
const char *estr;
ret = krb5_init_context (&context); ret = krb5_init_context (&context);
if (ret) if (ret)
@@ -114,8 +115,9 @@ doit_v5 (char *host, int port)
KRB5_NT_SRV_HST, KRB5_NT_SRV_HST,
&server); &server);
if (ret) { if (ret) {
warnx ("krb5_sname_to_principal: %s", estr = krb5_get_error_message(context, ret);
krb5_get_err_text (context, ret)); warnx ("krb5_sname_to_principal: %s", estr);
krb5_free_error_message(context, estr);
return 1; return 1;
} }
ret = krb5_sendauth (context, ret = krb5_sendauth (context,
@@ -132,8 +134,9 @@ doit_v5 (char *host, int port)
NULL, NULL,
NULL); NULL);
if (ret) { if (ret) {
warnx ("krb5_sendauth: %s", estr = krb5_get_error_message(context, ret);
krb5_get_err_text (context, ret)); warnx ("krb5_sendauth: %s", estr);
krb5_free_error_message(context, estr);
return 1; return 1;
} }
loop (s); loop (s);
+8 -5
View File
@@ -57,6 +57,7 @@ krb5_authenticate (POP *p, int s, u_char *buf, struct sockaddr *addr)
krb5_auth_context auth_context = NULL; krb5_auth_context auth_context = NULL;
uint32_t len; uint32_t len;
krb5_ticket *ticket; krb5_ticket *ticket;
const char *estr;
char *server; char *server;
if (memcmp (buf, "\x00\x00\x00\x13", 4) != 0) if (memcmp (buf, "\x00\x00\x00\x13", 4) != 0)
@@ -78,16 +79,18 @@ krb5_authenticate (POP *p, int s, u_char *buf, struct sockaddr *addr)
NULL, NULL,
&ticket); &ticket);
if (ret) { if (ret) {
pop_log(p, POP_PRIORITY, "krb5_recvauth: %s", estr = krb5_get_error_message(p->context, ret);
krb5_get_err_text(p->context, ret)); pop_log(p, POP_PRIORITY, "krb5_recvauth: %s", estr);
krb5_free_error_message(p->context, estr);
return -1; return -1;
} }
ret = krb5_unparse_name(p->context, ticket->server, &server); ret = krb5_unparse_name(p->context, ticket->server, &server);
if(ret) { if(ret) {
pop_log(p, POP_PRIORITY, "krb5_unparse_name: %s", estr = krb5_get_error_message(p->context, ret);
krb5_get_err_text(p->context, ret)); pop_log(p, POP_PRIORITY, "krb5_unparse_name: %s", estr);
krb5_free_error_message(p->context, estr);
ret = -1; ret = -1;
goto out; goto out;
} }
@@ -301,7 +304,7 @@ pop_init(POP *p,int argcount,char **argmessage)
portnum = p->kerberosp ? portnum = p->kerberosp ?
pop_getportbyname(p, "kpop", "tcp", 1109) : pop_getportbyname(p, "kpop", "tcp", 1109) :
pop_getportbyname(p, "pop", "tcp", 110); pop_getportbyname(p, "pop", "tcp", 110);
mini_inetd (portnum); mini_inetd (portnum, NULL);
} }
/* Get the address and socket of the client to whom I am speaking */ /* Get the address and socket of the client to whom I am speaking */
+14 -10
View File
@@ -21,11 +21,13 @@ krb5_verify_password (POP *p)
krb5_error_code ret; krb5_error_code ret;
krb5_principal client, server; krb5_principal client, server;
krb5_creds creds; krb5_creds creds;
const char *estr;
ret = krb5_get_init_creds_opt_alloc (p->context, &get_options); ret = krb5_get_init_creds_opt_alloc (p->context, &get_options);
if (ret) { if (ret) {
pop_log(p, POP_PRIORITY, "krb5_get_init_creds_opt_alloc: %s", estr = krb5_get_error_message(p->context, ret);
krb5_get_err_text (p->context, ret)); pop_log(p, POP_PRIORITY, "krb5_get_init_creds_opt_alloc: %s", estr);
krb5_free_error_message(p->context, estr);
return 1; return 1;
} }
@@ -37,8 +39,10 @@ krb5_verify_password (POP *p)
ret = krb5_parse_name (p->context, p->user, &client); ret = krb5_parse_name (p->context, p->user, &client);
if (ret) { if (ret) {
pop_log(p, POP_PRIORITY, "krb5_parse_name: %s", krb5_get_init_creds_opt_free(p->context, get_options);
krb5_get_err_text (p->context, ret)); estr = krb5_get_error_message(p->context, ret);
pop_log(p, POP_PRIORITY, "krb5_parse_name: %s", estr);
krb5_free_error_message(p->context, estr);
return 1; return 1;
} }
@@ -53,9 +57,9 @@ krb5_verify_password (POP *p)
get_options); get_options);
krb5_get_init_creds_opt_free(p->context, get_options); krb5_get_init_creds_opt_free(p->context, get_options);
if (ret) { if (ret) {
pop_log(p, POP_PRIORITY, estr = krb5_get_error_message(p->context, ret);
"krb5_get_init_creds_password: %s", pop_log(p, POP_PRIORITY, "krb5_get_init_creds_password: %s", estr);
krb5_get_err_text (p->context, ret)); krb5_free_error_message(p->context, estr);
return 1; return 1;
} }
@@ -65,9 +69,9 @@ krb5_verify_password (POP *p)
KRB5_NT_SRV_HST, KRB5_NT_SRV_HST,
&server); &server);
if (ret) { if (ret) {
pop_log(p, POP_PRIORITY, estr = krb5_get_error_message(p->context, ret);
"krb5_get_init_creds_password: %s", pop_log(p, POP_PRIORITY, "krb5_get_init_creds_password: %s", estr);
krb5_get_err_text (p->context, ret)); krb5_free_error_message(p->context, estr);
return 1; return 1;
} }
+3 -4
View File
@@ -36,8 +36,7 @@
.Os HEIMDAL .Os HEIMDAL
.Sh NAME .Sh NAME
.Nm popper .Nm popper
.Nd .Nd POP3 server
POP3 server
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm .Nm
.Op Fl k .Op Fl k
@@ -47,7 +46,7 @@ POP3 server
.Op Fl d .Op Fl d
.Op Fl i .Op Fl i
.Op Fl p Ar port .Op Fl p Ar port
.Op Fl -address-log= Ns Pa file .Op Fl Fl address-log= Ns Pa file
.Sh DESCRIPTION .Sh DESCRIPTION
.Nm .Nm
serves mail via the Post Office Protocol. Supported options include: serves mail via the Post Office Protocol. Supported options include:
@@ -60,7 +59,7 @@ which authentication mode is acceptable,
enables SASL (RFC2222), and enables SASL (RFC2222), and
.Ar otp .Ar otp
enables OTP (RFC1938) authentication. Both disable plaintext passwords. enables OTP (RFC1938) authentication. Both disable plaintext passwords.
.It Fl -address-log= Ns Pa file .It Fl Fl address-log= Ns Pa file
Logs the addresses (along with a timestamp) of all clients to the Logs the addresses (along with a timestamp) of all clients to the
specified file. This can be used to implement POP-before-SMTP specified file. This can be used to implement POP-before-SMTP
authentication. authentication.
+1 -1
View File
@@ -18,7 +18,7 @@ man_MANS = push.8 pfrom.1
CLEANFILES = pfrom CLEANFILES = pfrom
EXTRA_DIST = pfrom.in $(man_MANS) EXTRA_DIST = NTMakefile pfrom.in $(man_MANS)
LDADD = $(LIB_krb5) \ LDADD = $(LIB_krb5) \
$(LIB_hcrypto) \ $(LIB_hcrypto) \
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\push
!include ../../windows/NTMakefile.w32
+5 -5
View File
@@ -39,13 +39,13 @@
.Nd "fetch a list of the current mail via POP" .Nd "fetch a list of the current mail via POP"
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm .Nm
.Op Fl 4 | Fl -krb4 .Op Fl 4 | Fl Fl krb4
.Op Fl 5 | Fl -krb5 .Op Fl 5 | Fl Fl krb5
.Op Fl v | Fl -verbose .Op Fl v | Fl Fl verbose
.Op Fl c | -count .Op Fl c | -count
.Op Fl -header .Op Fl Fl header
.Oo Fl p Ar port-spec \*(Ba Xo .Oo Fl p Ar port-spec \*(Ba Xo
.Fl -port= Ns Ar port-spec .Fl Fl port= Ns Ar port-spec
.Xc .Xc
.Oc .Oc
.Sh DESCRIPTION .Sh DESCRIPTION
+13 -13
View File
@@ -8,15 +8,15 @@
.Nd fetch mail via POP .Nd fetch mail via POP
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm .Nm
.Op Fl 5 | Fl -krb5 .Op Fl 5 | Fl Fl krb5
.Op Fl v | Fl -verbose .Op Fl v | Fl Fl verbose
.Op Fl f | Fl -fork .Op Fl f | Fl Fl fork
.Op Fl l | -leave .Op Fl l | -leave
.Op Fl -from .Op Fl Fl from
.Op Fl c | -count .Op Fl c | -count
.Op Fl -headers Ns = Ns Ar headers .Op Fl Fl headers Ns = Ns Ar headers
.Oo Fl p Ar port-spec \*(Ba Xo .Oo Fl p Ar port-spec \*(Ba Xo
.Fl -port Ns = Ns Ar port-spec .Fl Fl port Ns = Ns Ar port-spec
.Xc .Xc
.Oc .Oc
.Ar po-box .Ar po-box
@@ -51,35 +51,35 @@ Supported options:
.Bl -tag -width Ds .Bl -tag -width Ds
.It Xo .It Xo
.Fl 5 , .Fl 5 ,
.Fl -krb5 .Fl Fl krb5
.Xc .Xc
use Kerberos 5 (if compiled with support for Kerberos 5) use Kerberos 5 (if compiled with support for Kerberos 5)
.It Xo .It Xo
.Fl f , .Fl f ,
.Fl -fork .Fl Fl fork
.Xc .Xc
fork before starting to delete messages fork before starting to delete messages
.It Xo .It Xo
.Fl l , .Fl l ,
.Fl -leave .Fl Fl leave
.Xc .Xc
don't delete fetched mail don't delete fetched mail
.It Xo .It Xo
.Fl -from .Fl Fl from
.Xc .Xc
behave like from. behave like from.
.It Xo .It Xo
.Fl c , .Fl c ,
.Fl -count .Fl Fl count
.Xc .Xc
first print how many messages and bytes there are. first print how many messages and bytes there are.
.It Xo .It Xo
.Fl -headers Ns = Ns Ar headers .Fl Fl headers Ns = Ns Ar headers
.Xc .Xc
a list of comma-separated headers that should get printed. a list of comma-separated headers that should get printed.
.It Xo .It Xo
.Fl p Ar port-spec , .Fl p Ar port-spec ,
.Fl -port Ns = Ns Ar port-spec .Fl Fl port Ns = Ns Ar port-spec
.Xc .Xc
use this port instead of the default use this port instead of the default
.Ql kpop .Ql kpop
+14 -4
View File
@@ -34,6 +34,13 @@
#include "push_locl.h" #include "push_locl.h"
RCSID("$Id$"); RCSID("$Id$");
#if defined(_AIX) && defined(STAT)
/*
* AIX defines STAT to 1 in sys/dir.h
*/
# undef STAT
#endif
#ifdef KRB5 #ifdef KRB5
static int use_v5 = -1; static int use_v5 = -1;
static krb5_context context; static krb5_context context;
@@ -517,6 +524,7 @@ do_v5 (const char *host,
krb5_error_code ret; krb5_error_code ret;
krb5_auth_context auth_context = NULL; krb5_auth_context auth_context = NULL;
krb5_principal server; krb5_principal server;
const char *estr;
int s; int s;
s = do_connect (host, port, 1); s = do_connect (host, port, 1);
@@ -529,8 +537,9 @@ do_v5 (const char *host,
KRB5_NT_SRV_HST, KRB5_NT_SRV_HST,
&server); &server);
if (ret) { if (ret) {
warnx ("krb5_sname_to_principal: %s", estr = krb5_get_error_message(context, ret);
krb5_get_err_text (context, ret)); warnx ("krb5_sname_to_principal: %s", estr);
krb5_free_error_message(context, estr);
return 1; return 1;
} }
@@ -549,8 +558,9 @@ do_v5 (const char *host,
NULL); NULL);
krb5_free_principal (context, server); krb5_free_principal (context, server);
if (ret) { if (ret) {
warnx ("krb5_sendauth: %s", estr = krb5_get_error_message(context, ret);
krb5_get_err_text (context, ret)); warnx ("krb5_sendauth: %s", estr);
krb5_free_error_message(context, estr);
return 1; return 1;
} }
return doit (s, host, user, filename, header_str, leavep, verbose, forkp); return doit (s, host, user, filename, header_str, leavep, verbose, forkp);
+1 -3
View File
@@ -2,14 +2,12 @@
include $(top_srcdir)/Makefile.am.common include $(top_srcdir)/Makefile.am.common
AM_CPPFLAGS += $(INCLUDE_krb4)
bin_PROGRAMS = rcp bin_PROGRAMS = rcp
rcp_SOURCES = rcp.c util.c rcp_locl.h extern.h rcp_SOURCES = rcp.c util.c rcp_locl.h extern.h
man_MANS = rcp.1 man_MANS = rcp.1
EXTRA_DIST = $(man_MANS) EXTRA_DIST = NTMakefile $(man_MANS)
LDADD = $(LIB_roken) LDADD = $(LIB_roken)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\rcp
!include ../../windows/NTMakefile.w32
+1 -2
View File
@@ -5,8 +5,7 @@
.Os HEIMDAL .Os HEIMDAL
.Sh NAME .Sh NAME
.Nm rcp .Nm rcp
.Nd .Nd copy file to and from remote machines
copy file to and from remote machines
.Sh SYNOPSIS .Sh SYNOPSIS
.Nm rcp .Nm rcp
.Op Fl 45FKpxz .Op Fl 45FKpxz
+3 -2
View File
@@ -318,7 +318,7 @@ syserr: run_err("%s: %s", name, strerror(errno));
#undef MODEMASK #undef MODEMASK
#define MODEMASK (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO) #define MODEMASK (S_ISUID|S_ISGID|S_ISVTX|S_IRWXU|S_IRWXG|S_IRWXO)
snprintf(buf, sizeof(buf), "C%04o %lu %s\n", snprintf(buf, sizeof(buf), "C%04o %lu %s\n",
stb.st_mode & MODEMASK, (unsigned int)(stb.st_mode & MODEMASK),
(unsigned long)stb.st_size, (unsigned long)stb.st_size,
last); last);
write(remout, buf, strlen(buf)); write(remout, buf, strlen(buf));
@@ -384,7 +384,8 @@ rsource(char *name, struct stat *statp)
} }
} }
snprintf(path, sizeof(path), snprintf(path, sizeof(path),
"D%04o %d %s\n", statp->st_mode & MODEMASK, 0, last); "D%04o %d %s\n",
(unsigned int)(statp->st_mode & MODEMASK), 0, last);
write(remout, path, strlen(path)); write(remout, path, strlen(path));
if (response() < 0) { if (response() < 0) {
closedir(dirp); closedir(dirp);
+2 -2
View File
@@ -2,7 +2,7 @@
include $(top_srcdir)/Makefile.am.common include $(top_srcdir)/Makefile.am.common
AM_CPPFLAGS += -I$(srcdir)/../login AM_CPPFLAGS += -I$(srcdir)/../login $(INCLUDE_hcrypto)
bin_PROGRAMS = rsh bin_PROGRAMS = rsh
@@ -25,4 +25,4 @@ LDADD = $(LIB_kafs) \
$(LIB_hcrypto) \ $(LIB_hcrypto) \
$(LIB_roken) $(LIB_roken)
EXTRA_DIST = $(man_MANS) EXTRA_DIST = NTMakefile $(man_MANS)
+35
View File
@@ -0,0 +1,35 @@
########################################################################
#
# Copyright (c) 2009, Secure Endpoints Inc.
# All rights reserved.
#
# Redistribution and use in source and binary forms, with or without
# modification, are permitted provided that the following conditions
# are met:
#
# - Redistributions of source code must retain the above copyright
# notice, this list of conditions and the following disclaimer.
#
# - Redistributions in binary form must reproduce the above copyright
# notice, this list of conditions and the following disclaimer in
# the documentation and/or other materials provided with the
# distribution.
#
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
# FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
# COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT,
# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING,
# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER
# CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
# LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
# ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
# POSSIBILITY OF SUCH DAMAGE.
#
RELDIR=appl\rsh
!include ../../windows/NTMakefile.w32

Some files were not shown because too many files have changed in this diff Show More