Adjust DES_cbc_cksum() so the returned value is the same as MIT's
mit_des_cbc_cksum(). The difference was first observed, then verified by looking at the MIT source.
This commit is contained in:
parent
cf56663fb7
commit
9ec1d35f29
6
CHANGES
6
CHANGES
@ -420,6 +420,12 @@ TODO: bug: pad x with leading zeros if necessary
|
|||||||
|
|
||||||
Changes between 0.9.7 and 0.9.7a [XX xxx 2003]
|
Changes between 0.9.7 and 0.9.7a [XX xxx 2003]
|
||||||
|
|
||||||
|
*) Adjust DES_cbc_cksum() so it returns the same value as the MIT
|
||||||
|
Kerberos function mit_des_cbc_cksum(). Before this change,
|
||||||
|
the value returned by DES_cbc_cksum() was like the one from
|
||||||
|
mit_des_cbc_cksum(), except the bytes were swapped.
|
||||||
|
[Kevin Greaney <Kevin.Greaney@hp.com> and Richard Levitte]
|
||||||
|
|
||||||
*) Allow an application to disable the automatic SSL chain building.
|
*) Allow an application to disable the automatic SSL chain building.
|
||||||
Before this a rather primitive chain build was always performed in
|
Before this a rather primitive chain build was always performed in
|
||||||
ssl3_output_cert_chain(): an application had no way to send the
|
ssl3_output_cert_chain(): an application had no way to send the
|
||||||
|
@ -93,5 +93,14 @@ DES_LONG DES_cbc_cksum(const unsigned char *in, DES_cblock *output,
|
|||||||
l2c(tout1,out);
|
l2c(tout1,out);
|
||||||
}
|
}
|
||||||
tout0=tin0=tin1=tin[0]=tin[1]=0;
|
tout0=tin0=tin1=tin[0]=tin[1]=0;
|
||||||
|
/*
|
||||||
|
Transform the data in tout1 so that it will
|
||||||
|
match the return value that the MIT Kerberos
|
||||||
|
mit_des_cbc_cksum API returns.
|
||||||
|
*/
|
||||||
|
tout1 = ((tout1 >> 24L) & 0x000000FF)
|
||||||
|
| ((tout1 >> 8L) & 0x0000FF00)
|
||||||
|
| ((tout1 << 8L) & 0x00FF0000)
|
||||||
|
| ((tout1 << 24L) & 0xFF000000);
|
||||||
return(tout1);
|
return(tout1);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user