aboutsummaryrefslogtreecommitdiffstats
path: root/libccnx-portal
diff options
context:
space:
mode:
authorDevel <acompagn+fdio@cisco.com>2018-04-13 13:28:31 +0200
committerDevel <acompagn+fdio@cisco.com>2018-04-13 13:28:51 +0200
commit9439750179b4541c91c7d9ad1b6179baada8f141 (patch)
tree5f1f4a668648a873e9e3e55defc93982a9812217 /libccnx-portal
parented721c097187deece705ae663c6bffb1fc107c6d (diff)
Updated library according to the latest changes about security in libparc
Change-Id: I04e53c986f6cb17679edc60e24c8c7c42fc9aad3 Signed-off-by: Devel <acompagn+fdio@cisco.com>
Diffstat (limited to 'libccnx-portal')
-rwxr-xr-xlibccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.c7
-rwxr-xr-xlibccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.h4
-rwxr-xr-xlibccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-client.c2
-rwxr-xr-xlibccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-server.c2
-rw-r--r--libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_Portal.c8
-rwxr-xr-xlibccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalAPI.c4
-rw-r--r--libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalFactory.c22
-rwxr-xr-xlibccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalStack.c8
8 files changed, 31 insertions, 26 deletions
diff --git a/libccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.c b/libccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.c
index be5810bd..ec9a1e6b 100755
--- a/libccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.c
+++ b/libccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.c
@@ -69,15 +69,18 @@ parcObject_ImplementAcquire(ccnxPortalFactory, CCNxPortalFactory);
parcObject_ImplementRelease(ccnxPortalFactory, CCNxPortalFactory);
CCNxPortalFactory *
-ccnxPortalFactory_Create(const PARCIdentity *identity)
+ccnxPortalFactory_Create(const PARCIdentity *identity, PARCCryptoSuite suite)
{
parcIdentity_OptionalAssertValid(identity);
+ if (identity == NULL)
+ return NULL;
+
parcSecurity_Init();
CCNxPortalFactory *result = parcObject_CreateInstance(CCNxPortalFactory);
if (result != NULL) {
result->identity = parcIdentity_Acquire(identity);
- result->signer = parcIdentity_CreateSigner(identity);
+ result->signer = parcIdentity_CreateSigner(identity, suite);
result->keyId = parcSigner_CreateKeyId(result->signer);
result->properties = parcProperties_Create();
diff --git a/libccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.h b/libccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.h
index e021b92d..c0b83086 100755
--- a/libccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.h
+++ b/libccnx-portal/ccnx/api/ccnx_Portal/ccnx_PortalFactory.h
@@ -21,6 +21,8 @@
#ifndef CCNx_Portal_API_ccnx_PortalFactory_h
#define CCNx_Portal_API_ccnx_PortalFactory_h
+#include <parc/security/parc_CryptoSuite.h>
+
struct CCNxPortalFactory;
/**
* @typedef CCNxPortalFactory
@@ -80,7 +82,7 @@ extern const char *CCNxPortalFactory_LocalRouterTimeout;
* @see {@link ccnxPortalFactory_Acquire}
* @see {@link ccnxPortalFactory_Release}
*/
-CCNxPortalFactory *ccnxPortalFactory_Create(const PARCIdentity *identity);
+CCNxPortalFactory *ccnxPortalFactory_Create(const PARCIdentity *identity, PARCCryptoSuite suite);
/**
* Print a human readable representation of the given `CCNxPortalFactory` instance.
diff --git a/libccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-client.c b/libccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-client.c
index dfd5d5ba..c95b8983 100755
--- a/libccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-client.c
+++ b/libccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-client.c
@@ -40,7 +40,7 @@
int
ccnGet(PARCIdentity *identity, CCNxName *name)
{
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
CCNxPortal *portal = ccnxPortalFactory_CreatePortal(factory, ccnxPortalRTA_Message);
diff --git a/libccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-server.c b/libccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-server.c
index a9d7a2e6..4a99e203 100755
--- a/libccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-server.c
+++ b/libccnx-portal/ccnx/api/ccnx_Portal/command-line/ccnx-server.c
@@ -78,7 +78,7 @@ ccnServe(const PARCIdentity *identity, const CCNxName *listenName, const char *c
{
parcSecurity_Init();
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
CCNxPortal *portal = ccnxPortalFactory_CreatePortal(factory, ccnxPortalRTA_Message);
assertNotNull(portal, "Expected a non-null CCNxPortal pointer.");
diff --git a/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_Portal.c b/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_Portal.c
index 154b8be8..29cc6808 100644
--- a/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_Portal.c
+++ b/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_Portal.c
@@ -127,14 +127,14 @@ LONGBOW_TEST_FIXTURE_SETUP(Global)
parcSecurity_Init();
- bool success = parcPkcs12KeyStore_CreateFile("my_keystore", "my_keystore_password", subjectName, keyLength, validityDays);
+ bool success = parcPkcs12KeyStore_CreateFile("my_keystore", "my_keystore_password", subjectName, PARCSigningAlgorithm_RSA, keyLength, validityDays);
assertTrue(success, "parcPkcs12KeyStore_CreateFile('my_keystore', 'my_keystore_password') failed.");
PARCIdentityFile *identityFile = parcIdentityFile_Create("my_keystore", "my_keystore_password");
PARCIdentity *identity = parcIdentity_Create(identityFile, PARCIdentityFileAsPARCIdentity);
parcIdentityFile_Release(&identityFile);
- data->factory = ccnxPortalFactory_Create(identity);
+ data->factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
parcIdentity_Release(&identity);
longBowTestCase_SetClipBoardData(testCase, data);
@@ -604,14 +604,14 @@ LONGBOW_TEST_FIXTURE_SETUP(Performance)
parcSecurity_Init();
- bool success = parcPkcs12KeyStore_CreateFile("my_keystore", "my_keystore_password", subjectName, keyLength, validityDays);
+ bool success = parcPkcs12KeyStore_CreateFile("my_keystore", "my_keystore_password", subjectName, PARCSigningAlgorithm_RSA, keyLength, validityDays);
assertTrue(success, "parcPkcs12KeyStore_CreateFile('my_keystore', 'my_keystore_password') failed.");
PARCIdentityFile *identityFile = parcIdentityFile_Create("my_keystore", "my_keystore_password");
PARCIdentity *identity = parcIdentity_Create(identityFile, PARCIdentityFileAsPARCIdentity);
parcIdentityFile_Release(&identityFile);
- data->factory = ccnxPortalFactory_Create(identity);
+ data->factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
parcIdentity_Release(&identity);
longBowTestCase_SetClipBoardData(testCase, data);
diff --git a/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalAPI.c b/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalAPI.c
index 736e6982..1368717d 100755
--- a/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalAPI.c
+++ b/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalAPI.c
@@ -68,13 +68,13 @@ LONGBOW_TEST_FIXTURE_SETUP(Global)
parcSecurity_Init();
- bool success = parcPkcs12KeyStore_CreateFile("my_keystore", "my_keystore_password", subjectName, keyLength, validityDays);
+ bool success = parcPkcs12KeyStore_CreateFile("my_keystore", "my_keystore_password", subjectName, PARCSigningAlgorithm_RSA, keyLength, validityDays);
assertTrue(success, "parcPkcs12KeyStore_CreateFile('my_keystore', 'my_keystore_password') failed.");
PARCIdentityFile *identityFile = parcIdentityFile_Create("my_keystore", "my_keystore_password");
PARCIdentity *identity = parcIdentity_Create(identityFile, PARCIdentityFileAsPARCIdentity);
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
parcIdentityFile_Release(&identityFile);
parcIdentity_Release(&identity);
diff --git a/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalFactory.c b/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalFactory.c
index 8c98705f..da8f8a1d 100644
--- a/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalFactory.c
+++ b/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalFactory.c
@@ -88,13 +88,13 @@ LONGBOW_TEST_CASE(CreateAcquireRelease, ccnxPortalFactory_Create)
parcSecurity_Init();
- bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", 1024, 30);
+ bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", PARCSigningAlgorithm_RSA, 1024, 30);
assertTrue(success, "parcPkcs12KeyStore_CreateFile('%s', 'keystore_password') failed.", keystoreName);
PARCIdentityFile *identityFile = parcIdentityFile_Create(keystoreName, "keystore_password");
PARCIdentity *identity = parcIdentity_Create(identityFile, PARCIdentityFileAsPARCIdentity);
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
parcIdentityFile_Release(&identityFile);
parcIdentity_Release(&identity);
@@ -109,13 +109,13 @@ LONGBOW_TEST_CASE(CreateAcquireRelease, ccnxPortalFactory_AcquireRelease)
parcSecurity_Init();
- bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", 1024, 30);
+ bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", PARCSigningAlgorithm_RSA, 1024, 30);
assertTrue(success, "parcPkcs12KeyStore_CreateFile('%s', 'keystore_password') failed.", keystoreName);
PARCIdentityFile *identityFile = parcIdentityFile_Create(keystoreName, "keystore_password");
PARCIdentity *identity = parcIdentity_Create(identityFile, PARCIdentityFileAsPARCIdentity);
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
parcIdentityFile_Release(&identityFile);
parcIdentity_Release(&identity);
@@ -156,13 +156,13 @@ LONGBOW_TEST_CASE(Global, ccnxPortalFactory_GetIdentity)
const char *keystoreName = "ccnxPortalFactory_keystore";
parcSecurity_Init();
- bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", 1024, 30);
+ bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", PARCSigningAlgorithm_RSA, 1024, 30);
assertTrue(success, "parcPkcs12KeyStore_CreateFile('%s', 'keystore_password') failed.", keystoreName);
PARCIdentityFile *identityFile = parcIdentityFile_Create(keystoreName, "keystore_password");
PARCIdentity *identity = parcIdentity_Create(identityFile, PARCIdentityFileAsPARCIdentity);
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
const PARCIdentity *actual = ccnxPortalFactory_GetIdentity(factory);
@@ -180,17 +180,17 @@ LONGBOW_TEST_CASE(Global, ccnxPortalFactory_GetKeyId)
const char *keystoreName = "ccnxPortalFactory_keystore";
parcSecurity_Init();
- bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", 1024, 30);
+ bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", PARCSigningAlgorithm_RSA, 1024, 30);
assertTrue(success, "parcPkcs12KeyStore_CreateFile('%s', 'keystore_password') failed.", keystoreName);
PARCIdentityFile *identityFile = parcIdentityFile_Create(keystoreName, "keystore_password");
PARCIdentity *identity = parcIdentity_Create(identityFile, PARCIdentityFileAsPARCIdentity);
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
const PARCKeyId *actual = ccnxPortalFactory_GetKeyId(factory);
- PARCSigner *signer = parcIdentity_CreateSigner(identity);
+ PARCSigner *signer = parcIdentity_CreateSigner(identity, PARCCryptoSuite_RSA_SHA256);
PARCKeyId *expected = parcSigner_CreateKeyId(signer);
parcSigner_Release(&signer);
@@ -230,9 +230,9 @@ LONGBOW_TEST_FIXTURE_TEARDOWN(Errors)
LONGBOW_TEST_CASE_EXPECTS(Errors, ccnxPortalFactory_Create_NULL_Identity, .event = &LongBowTrapInvalidValue)
{
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(NULL);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(NULL, PARCCryptoSuite_RSA_SHA256);
- ccnxPortalFactory_Release(&factory);
+ assertNull(factory,"Factory created when expected to be null");
}
int
diff --git a/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalStack.c b/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalStack.c
index ebba0dea..f40f3294 100755
--- a/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalStack.c
+++ b/libccnx-portal/ccnx/api/ccnx_Portal/test/test_ccnx_PortalStack.c
@@ -72,13 +72,13 @@ LONGBOW_TEST_FIXTURE_SETUP(CreateRelease)
const char *keystoreName = "test_ccnx_PortalImplementation_keystore";
- bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", 1024, 30);
+ bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", PARCSigningAlgorithm_RSA, 1024, 30);
assertTrue(success, "parcPkcs12KeyStore_CreateFile('%s', 'keystore_password') failed.", keystoreName);
PARCIdentityFile *identityFile = parcIdentityFile_Create(keystoreName, "keystore_password");
PARCIdentity *identity = parcIdentity_Create(identityFile, PARCIdentityFileAsPARCIdentity);
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
parcIdentityFile_Release(&identityFile);
parcIdentity_Release(&identity);
@@ -209,13 +209,13 @@ LONGBOW_TEST_FIXTURE_SETUP(Global)
const char *keystoreName = "test_ccnx_PortalImplementation_keystore";
- bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", 1024, 30);
+ bool success = parcPkcs12KeyStore_CreateFile(keystoreName, "keystore_password", "consumer", PARCSigningAlgorithm_RSA, 1024, 30);
assertTrue(success, "parcPkcs12KeyStore_CreateFile('%s', 'keystore_password') failed.", keystoreName);
PARCIdentityFile *identityFile = parcIdentityFile_Create(keystoreName, "keystore_password");
PARCIdentity *identity = parcIdentity_Create(identityFile, PARCIdentityFileAsPARCIdentity);
- CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity);
+ CCNxPortalFactory *factory = ccnxPortalFactory_Create(identity, PARCCryptoSuite_RSA_SHA256);
parcIdentityFile_Release(&identityFile);
parcIdentity_Release(&identity);