use symbolic shell variables in library paths
[strongswan.git] / src / libstrongswan / library.h
index 12aa0cb..1439ab8 100644 (file)
 /**
  * @defgroup libstrongswan libstrongswan
  *
- * libstrongswan: library with various crypto related things.
+ * libstrongswan: library with various cryptographic, X.509 trust chain and
+ * identity management functions.
  */
 
 /**
  * @defgroup asn1 asn1
  *
- * ASN1 definitions, parser and generator functions.
+ * ASN.1 definitions, parser and generator functions.
  *
  * @ingroup libstrongswan
  */
@@ -40,7 +41,7 @@
 /**
  * @defgroup crypto crypto
  *
- * Crypto algorithms of different kind.
+ * Various cryptographic algorithms.
  *
  * @ingroup libstrongswan
  */
@@ -226,9 +227,23 @@ enum status_t {
         * Destroy object which called method belongs to.
         */
        DESTROY_ME,
+       
+       /**
+        * Another call to the method is required.
+        */
+       NEED_MORE,
 };
 
 /**
+ * used by strict_crl_policy
+ */
+typedef enum {
+       STRICT_NO,
+       STRICT_YES,
+       STRICT_IFURI
+} strict_t;
+
+/**
  * enum_names for type status_t.
  */
 extern enum_name_t *status_names;
@@ -260,6 +275,11 @@ typedef struct sockaddr sockaddr_t;
 void *clalloc(void *pointer, size_t size);
 
 /**
+ * Same as memcpy, but XORs src into dst instead of copy
+ */
+void memxor(u_int8_t dest[], u_int8_t src[], size_t n);
+
+/**
  * Special type to count references
  */
 typedef volatile u_int refcount_t;