summaryrefslogtreecommitdiffstats
path: root/src
Commit message (Collapse)AuthorAgeFilesLines
...
* Use GCC's packed-structure support to try to optimize unaligned loads andKen Raeburn2005-06-092-7/+135
| | | | | | | | | | | | | | | | | | | stores of values. (E.g., on x86, gcc will emit a word load or store regardless of alignment; on sparc or alpha, it will do aligned word accesses. The old C code does byte operations and arithmetic, always.) Tested in crypto code on x86, sparc, and amd64. * k5-platform.h (load_*): Change argument type to point to const. (K5_BE, K5_LE): New macros, defined based on architecture macros for certain big-endian and little-endian platforms, respectively. (PUT, GET) [__GNUC__]: New macros. Use GCC's packed-structure support to do unaligned loads and stores. (PUTSWAPPED, GETSWAPPED) [__GNUC__]: Similar, but invoke a SWAP<size> macro (not defined yet) to swap the bytes of the value. (store_*, load_*): Use these macros when using GCC, depending on endianness and availability of the SWAP<size> macros. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17232 dc483132-0cff-0310-8789-dd5450dbe970
* * f_tables.h: Include k5-platform.h.Ken Raeburn2005-06-092-11/+9
| | | | | | | (GET_HALF_BLOCK): Use load_32_be. (PUT_HALF_BLOCK): Use store_32_be. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17231 dc483132-0cff-0310-8789-dd5450dbe970
* don't always require support library when building with sun ccKen Raeburn2005-06-072-22/+33
| | | | | | | | | | | | | | | | | | | By default, a non-GCC configuration will not optimize during the build. The Solaris C compiler will always output functions defined as "inline", at least when not optimizing, even if they're never used. With recent changes on the trunk, k5_call_init_function will cause the support library to be required on Solaris by every program that includes k5-platform.h. This patch should fix that. * k5-platform.h (MAYBE_DEFINE_CALLINIT_FUNCTION) [DELAY_INITIALIZER]: New macro. If not __GNUC__, define k5_call_init_function in the expansion; otherwise, do nothing. (MAKE_INIT_FUNCTION) [DELAY_INITIALIZER]: Use it. (k5_call_init_function): Don't define function form at top level. ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17230 dc483132-0cff-0310-8789-dd5450dbe970
* * profile.swg (errcode_t* tcl8 argout typemap): Cast return value fromKen Raeburn2005-06-063-20/+27
| | | | | | | | error_message to char* to silence Sun compiler warning. (errcode_t tcl8 out typemap): Likewise. * profile_tcl.c: Regenerated. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17229 dc483132-0cff-0310-8789-dd5450dbe970
* Fix gcc preprocessor warnings due to last changeKen Raeburn2005-06-062-0/+15
| | | | | | | | * configure.in: Put #undef for the PACKAGE_* symbols at the start of autoconf.h. Use a leading comment to hide the #undef from the autoconf substitutions. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17228 dc483132-0cff-0310-8789-dd5450dbe970
* Some autoconf messages want to use the PACKAGE_* valuesKen Raeburn2005-06-012-1/+5
| | | | | | * configure.in: Identify package in AC_INIT call. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17227 dc483132-0cff-0310-8789-dd5450dbe970
* * trval.c (convert_nibble): Declare the argument with a typeKen Raeburn2005-06-012-1/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17226 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-thread.h (krb5int_pthread_loaded) [HAVE_PRAGMA_WEAK_REF]: Declare.Ken Raeburn2005-06-012-8/+10
| | | | | | | | | (K5_PTHREADS_LOADED) [HAVE_PRAGMA_WEAK_REF]: Use it. ticket: 3084 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17224 dc483132-0cff-0310-8789-dd5450dbe970
* Add run-time determination of whether thread support is available in theKen Raeburn2005-06-013-1/+68
| | | | | | | | | | | | | | | | | support library. Check lots of weak references, and call pthread_once a couple of times, to distinguish a broken stub from the real thing. * threads.c [HAVE_PRAGMA_WEAK_REF]: Declare pthread_{g,s}etspecific, pthread_key_{create,delete}, pthread_{create,join} as weak references. (krb5int_pthread_loaded, loaded_test_aux) [HAVE_PRAGMA_WEAK_REF]: New functions. (flag_pthread_loaded, loaded_test_once) [HAVE_PRAGMA_WEAK_REF]: New variables. * libkrb5support.exports: Add krb5int_pthread_loaded. ticket: 3084 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17223 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (test_getpw): Depend on, and link against, the support libraryKen Raeburn2005-06-012-2/+7
| | | | | | | ticket: 3084 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17222 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-int.h (encode_krb5_sam_challenge, encode_krb5_sam_key,Ken Raeburn2005-05-282-30/+8
| | | | | | | | | encode_krb5_enc_sam_response_enc, encode_krb5_sam_response, decode_krb5_sam_challenge, decode_krb5_enc_sam_response_enc, decode_krb5_sam_response, decode_krb5_predicted_sam_response, krb5_validate_times): Delete duplicate declarations. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17221 dc483132-0cff-0310-8789-dd5450dbe970
* Make "make check" able to link things again..Ken Raeburn2005-05-242-1/+7
| | | | | | | * keyblocks.c (krb5int_c_free_keyblock): Call krb5int_c_free_keyblock_contents instead of krb5_free_keyblock_contents. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17220 dc483132-0cff-0310-8789-dd5450dbe970
* Implement RFC 3961 PRFSam Hartman2005-05-2019-67/+531
| | | | | | | | | | | | | | Add krb5_c_prf, a function that implements the RFC 3961 PRF. As part of this change, the krb5_init_keyblock and krb5 free routines move to libk5crypto. Public stubs remain in libkrb5, but the actual implementation is an internal interface in libk5crypto ticket: new Tags: enhancement git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17219 dc483132-0cff-0310-8789-dd5450dbe970
* * fake-addrinfo.c (fai_add_hosts_by_name): Pass null pointer instead of telnetKen Raeburn2005-05-182-2/+36
| | | | | | as service name. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17218 dc483132-0cff-0310-8789-dd5450dbe970
* * configure.in: Merged content from include/configure.in. Don't configureKen Raeburn2005-05-139-367/+387
| | | | | | | | | | | | | | | include directory any more; build its makefiles and autoconf.h directly. Provide comment template when defining C macros. * include/configure.in: Deleted, content merged into ../configure.in. * include/Makefile.in (thisconfigdir, mydir): Updated for configure change. ($(srcdir)/krb5/autoconf.stmp): Use $(thisconfigdir) when locating configure.in and autom4te.cache. * include/kerberosIV/Makefile.in (thisconfigdir, mydir): Updated for configure change. * include/krb5/Makefile.in (thisconfigdir, mydir): Updated for configure change. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17217 dc483132-0cff-0310-8789-dd5450dbe970
* * aclocal.m4 (AC_KRB5_TCL_FIND_CONFIG): Provide comment template when definingKen Raeburn2005-05-132-13/+19
| | | | | | | | C macros. (KRB5_GETPEERNAME_ARGS): Likewise. (KRB5_GETSOCKNAME_ARGS): Likewise. Only define the macros in one place. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17216 dc483132-0cff-0310-8789-dd5450dbe970
* * err_txt.c: Don't include krb_err.c if DEPEND is definedKen Raeburn2005-05-132-1/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17215 dc483132-0cff-0310-8789-dd5450dbe970
* make dependKen Raeburn2005-05-131-2/+2
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17214 dc483132-0cff-0310-8789-dd5450dbe970
* * kerberos_v4.c: Include autoconf.h before testing KRB5_KRB4_COMPATKen Raeburn2005-05-132-0/+6
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17213 dc483132-0cff-0310-8789-dd5450dbe970
* build failure on sparc64-solarisKen Raeburn2005-05-042-1/+5
| | | | | | | | | | | | Mike Friedman at Berkeley reports (on kerberos@mit) that the build fails linking the aes-gen program if the tree is configured with CC=gcc and CFLAGS=-m64. * Makefile.in (aes-gen): Use CC_LINK. Reported by Mike Friedman. ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17212 dc483132-0cff-0310-8789-dd5450dbe970
* typo fixKen Raeburn2005-05-011-1/+1
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17211 dc483132-0cff-0310-8789-dd5450dbe970
* * ytypes.h: Include autoconf.h. Include sys/types.h only if it existsKen Raeburn2005-05-012-0/+8
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17210 dc483132-0cff-0310-8789-dd5450dbe970
* * shs.c (SHSTransform) [CONFIG_SMALL]: Roll loops for each roundKen Raeburn2005-05-012-0/+32
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17209 dc483132-0cff-0310-8789-dd5450dbe970
* * md5.c (Transform) [CONFIG_SMALL]: Roll loops for each roundKen Raeburn2005-05-012-0/+60
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17208 dc483132-0cff-0310-8789-dd5450dbe970
* * md4.c (Transform) [CONFIG_SMALL]: Roll loops for each roundKen Raeburn2005-05-012-0/+27
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17207 dc483132-0cff-0310-8789-dd5450dbe970
* * t_crc.c (main): Don't run timing test for nowKen Raeburn2005-05-012-1/+7
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17206 dc483132-0cff-0310-8789-dd5450dbe970
* updated dependencies for socket-utils.h changeKen Raeburn2005-04-288-21/+38
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17205 dc483132-0cff-0310-8789-dd5450dbe970
* * yarrow.c: Delete old macintosh support.Ken Raeburn2005-04-282-13/+21
| | | | | | | | | (yarrow_input_maybe_locking): Do the optional locking, and verify that the mutex is locked, before doing anything else. (yarrow_reseed_locked): Verify that the global mutex is locked before doing anything else. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17204 dc483132-0cff-0310-8789-dd5450dbe970
* * k5-int.h: Include fcntl.h only if HAVE_FCNTL_H is defined.Ken Raeburn2005-04-282-0/+10
| | | | | | | (krb5int_zap_data): For PalmOS without gcc, call memset but without the volatile cast. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17203 dc483132-0cff-0310-8789-dd5450dbe970
* * port-sockets.h: On PalmOS, include autoconf.h and netdb.h, and defineKen Raeburn2005-04-283-15/+23
| | | | | | | | | socklen_t. * socket-utils.h: Include k5-platform.h. (sa2sin, sa2sin6, ss2sa, ss2sin, ss2sin6): Always use inline function form, and use "inline" instead of "__inline__". git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17202 dc483132-0cff-0310-8789-dd5450dbe970
* the purpose of the krb5_get_credentials call is toJeffrey Altman2005-04-252-2/+19
| | | | | | | | | | | obtain a set of credentials for the caller. the krb5_cc_store_cred() call is to optimize performance for future calls. Ignore any errors, since the credentials are still valid even if we fail to store them in the cache. ticket: new git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17201 dc483132-0cff-0310-8789-dd5450dbe970
* Move WSAStartup/WSACleanup from DllMain to krb5_init_ctx/krb5_free_ctxJeffrey Altman2005-04-234-47/+34
| | | | | | | | | WSAStartup/WSACleanup cannot be called from DllMain without risking a deadlock when FreeLibrary(). ticket:2980 git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17200 dc483132-0cff-0310-8789-dd5450dbe970
* Stop generating per-directory sed scripts, and use perl to compute the patternsKen Raeburn2005-04-215-152/+126
| | | | | | | | | | | | | | on the fly instead. (Next step, someday, integrate this script and depfix.sed, so we only have to run one script.) * config/post.in (depend-dependencies): Use (and depend on) depfix2.pl instead of .depfix2.sed. (.depfix2.sed): Target deleted. (DEPTARGETS): Delete .depfix2.sed and .depfix2.tmp. * util/depgen.sed: Deleted. * util/depfix2.pl: New file. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17187 dc483132-0cff-0310-8789-dd5450dbe970
* * depgen.sed: Delete faulty check for $(srcdir), and redundant check for ↵Ken Raeburn2005-04-202-26/+6
| | | | | | $(SRCTOP) git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17186 dc483132-0cff-0310-8789-dd5450dbe970
* * lib/kadm5/configure.in, kadmin/configure.in: Don't invoke AC_CANONICAL_HOSTKen Raeburn2005-04-204-2/+10
| | | | | | explicitly, CONFIG_RULES already does it. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17185 dc483132-0cff-0310-8789-dd5450dbe970
* Compute reltopdir at autoconf time instead of at configure time. This has theKen Raeburn2005-04-202-24/+29
| | | | | | | | | | | | happy side effect of stopping autoreconf from creating directories named "$ac_config_fragdir" all over the source tree. * aclocal.m4 (fileexists, K5_TOPDIR): New macros. (V5_SET_TOPDIR): Don't test for AC_LOCALDIR any more. Use K5_TOPDIR computed at autoconf time, but still verify that the contents are what we expect. Don't use shell variables in the argument to AC_CONFIG_AUX_DIR. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17184 dc483132-0cff-0310-8789-dd5450dbe970
* Allow compile-time specification that small code space is desiredKen Raeburn2005-04-135-15/+61
| | | | | | | | | | | | | | | | | | | | | * d3_cbc.c (krb5int_des3_cbc_encrypt, krb5int_des3_cbc_decrypt): Don't declare left and right variables as registers. * f_cksum.c (mit_des_cbc_cksum): Likewise. * f_cbc.c (krb5int_des_cbc_encrypt, krb5int_des_cbc_decrypt): Likewise. (krb5int_des_cbc_encrypt): For full blocks, use GET_HALF_BLOCK to read and then xor, instead of processing each byte individually. (krb5int_des_do_encrypt_2, krb5int_des_do_decrypt_2) [CONFIG_SMALL]: New functions, wrapping large macros with the DES inner loops. * f_tables.h (DES_DO_ENCRYPT_1, DES_DO_DECRYPT_1): Renamed from non-_1 names. (krb5int_des_do_encrypt_2, krb5int_des_do_decrypt_2): Declare if CONFIG_SMALL is defined. (DES_DO_ENCRYPT, DES_DO_DECRYPT): Expand to _1 macros or _2 function calls depending on whether CONFIG_SMALL is defined. With CONFIG_SMALL defined, on x86/gcc/glibc, this drops about 5K (25%) of the code/table space. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17183 dc483132-0cff-0310-8789-dd5450dbe970
* * aesopt.h: On PalmOS, include FloatMgr.h to get endianness flag.Ken Raeburn2005-04-132-7/+14
| | | | | | | | | | | (ENC_UNROLL, DEC_UNROLL, ENC_ROUND, LAST_ENC_ROUND, DEC_ROUND, LAST_DEC_ROUND, KEY_SCHED): If CONFIG_SMALL is defined, set to NONE or NO_TABLES as appropriate. (Latter change drops about 40K -- over 85% -- from AES code/table size in shared libraries on x86/glibc/gcc.) git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17182 dc483132-0cff-0310-8789-dd5450dbe970
* * aes_s2k.c (krb5int_aes_string_to_key): Widen bytes of iteration count ↵Ken Raeburn2005-04-132-1/+8
| | | | | | before shifting git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17181 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (all-unix): Don't build aes-gen by default, leave it for 'make ↵Ken Raeburn2005-04-132-1/+6
| | | | | | check' git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17180 dc483132-0cff-0310-8789-dd5450dbe970
* update dependenciesKen Raeburn2005-04-131-16/+16
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17179 dc483132-0cff-0310-8789-dd5450dbe970
* * Makefile.in (BISONFLAGS): Drop -v.Ken Raeburn2005-04-133-23/+27
| | | | | | | | | ($(srcdir)/deltat.c): Change to source directory before rebuilding, so path to source tree doesn't get inserted. (deltat.c rebuilt) git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17178 dc483132-0cff-0310-8789-dd5450dbe970
* Delete definitions of unused macros NEED_SOCKETS and NEED_LOWLEVEL_IOKen Raeburn2005-04-1347-48/+67
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17177 dc483132-0cff-0310-8789-dd5450dbe970
* Work around Makefile quoting problemsTom Yu2005-04-076-5/+20
| | | | | | | ticket: 2992 tags: pullup git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17170 dc483132-0cff-0310-8789-dd5450dbe970
* * commands.c (shell): Change 0 to (char*)NULL in execl calls. Patch providedKen Raeburn2005-04-062-2/+7
| | | | | | | | | by Michael Calmer. ticket: 3000 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17166 dc483132-0cff-0310-8789-dd5450dbe970
* * krlogind.c (doit): Change 0 to (char*)NULL in execl* calls. Patch providedKen Raeburn2005-04-064-6/+13
| | | | | | | | | | | by Michael Calmer. * krshd.c (doit): Likewise. * login.c (main): Likewise. ticket: 3000 status: open git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17165 dc483132-0cff-0310-8789-dd5450dbe970
* update dependenciesKen Raeburn2005-04-061-1/+0
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17164 dc483132-0cff-0310-8789-dd5450dbe970
* fix MITKRB5-SA-2005-001 telnet client vulnTom Yu2005-03-292-9/+20
| | | | | | | | | | | | | | | * telnet.c (slc_add_reply, slc_end_reply): Fix buffer overflow vulnerability by checking lengths. (env_opt_add): Ensure buffer allocation is sufficiently large, accounting for expansion during IAC quoting. ticket: new tags: pullup version_reported: 1.4 target_version: 1.4.1 component: telnet git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17162 dc483132-0cff-0310-8789-dd5450dbe970
* Test new k5_getpwuid_r macroKen Raeburn2005-03-286-2/+70
| | | | | | | | | | | | * configure.in: Create makefile in misc. * Makefile.in (LOCAL_SUBDIRS): Add misc. * misc/test_getpw.c: New file. * misc/Makefile.in: New file, based on ../resolve/Makefile.in. (test_getpw): New target. (check): Build and run it. git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17161 dc483132-0cff-0310-8789-dd5450dbe970
* update dependenciesKen Raeburn2005-03-282-3/+5
| | | | git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@17160 dc483132-0cff-0310-8789-dd5450dbe970