aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2012-05-04 19:29:59 +0200
committerTobias Brunner <tobias@strongswan.org>2012-06-11 17:09:19 +0200
commitea92d4f305964f6f533fb7540467361ee3e33c4a (patch)
tree912b28c98f4af74ef55697d6f2fc40b3462763e9
parentdd93aefc0971030e08bd4c15a5e64708610834ea (diff)
downloadstrongswan-ea92d4f305964f6f533fb7540467361ee3e33c4a.tar.bz2
strongswan-ea92d4f305964f6f533fb7540467361ee3e33c4a.tar.xz
Added get_attributes() method to pkcs7_t.
-rw-r--r--src/libstrongswan/crypto/pkcs7.c7
-rw-r--r--src/libstrongswan/crypto/pkcs7.h9
2 files changed, 15 insertions, 1 deletions
diff --git a/src/libstrongswan/crypto/pkcs7.c b/src/libstrongswan/crypto/pkcs7.c
index a69242ca7..b8ee8ce7a 100644
--- a/src/libstrongswan/crypto/pkcs7.c
+++ b/src/libstrongswan/crypto/pkcs7.c
@@ -681,6 +681,12 @@ METHOD(pkcs7_t, set_attributes, void,
this->attributes = attributes;
}
+METHOD(pkcs7_t, get_attributes, pkcs9_t*,
+ private_pkcs7_t *this)
+{
+ return this->attributes;
+}
+
/**
* build a DER-encoded issuerAndSerialNumber object
*/
@@ -990,6 +996,7 @@ static private_pkcs7_t *pkcs7_create_empty(void)
.create_certificate_enumerator = _create_certificate_enumerator,
.set_certificate = _set_certificate,
.set_attributes = _set_attributes,
+ .get_attributes = _get_attributes,
.build_envelopedData = _build_envelopedData,
.build_signedData = _build_signedData,
.destroy = _destroy,
diff --git a/src/libstrongswan/crypto/pkcs7.h b/src/libstrongswan/crypto/pkcs7.h
index 107f2729f..531acb373 100644
--- a/src/libstrongswan/crypto/pkcs7.h
+++ b/src/libstrongswan/crypto/pkcs7.h
@@ -112,11 +112,18 @@ struct pkcs7_t {
/**
* Add authenticated attributes.
*
- * @param attributes attributes to be included
+ * @param attributes attributes to be included (gets adopted)
*/
void (*set_attributes) (pkcs7_t *this, pkcs9_t *attributes);
/**
+ * Get attributes.
+ *
+ * @reutrn attributes (internal data)
+ */
+ pkcs9_t *(*get_attributes) (pkcs7_t *this);
+
+ /**
* Build a data object
*
* @return TRUE if build was successful