1 /* LibTomCrypt, modular cryptographic library -- Tom St Denis 2 * 3 * LibTomCrypt is a library that provides various cryptographic 4 * algorithms in a highly modular and flexible manner. 5 * 6 * The library is free for all purposes without any express 7 * guarantee it works. 8 * 9 * Tom St Denis, tomstdenis@gmail.com, http://libtomcrypt.com 10 */ 11 #include "tomcrypt.h" 12 13 /** 14 @file der_length_utctime.c 15 ASN.1 DER, get length of UTCTIME, Tom St Denis 16 */ 17 18 #ifdef LTC_DER 19 20 /** 21 Gets length of DER encoding of UTCTIME 22 @param utctime The UTC time structure to get the size of 23 @param outlen [out] The length of the DER encoding 24 @return CRYPT_OK if successful 25 */ der_length_utctime(ltc_utctime * utctime,unsigned long * outlen)26int der_length_utctime(ltc_utctime *utctime, unsigned long *outlen) 27 { 28 LTC_ARGCHK(outlen != NULL); 29 LTC_ARGCHK(utctime != NULL); 30 31 if (utctime->off_hh == 0 && utctime->off_mm == 0) { 32 /* we encode as YYMMDDhhmmssZ */ 33 *outlen = 2 + 13; 34 } else { 35 /* we encode as YYMMDDhhmmss{+|-}hh'mm' */ 36 *outlen = 2 + 17; 37 } 38 39 return CRYPT_OK; 40 } 41 42 #endif 43 44 /* $Source: /cvs/libtom/libtomcrypt/src/pk/asn1/der/utctime/der_length_utctime.c,v $ */ 45 /* $Revision: 1.4 $ */ 46 /* $Date: 2006/03/31 14:15:35 $ */ 47