gpg: Fix calc_header_length when LEN is 0 and improve documentation.

* g10/build-packet.c (calc_header_length): Return the correct haeder
size when LEN is 0.  Fix documentation.

--
Signed-off-by: Neal H. Walfield <neal@g10code.com>
GnuPG-bug-id: 2240
This commit is contained in:
Neal H. Walfield 2016-02-02 20:05:45 +01:00
parent c0268c449d
commit 5cdde08ea8
1 changed files with 8 additions and 4 deletions

View File

@ -1215,14 +1215,18 @@ write_32(IOBUF out, u32 a)
/****************
* calculate the length of a header
* calculate the length of a header.
*
* LEN is the length of the packet's body. NEW_CTB is whether we are
* using a new or old format packet.
*
* This function does not handle indeterminate lengths or partial body
* lengths. (If you pass LEN as 0, then this function assumes you
* really mean an empty body.)
*/
static int
calc_header_length( u32 len, int new_ctb )
{
if( !len )
return 1; /* only the ctb */
if( new_ctb ) {
if( len < 192 )
return 2;