summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* add_subscriptions: fix botched mergeGravatar Jeffrey Hutzelman2012-11-24
| | | | | | Fix indentation and remove an inappropriate comment in add_subscriptions(), both of which were the result of a botched merge a long time ago. The actual logic was merged correctly and so does not change.
* Reject checksum if krb5_crypto_init failsGravatar Jeffrey Hutzelman2012-11-24
| | | | | | | The result of Z_krb5_verify_cksum is supposed to be nonzero on success and 0 on failure. But if krb5_crypto_init() failed, we were returning the resulting error code, effectively accepting any checksum, when instead we should reject the checksum since we cannot verify it.
* ZCheckSrvAuthentication: fix auth context leakGravatar Jeffrey Hutzelman2012-11-24
| | | | | Fix a leak in which we fail to free a Kerberos authentication context in ZCheckSrvAuthentication if getting or setting the context flags fails.
* Ignore garbage when packet len > message lenGravatar Jeffrey Hutzelman2012-11-24
| | | | | | | | | | | | | | | | | | | | | | From -c shadow on 15-Nov-2011, discussing a problem where some notices received from other realms were causing clients to crash: So, the packet that crashed my client had extra garbage beyond what should have been the end of the packet. So z_multinotice was 0/61, but the packet was longer than 61. Which means the logic that should have treated this as an unfragmented notice (because partof == z_message_len) did not trigger. So a holelist gets created, with enough storage for partof, and then Z_AddNoticeToEntry is called to copy z_message_len (> partof) bytes into it. So, I don't know why your client, or the server, or something, is sending packets longer than the message length, but I don't think I actually want to just discard those, because then "legitimate" messages would vanish. Instead, if part + notice->z_message_len > partof, I just want to ignore the extra.
* Actually avoid ZReceiveNotice NULL pointer derefGravatar Darrell Kindred2012-11-24
| | | | | | | | | | | | | | | | | Bug report from dkindred in libzephyr affecting amd64_fc5: There's a bug in libzephyr (introduced in version zephyr-064) that is causing tzc to fail on amd64_fc5: In /afs/cs/misc/zephyr/src/zephyr-064/lib/ZRecvNot.c line 33, 'nextq' is tested without being initialized (see code below). I imagine the appropriate fix is to put that "if (!nextq)" test just *after* the "nextq = Z_GetFirstComplete();" line instead of just before. - Darrell
* Avoid null pointer dereference in ZReceiveNoticeGravatar Derrick Brashear2012-11-24
| | | | | | | Z_GetFirstComplete() can return NULL; in that case, we don't want to dereference the pointer it returns. Extracted from Andrew zephyr/064; authorship uncertain.
* server: avoid blocking in tkt_lookup()Gravatar Derrick Brashear2012-11-24
| | | | | | | | | | tkt_lookup() is supposed to quickly obtain a ticket for a foreign realm if we already have a usable one, and quickly fail otherwise. Sending a request to a KDC and waiting for a response, as krb5_get_credentials() may do, defeats the purpose of tkt_retrieve() retrying failed requests in the background. So, use krb5_cc_retrieve_cred() instead. Extracted from Andrew zephyr/063
* znol: watch foreign users in their own realmGravatar Derrick Brashear2012-11-24
| | | | | | | | | If we want to receive login/logout notices for a user in another realm, we need to subscribe to them in that realm. Extracted from Andrew zephyr/058, which reverts a change to client-side interrealm support that was inadvertently introduced when importing new code from Athena.
* zwrite: Replace outgoing default format with a small URLGravatar Geoffrey Thomas2012-11-24
| | | | | | We need the bytes, no modern client uses it, and it's inherently a security vulnerability. For those clients that do use it, provide a link to a page on the zephyr wiki that explains the issue.
* Initialize notice objectsGravatar Chaskiel Grundman2012-11-24
| | | | | memset new notice objects in subscr.c (really needed now since all ZFormat* routines require z_num_hdr_fields to be valid or 0.)
* Strip the authentication in realm_senditGravatar Chaskiel Grundman2012-07-16
| | | | | | | | realm_sendit is responsible for sending notices that do not have useful realm authentication, either because they are not authentic, or because of kerberos problems acquiring a ticket for the foreign zephyr realm. In either case, any authentication in the notice will not be usable to the foreign server, and ought to be stripped out.
* Mostly factor out Z_FormatRawHeaderGravatar Chaskiel Grundman2012-07-16
| | | | | | | Have Z_FormatRawHeader call Z_ZcodeFormatRawHeader to reduce duplication and error. Z_FormatRawHeader was previously adding headers 17 and 18 unconditionally, which was not proper for a server forwarding an unauth message.
* these files have weird copyright notices on themGravatar Karl Ramm2012-02-11
|
* put 3.0.999 in the debian changelog to... modulate confusionGravatar Karl Ramm2012-02-11
|
* Actually remove the #ifdef OLD_COMPAT and NEW_COMPAT codeGravatar Karl Ramm2012-02-11
| | | | To my knowledge, this hasn't been enabled by anyone in ages
* enable the cmu zctl punt commands when the rest of the code is enabledGravatar Karl Ramm2012-02-11
|
* Kill off another MAXPATHLENGravatar Karl Ramm2012-02-05
|
* autom4te.cache is _annoying_ to have in your release tarballGravatar Karl Ramm2012-01-30
|
* log old-style checksum mismatches tooGravatar Karl Ramm2012-01-25
|
* fix some formatting and whitespace bogonsGravatar Karl Ramm2012-01-25
|
* Try and log more on authentication failures.Gravatar Karl Ramm2012-01-25
|
* release 3.0.2Gravatar Karl Ramm2012-01-22
|
* note the release in debian/changelog, and track the tarball on a branchGravatar Karl Ramm2012-01-22
|
* release armatureGravatar Karl Ramm2011-12-01
|
* add git and devscripts to build-depsGravatar Karl Ramm2011-11-30
| | | | | devscript will mostly be required by the release mechanisms, but git will be required for figuring out a build-time version number
* fix pasteo, make git describe more verboseGravatar Karl Ramm2011-11-25
|
* New version propagation to replace keyword substitution, part 1Gravatar Karl Ramm2011-11-25
|
* realm_auth_sendit_nacked fixupsGravatar Chaskiel Grundman2011-11-18
| | | | | | | | | | In addition to the packet length problem discussed last night, the realm_auth_sendit_nacked refactor also had a cut-n-paste error. In the unfragmented case, it passed in partnotice.z_uid instead of newnotice.z_uid. In that branch of the if, partnotice is uninitialized... My (derrick's) servers are no longer constantly complaining (in new debug code) that realm_nack_cancel couldn't find the nack to dequeue, so I think I'm done with this problem.
* fix typo causing freebsd (non-native libiconv) build to failGravatar Karl Ramm2011-10-30
|
* Let's try a simpler autoconf idiom in the hopes of making lenny happyGravatar Karl Ramm2011-10-30
|
* fix variable reference; allow ss to be implicitly disabledGravatar Karl Ramm2011-10-30
|
* add --with-libiconv to configureGravatar Karl Ramm2011-10-30
|
* tweak configure/makefiles so we can build with or without ssGravatar Karl Ramm2011-10-29
|
* ifdef'd no-ss code (from Ken Raeburn)Gravatar Karl Ramm2011-10-29
|
* See if we can't tease an install-sh out of automakeGravatar Karl Ramm2011-10-23
| | | | So that the packaging will still work with the libtoolize on lenny
* It is not the 80s anymore, so we have a printf directive for pointersGravatar Karl Ramm2011-10-23
|
* make lintian hush upGravatar Karl Ramm2011-10-23
|
* Retool our use of configure such that we track it like everyone else doesGravatar Karl Ramm2011-10-23
| | | | | i.e. don't keep generated or foreign stuff in our source tree. As a side effect, this lets us use a libtool, etc. from this century
* Change check for libiconv_open to check for iconv_openGravatar Karl Ramm2011-10-18
| | | | | Does everything still work if configure checks for iconv_open rather than the mysterious libiconv_open? Tune into an autobuilder near you...
* This is 3.0.1Gravatar Karl Ramm2011-03-06
|
* Some getnameinfos (notably FreeBSD's) are pickier about the length.Gravatar Karl Ramm2011-02-21
| | | | Fixes #58
* _actually_ make the code work with heimdal.Gravatar Karl Ramm2011-02-21
|
* Fix typo in zwrite(1)Gravatar Karl Ramm2011-02-21
| | | | Fixes #72
* The zephyr-server-krb5 init script should be it's own thing.Gravatar Karl Ramm2011-02-21
| | | | So it can check for a keytab rather than a srvtab. Fixes #43.
* Use different flags for krb5_cc_retrieve_cred if not using MIT Kerberos.Gravatar Karl Ramm2011-02-21
| | | | | | | The fact that the Heimdal and MIT APIs are subtly different strikes again. I am honestly starting to wonder if they make it look this similar just to frustrate people; I only don't believe it because neither team seems like that sort of person. Fixes #74.
* It is still not the 80s anymore -- remove all caddr_tsGravatar Karl Ramm2011-02-02
|
* make -DZ_DEBUG workGravatar Karl Ramm2011-02-02
|
* Explicitly define ZNotice_Kind constants + actually define the promised stringsGravatar Karl Ramm2011-02-02
| | | | | | | | | Since these are constants used in the protocol be explicit about what values the C compiler is assigning them, and that they can't be arbitrarily rearranged. Also, since we were promising strings for describing them in zephyr.h actually define the array.
* ZOpenPort stashes the port number, no need to getsockname againGravatar Karl Ramm2011-02-02
|
* use system MINGravatar Karl Ramm2011-02-02
|