Finalizing the first revision
diff --git a/net/ccnx/files/patch-macports-customizations.diff b/net/ccnx/files/patch-macports-customizations.diff
new file mode 100644
index 0000000..5c98dda
--- /dev/null
+++ b/net/ccnx/files/patch-macports-customizations.diff
@@ -0,0 +1,164 @@
+diff --git csrc/configure csrc/configure
+index 962d76a..43ec3ea 100755
+--- csrc/configure
++++ csrc/configure
+@@ -39,7 +39,7 @@ TryAppend "`uname -sr | sed -e 's/ /-/g'`"
+ TryAppend "local"
+ TryScript "`uname`" "$@"
+ TryScript "local" "$@"
+-ProvideDefault CPREFLAGS = -I../include
++ProvideDefault CPREFLAGS = -I../include ${CFLAGS:-}
+ ProvideDefault PCAP_PROGRAMS = ccndumppcap
+ ProvideDefault RESOLV_LIBS = -lresolv
+ ProvideDefault INSTALL_BASE = ${INSTALL_BASE:-/usr/local}
+diff --git csrc/lib/ccn_client.c csrc/lib/ccn_client.c
+index 606fd36..a3392fc 100644
+--- csrc/lib/ccn_client.c
++++ csrc/lib/ccn_client.c
+@@ -2607,23 +2607,58 @@ ccn_chk_signing_params(struct ccn *h,
+ temp = ccn_charbuf_create();
+ if (default_pubid == NULL || temp == NULL)
+ return(NOTE_ERRNO(h));
+- ccnx_dir = getenv("CCNX_DIR");
+- if (ccnx_dir == NULL || ccnx_dir[0] == 0) {
+- home = getenv("HOME");
+- if (home == NULL)
+- home = "";
+- ccn_charbuf_putf(temp, "%s/.ccnx/.ccnx_keystore", home);
++
++ res = -1;
++#ifdef CCNX_DIR
++ if (res < 0 || default_pubid->length != sizeof(result->pubid)) {
++ // check preconfigured directory
++ ccnx_dir = CCNX_DIR;
++ if (ccnx_dir != NULL && ccnx_dir[0] != 0) {
++ ccn_charbuf_reset(temp);
++ ccn_charbuf_putf(temp, "%s/.ccnx_keystore", ccnx_dir);
++
++ res = ccn_load_private_key(h,
++ ccn_charbuf_as_string(temp),
++ "Th1s1sn0t8g00dp8ssw0rd.",
++ default_pubid);
++ }
+ }
+- else
++#endif
++
++ if (res < 0 || default_pubid->length != sizeof(result->pubid)) {
++ // check CCNX_DIR
++ ccnx_dir = getenv("CCNX_DIR");
++ if (ccnx_dir != NULL && ccnx_dir[0] != 0) {
++ ccn_charbuf_reset(temp);
+ ccn_charbuf_putf(temp, "%s/.ccnx_keystore", ccnx_dir);
+- res = ccn_load_private_key(h,
+- ccn_charbuf_as_string(temp),
+- "Th1s1sn0t8g00dp8ssw0rd.",
+- default_pubid);
++
++ res = ccn_load_private_key(h,
++ ccn_charbuf_as_string(temp),
++ "Th1s1sn0t8g00dp8ssw0rd.",
++ default_pubid);
++ }
++ }
++
++ if (res < 0 || default_pubid->length != sizeof(result->pubid)) {
++ // check HOME
++ home = getenv("HOME");
++ if (home != NULL) {
++ ccn_charbuf_reset(temp);
++ ccn_charbuf_putf(temp, "%s/.ccnx/.ccnx_keystore", home);
++ res = ccn_load_private_key(h,
++ ccn_charbuf_as_string(temp),
++ "Th1s1sn0t8g00dp8ssw0rd.",
++ default_pubid);
++ }
++ }
++
+ if (res == 0 && default_pubid->length == sizeof(result->pubid)) {
+ h->default_pubid = default_pubid;
+ default_pubid = NULL;
+ }
++ else {
++ ccn_perror(h, ccn_charbuf_as_string(temp));
++ }
+ }
+ if (h->default_pubid == NULL)
+ res = NOTE_ERRNO(h);
+diff --git csrc/lib/ccn_initkeystore.sh csrc/lib/ccn_initkeystore.sh
+index 12bc9e3..a171a0e 100755
+--- csrc/lib/ccn_initkeystore.sh
++++ csrc/lib/ccn_initkeystore.sh
+@@ -15,6 +15,7 @@
+ # Create a ccn keystore without relying on java
+ : ${RSA_KEYSIZE:=1024}
+ : ${CCN_USER:=`id -n -u`}
++: ${CCNX_HOME:=.ccnx}
+ Fail () {
+ echo '*** Failed' "$*"
+ exit 1
+@@ -37,6 +38,7 @@ countryName_default = AU
+ countryName_min = 2
+ countryName_max = 2
+ EOF
++RANDFILE=.rnd
+ openssl req -config openssl.cnf \
+ -newkey rsa:$RSA_KEYSIZE \
+ -x509 \
+diff --git csrc/lib/dir.mk csrc/lib/dir.mk
+index 6489299..145eec7 100644
+--- csrc/lib/dir.mk
++++ csrc/lib/dir.mk
+@@ -78,7 +78,7 @@ shlib: $(SHLIBNAME)
+ lib: libccn.a
+
+ test: default keystore_check encodedecodetest ccnbtreetest
+- ./encodedecodetest -o /dev/null
++ ./encodedecodetest -k $(CCNX_DIR)/.ccnx_keystore -o /dev/null
+ ./ccnbtreetest
+ ./ccnbtreetest - < q.dat
+ rm -R _bt_*
+@@ -87,12 +87,12 @@ dtag_check: _always
+ @./gen_dtag_table 2>/dev/null | diff - ccn_dtag_table.c | grep '^[<]' >/dev/null && echo '*** Warning: ccn_dtag_table.c may be out of sync with tagnames.cvsdict' || :
+
+ keystore_check: ccn_initkeystore.sh
+- test -f "$$HOME/.ccnx/.ccnx_keystore" || $(MAKE) -f dir.mk new_keystore
++ test -f "$(CCNX_DIR)/.ccnx_keystore" || $(MAKE) -f dir.mk new_keystore
+
+ new_keystore:
+ @echo === CCNx Keystore not found in your home directory
+ @echo === I will create one for you now '(^C to abort)'
+- sleep 1 && sh ccn_initkeystore.sh && sleep 3 && mv .ccnx "$$HOME"
++ sleep 1 && sh ccn_initkeystore.sh && sleep 3 && mkdir -p "$(CCNX_DIR)/" && mv .ccnx/.ccnx_keystore "$(CCNX_DIR)/"
+
+ libccn.a: $(LIB_OBJS)
+ ar crus $@ $(LIB_OBJS)
+@@ -113,7 +113,7 @@ skel_decode_test: skel_decode_test.o
+ basicparsetest: basicparsetest.o libccn.a
+ $(CC) $(CFLAGS) -o $@ basicparsetest.o $(LDLIBS) $(OPENSSL_LIBS) -lcrypto
+
+-encodedecodetest: encodedecodetest.o
++encodedecodetest: encodedecodetest.o libccn.a
+ $(CC) $(CFLAGS) -o $@ encodedecodetest.o $(LDLIBS) $(OPENSSL_LIBS) -lcrypto
+
+ ccn_digest.o:
+@@ -149,16 +149,16 @@ ccn_fetch.o:
+ ccn_verifysig.o:
+ $(CC) $(CFLAGS) $(OPENSSL_CFLAGS) -c ccn_verifysig.c
+
+-ccn_verifysig: ccn_verifysig.o
++ccn_verifysig: ccn_verifysig.o libccn.a
+ $(CC) $(CFLAGS) -o $@ ccn_verifysig.o $(LDLIBS) $(OPENSSL_LIBS) -lcrypto
+
+ signbenchtest.o:
+ $(CC) $(CFLAGS) $(OPENSSL_CFLAGS) -c signbenchtest.c
+
+-signbenchtest: signbenchtest.o
++signbenchtest: signbenchtest.o libccn.a
+ $(CC) $(CFLAGS) -o $@ signbenchtest.o $(LDLIBS) $(OPENSSL_LIBS) -lcrypto
+
+-ccndumppcap: ccndumppcap.o
++ccndumppcap: ccndumppcap.o libccn.a
+ $(CC) $(CFLAGS) -o $@ ccndumppcap.o $(LDLIBS) $(OPENSSL_LIBS) -lcrypto -lpcap
+
+ ccnbtreetest.o: