Simplify and fix kdcpreauth request_body callback
authorGreg Hudson <ghudson@mit.edu>
Mon, 14 Nov 2011 21:45:33 +0000 (21:45 +0000)
committerGreg Hudson <ghudson@mit.edu>
Mon, 14 Nov 2011 21:45:33 +0000 (21:45 +0000)
commitb87d9d3c376c2623ae9eb0cfc8da50985c7bb592
treeecd9df8a753a5d129b9f3cdb3a5bb8d36aaebc06
parent6a1f05eb0fb5451c887e73406fb8fcf5a3716d1c
Simplify and fix kdcpreauth request_body callback

Alter the contract for the kdcpreauth request_body callback so that it
returns an alias to the encoded body instead of a fresh copy.  At the
beginning of AS request processing, save a copy of the encoded request
body, or the encoded inner request body for FAST requests.  Previously
the request_body callback would re-encode the request structure, which
in some cases has been modified by the AS request code.

No kdcpreauth modules currently use the request_body callback, but
PKINIT will need to start using it in order to handle FAST requests
correctly.

ticket: 7017
target_version: 1.10
tags: pullup

git-svn-id: svn://anonsvn.mit.edu/krb5/trunk@25473 dc483132-0cff-0310-8789-dd5450dbe970
src/include/krb5/preauth_plugin.h
src/kdc/do_as_req.c
src/kdc/do_tgs_req.c
src/kdc/fast_util.c
src/kdc/kdc_preauth.c
src/kdc/kdc_util.h
src/plugins/preauth/cksum_body/cksum_body_main.c