The Assimilation Project  based on Assimilation version
Go to the documentation of this file.
32 #ifndef _CRYPTCURVE25519_H
33 #define _CRYPTCURVE25519_H
34 #include <cryptframe.h>
39 enum keytype {
43 };
51  gboolean forsending;
52 };
56 WINEXPORT CryptCurve25519* cryptcurve25519_new(guint16 frame_type, const char * pubkeyname, const char *privkeyname, gboolean forsending, gsize objsize);
57 WINEXPORT Frame* cryptcurve25519_tlvconstructor(gpointer tlvstart, gconstpointer pktend, gpointer*,gpointer*);
58 WINEXPORT void cryptcurve25519_gen_temp_keypair(const char* keyname);
59 WINEXPORT char* cryptcurve25519_gen_persistent_keypair(const char * keyname);
60 WINEXPORT gboolean cryptcurve25519_save_public_key(const char * key_id, gpointer public_key, int keysize);
61 WINEXPORT CryptFrame* cryptcurve25519_new_generic(const char* sender_key_id,
62  const char* receiver_key_id, gboolean forsending);
64 WINEXPORT gboolean cryptcurve25519_purge_keypair(const char * key_id);
66 WINEXPORT char* curve25519_key_id_to_filename(const char * key_id, enum keytype);
69 #endif /* _CRYPTCURVE25519_H */
WINEXPORT void cryptcurve25519_gen_temp_keypair(const char *keyname)
Generate a temporary (non-persistent) key pair.
WINEXPORT void cryptcurve25519_set_encryption_method(void)
Just for python simplicity...
WINEXPORT CryptCurve25519 * cryptcurve25519_new(guint16 frame_type, const char *pubkeyname, const char *privkeyname, gboolean forsending, gsize objsize)
Construct a new CryptCurve25519 object (frame).
WINEXPORT char * cryptcurve25519_gen_persistent_keypair(const char *keyname)
Create a persistent keypair and write it to disk Returns a MALLOCed string with the key id for the ke...
This is our CryptCurve25519 class object - representing a Curve25519 encryption Frame class...
This is the base Frame class object (in-memory TLV (type, length, value)) for every general component...
Definition: frame.h:43
CryptFrame baseclass
WINEXPORT gboolean cryptcurve25519_purge_keypair(const char *key_id)
Purge a cryptcurve25519 key from the filesystem and from memory.
CryptFramePublicKey * public_key
Pointer to associated public key.
Definition: projectcommon.h:45
gboolean forsending
TRUE if this is for sending, FALSE for receiving.
Describes interfaces to CryptFrame (encryption) C-Class It represents the abstract base class for Fra...
WINEXPORT char * curve25519_key_id_to_filename(const char *key_id, enum keytype)
WINEXPORT gboolean cryptcurve25519_save_public_key(const char *key_id, gpointer public_key, int keysize)
Save a public key away to disk so it&#39;s completely usable...
This is our CryptFrame class object - representing an encryption method.
Definition: cryptframe.h:53
WINEXPORT void cryptcurve25519_cache_all_keypairs(void)
We read in and cache all the key pairs (or public keys) that we find in CRYPTKEYDIR.
WINEXPORT CryptFrame * cryptcurve25519_new_generic(const char *sender_key_id, const char *receiver_key_id, gboolean forsending)
Generic "new" function to use with cryptframe_set_encryption_method()
WINEXPORT Frame * cryptcurve25519_tlvconstructor(gpointer tlvstart, gconstpointer pktend, gpointer *, gpointer *)
Given marshalled packet data corresponding to an CryptCurve25519 frame return the corresponding Frame...
CryptFramePrivateKey * private_key
Pointer to private key.