| /** |
| * @author: Jeff Thompson |
| * See COPYING for copyright and distribution information. |
| */ |
| |
| #ifndef NDN_KEY_H |
| #define NDN_KEY_H |
| |
| #ifdef __cplusplus |
| extern "C" { |
| #endif |
| |
| typedef enum { |
| ndn_KeyLocatorType_KEY = 1, |
| ndn_KeyLocatorType_CERTIFICATE = 2, |
| ndn_KeyLocatorType_KEYNAME = 3 |
| } ndn_KeyLocatorType; |
| |
| struct ndn_KeyLocator { |
| ndn_KeyLocatorType type; /**< -1 for none */ |
| unsigned char *keyOrCertificate; /**< if type is ndn_KeyLocatorType_KEY, pointer to the pre-allocated buffer for the key value. |
| if type is ndn_KeyLocatorType_CERTIFICATE, pointer to the pre-allocated buffer for the cetrificate value. */ |
| unsigned int keyOrCertificateLength; |
| // TODO: Implement keyName. |
| }; |
| |
| static inline void ndn_KeyLocator_init(struct ndn_KeyLocator *self) { |
| self->type = (ndn_KeyLocatorType)-1; |
| self->keyOrCertificate = 0; |
| self->keyOrCertificateLength = 0; |
| // TODO: Implement keyName. |
| } |
| |
| #ifdef __cplusplus |
| } |
| #endif |
| |
| #endif |