aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/libfreeswan/Makefile.am6
-rw-r--r--src/libfreeswan/freeswan.h10
-rw-r--r--src/libfreeswan/ipsec_policy.h231
-rw-r--r--src/libstrongswan/utils/identification.h8
-rw-r--r--src/pluto/alg_info.c1
-rw-r--r--src/pluto/ca.c1
-rw-r--r--src/pluto/certs.c1
-rw-r--r--src/pluto/connections.c11
-rw-r--r--src/pluto/constants.c1
-rw-r--r--src/pluto/constants.h258
-rw-r--r--src/pluto/crl.c1
-rw-r--r--src/pluto/crypto.c1
-rw-r--r--src/pluto/dnskey.c1
-rw-r--r--src/pluto/id.c21
-rw-r--r--src/pluto/ike_alg.c1
-rw-r--r--src/pluto/ipsec_doi.c3
-rw-r--r--src/pluto/kernel.c1
-rw-r--r--src/pluto/kernel_alg.c1
-rw-r--r--src/pluto/keys.c5
-rw-r--r--src/pluto/nat_traversal.c1
-rw-r--r--src/pluto/ocsp.c1
-rw-r--r--src/pluto/pgp.c1
-rw-r--r--src/pluto/smartcard.c1
-rw-r--r--src/pluto/spdb.c1
-rw-r--r--src/pluto/x509.c7
-rw-r--r--src/starter/Makefile.am9
-rw-r--r--src/whack/Makefile.am4
27 files changed, 131 insertions, 457 deletions
diff --git a/src/libfreeswan/Makefile.am b/src/libfreeswan/Makefile.am
index d2617cb00..f7a1b8a7d 100644
--- a/src/libfreeswan/Makefile.am
+++ b/src/libfreeswan/Makefile.am
@@ -1,8 +1,7 @@
noinst_LIBRARIES = libfreeswan.a
libfreeswan_a_SOURCES = addrtoa.c addrtot.c addrtypeof.c anyaddr.c atoaddr.c atoasr.c \
atosa.c atosubnet.c atoul.c copyright.c datatot.c freeswan.h \
- goodmask.c initaddr.c initsaid.c initsubnet.c internal.h \
- ipsec_param.h ipsec_policy.h \
+ goodmask.c initaddr.c initsaid.c initsubnet.c internal.h \ ipsec_param.h \
keyblobtoid.c pfkey_v2_build.c pfkey_v2_debug.c \
pfkey_v2_ext_bits.c pfkey_v2_parse.c portof.c prng.c rangetoa.c \
pfkey.h pfkeyv2.h rangetosubnet.c sameaddr.c satoa.c \
@@ -14,6 +13,9 @@ INCLUDES = \
-I$(top_srcdir)/src/libstrongswan \
-I$(top_srcdir)/src/pluto
+AM_CFLAGS = \
+-DNO_CREDENTIAL_FACTORY
+
dist_man3_MANS = anyaddr.3 atoaddr.3 atoasr.3 atosa.3 atoul.3 goodmask.3 initaddr.3 initsubnet.3 \
keyblobtoid.3 portof.3 prng.3 rangetosubnet.3 sameaddr.3 subnetof.3 \
ttoaddr.3 ttodata.3 ttosa.3 ttoul.3 version.3
diff --git a/src/libfreeswan/freeswan.h b/src/libfreeswan/freeswan.h
index bcae76aec..d671e7fd2 100644
--- a/src/libfreeswan/freeswan.h
+++ b/src/libfreeswan/freeswan.h
@@ -385,16 +385,6 @@ bitstomask(
int n
);
-
-
-/*
- * general utilities
- */
-
-/* option pickup from files */
-const char *optionsfrom(const char *filename, int *argcp, char ***argvp,
- int optind, FILE *errorreport);
-
/*
* Debugging levels for pfkey_lib_debug
*/
diff --git a/src/libfreeswan/ipsec_policy.h b/src/libfreeswan/ipsec_policy.h
deleted file mode 100644
index 966ba79a0..000000000
--- a/src/libfreeswan/ipsec_policy.h
+++ /dev/null
@@ -1,231 +0,0 @@
-#ifndef _IPSEC_POLICY_H
-/*
- * policy interface file between pluto and applications
- * Copyright (C) 2003 Michael Richardson <mcr@freeswan.org>
- *
- * This library is free software; you can redistribute it and/or modify it
- * under the terms of the GNU Library General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or (at your
- * option) any later version. See <http://www.fsf.org/copyleft/lgpl.txt>.
- *
- * This library is distributed in the hope that it will be useful, but
- * WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
- * or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library General Public
- * License for more details.
- */
-#define _IPSEC_POLICY_H /* seen it, no need to see it again */
-
-
-/*
- * this file defines an interface between an application (or rather an
- * application library) and a key/policy daemon. It provides for inquiries
- * as to the current state of a connected socket, as well as for general
- * questions.
- *
- * In general, the interface is defined as a series of functional interfaces,
- * and the policy messages should be internal. However, because this is in
- * fact an ABI between pieces of the system that may get compiled and revised
- * seperately, this ABI must be public and revision controlled.
- *
- * It is expected that the daemon will always support previous versions.
- */
-
-#define IPSEC_POLICY_MSG_REVISION (unsigned)200305061
-
-enum ipsec_policy_command {
- IPSEC_CMD_QUERY_FD = 1,
- IPSEC_CMD_QUERY_HOSTPAIR = 2,
- IPSEC_CMD_QUERY_DSTONLY = 3,
-};
-
-struct ipsec_policy_msg_head {
- u_int32_t ipm_version;
- u_int32_t ipm_msg_len;
- u_int32_t ipm_msg_type;
- u_int32_t ipm_msg_seq;
-};
-
-enum ipsec_privacy_quality {
- IPSEC_PRIVACY_NONE = 0,
- IPSEC_PRIVACY_INTEGRAL = 4, /* not private at all. AH-like */
- IPSEC_PRIVACY_UNKNOWN = 8, /* something is claimed, but details unavail */
- IPSEC_PRIVACY_ROT13 = 12, /* trivially breakable, i.e. 1DES */
- IPSEC_PRIVACY_GAK = 16, /* known eavesdroppers */
- IPSEC_PRIVACY_PRIVATE = 32, /* secure for at least a decade */
- IPSEC_PRIVACY_STRONG = 64, /* ridiculously secure */
- IPSEC_PRIVACY_TORTOISE = 192, /* even stronger, but very slow */
- IPSEC_PRIVACY_OTP = 224, /* some kind of *true* one time pad */
-};
-
-enum ipsec_bandwidth_quality {
- IPSEC_QOS_UNKNOWN = 0, /* unknown bandwidth */
- IPSEC_QOS_INTERACTIVE = 16, /* reasonably moderate jitter, moderate fast.
- Good enough for telnet/ssh. */
- IPSEC_QOS_VOIP = 32, /* faster crypto, predicable jitter */
- IPSEC_QOS_FTP = 64, /* higher throughput crypto, perhaps hardware
- offloaded, but latency/jitter may be bad */
- IPSEC_QOS_WIRESPEED = 128, /* expect to be able to fill your pipe */
-};
-
-/* moved from programs/pluto/constants.h */
-/* IPsec AH transform values
- * RFC2407 The Internet IP security Domain of Interpretation for ISAKMP 4.4.3
- * and in http://www.iana.org/assignments/isakmp-registry
- */
-enum ipsec_authentication_algo {
- AH_NONE = 0,
- AH_MD5 = 2,
- AH_SHA = 3,
- AH_DES = 4,
- AH_SHA2_256 = 5,
- AH_SHA2_384 = 6,
- AH_SHA2_512 = 7,
- AH_RIPEMD = 8,
- AH_AES_XCBC_MAC = 9,
- AH_RSA = 10
-};
-
-/* IPsec ESP transform values
- * RFC2407 The Internet IP security Domain of Interpretation for ISAKMP 4.4.4
- * and from http://www.iana.org/assignments/isakmp-registry
- */
-
-enum ipsec_cipher_algo {
- ESP_NONE = 0,
- ESP_DES_IV64 = 1,
- ESP_DES = 2,
- ESP_3DES = 3,
- ESP_RC5 = 4,
- ESP_IDEA = 5,
- ESP_CAST = 6,
- ESP_BLOWFISH = 7,
- ESP_3IDEA = 8,
- ESP_DES_IV32 = 9,
- ESP_RC4 = 10,
- ESP_NULL = 11,
- ESP_AES = 12,
- ESP_AES_CTR = 13,
- ESP_AES_CCM_8 = 14,
- ESP_AES_CCM_12 = 15,
- ESP_AES_CCM_16 = 16,
- ESP_UNASSIGNED_17 = 17,
- ESP_AES_GCM_8 = 18,
- ESP_AES_GCM_12 = 19,
- ESP_AES_GCM_16 = 20,
- ESP_SEED_CBC = 21,
- ESP_CAMELLIA = 22,
- ESP_SERPENT = 252,
- ESP_TWOFISH = 253
-};
-
-/* IPCOMP transform values
- * RFC2407 The Internet IP security Domain of Interpretation for ISAKMP 4.4.5
- */
-
-enum ipsec_comp_algo {
- IPSCOMP_NONE = 0,
- IPCOMP_OUI = 1,
- IPCOMP_DEFLATE = 2,
- IPCOMP_LZS = 3,
- IPCOMP_LZJH = 4
-};
-
-/* Identification type values
- * RFC 2407 The Internet IP security Domain of Interpretation for ISAKMP 4.6.2.1
- */
-
-enum ipsec_id_type {
- ID_IMPOSSIBLE= (-2), /* private to Pluto */
- ID_MYID= (-1), /* private to Pluto */
- ID_NONE= 0, /* private to Pluto */
- ID_IPV4_ADDR= 1,
- ID_FQDN= 2,
- ID_USER_FQDN= 3,
- ID_IPV4_ADDR_SUBNET= 4,
- ID_IPV6_ADDR= 5,
- ID_IPV6_ADDR_SUBNET= 6,
- ID_IPV4_ADDR_RANGE= 7,
- ID_IPV6_ADDR_RANGE= 8,
- ID_DER_ASN1_DN= 9,
- ID_DER_ASN1_GN= 10,
- ID_KEY_ID= 11
-};
-
-/* Certificate type values
- * RFC 2408 ISAKMP, chapter 3.9
- */
-enum ipsec_cert_type {
- CERT_NONE= 0,
- CERT_PKCS7_WRAPPED_X509= 1,
- CERT_PGP= 2,
- CERT_DNS_SIGNED_KEY= 3,
- CERT_X509_SIGNATURE= 4,
- CERT_X509_KEY_EXCHANGE= 5,
- CERT_KERBEROS_TOKENS= 6,
- CERT_CRL= 7,
- CERT_ARL= 8,
- CERT_SPKI= 9,
- CERT_X509_ATTRIBUTE= 10,
- CERT_RAW_RSA_KEY= 11
-};
-
-/* a SIG record in ASCII */
-struct ipsec_dns_sig {
- char fqdn[256];
- char dns_sig[768]; /* empty string if not signed */
-};
-
-struct ipsec_raw_key {
- char id_name[256];
- char fs_keyid[8];
-};
-
-struct ipsec_identity {
- enum ipsec_id_type ii_type;
- enum ipsec_cert_type ii_format;
- union {
- struct ipsec_dns_sig ipsec_dns_signed;
- /* some thing for PGP */
- /* some thing for PKIX */
- struct ipsec_raw_key ipsec_raw_key;
- } ii_credential;
-};
-
-#define IPSEC_MAX_CREDENTIALS 32
-
-struct ipsec_policy_cmd_query {
- struct ipsec_policy_msg_head head;
-
- /* Query section */
- ip_address query_local; /* us */
- ip_address query_remote; /* them */
- u_short src_port, dst_port;
-
- /* Answer section */
- enum ipsec_privacy_quality strength;
- enum ipsec_bandwidth_quality bandwidth;
- enum ipsec_authentication_algo auth_detail;
- enum ipsec_cipher_algo esp_detail;
- enum ipsec_comp_algo comp_detail;
-
- int credential_count;
-
- struct ipsec_identity credentials[IPSEC_MAX_CREDENTIALS];
-};
-
-#define IPSEC_POLICY_SOCKET "/var/run/pluto.info"
-
-/* prototypes */
-extern err_t ipsec_policy_lookup(int fd, struct ipsec_policy_cmd_query *result);
-extern err_t ipsec_policy_init(void);
-extern err_t ipsec_policy_final(void);
-extern err_t ipsec_policy_readmsg(int policysock,
- unsigned char *buf, size_t buflen);
-extern err_t ipsec_policy_sendrecv(unsigned char *buf, size_t buflen);
-extern err_t ipsec_policy_cgilookup(struct ipsec_policy_cmd_query *result);
-
-
-extern const char *ipsec_policy_version_code(void);
-extern const char *ipsec_policy_version_string(void);
-
-#endif /* _IPSEC_POLICY_H */
diff --git a/src/libstrongswan/utils/identification.h b/src/libstrongswan/utils/identification.h
index 77791b5c3..dc0aec18e 100644
--- a/src/libstrongswan/utils/identification.h
+++ b/src/libstrongswan/utils/identification.h
@@ -79,7 +79,8 @@ enum id_type_t {
* An example of an ID_RFC822_ADDR is "jsmith@example.com".
* The string MUST NOT contain any terminators.
*/
- ID_RFC822_ADDR = 3,
+ ID_USER_FQDN = 3, /* IKEv1 only */
+ ID_RFC822_ADDR = 3, /* IKEv2 only */
/**
* ID data is an IPv4 subnet (IKEv1 only)
@@ -147,6 +148,11 @@ enum id_type_t {
* IETF Attribute Syntax String (RFC 3281)
*/
ID_IETF_ATTR_STRING = 205,
+
+ /**
+ * Private ID used by the pluto daemon for opportunistic encryption
+ */
+ ID_MYID = 206,
};
/**
diff --git a/src/pluto/alg_info.c b/src/pluto/alg_info.c
index 1caa980de..a85a18905 100644
--- a/src/pluto/alg_info.c
+++ b/src/pluto/alg_info.c
@@ -26,7 +26,6 @@
#include <ctype.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include <pfkeyv2.h>
#include <utils.h>
diff --git a/src/pluto/ca.c b/src/pluto/ca.c
index 3fac998a3..363a78b92 100644
--- a/src/pluto/ca.c
+++ b/src/pluto/ca.c
@@ -21,7 +21,6 @@
#include <sys/types.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "constants.h"
#include "defs.h"
diff --git a/src/pluto/certs.c b/src/pluto/certs.c
index b5a5ea9f0..7d78f229a 100644
--- a/src/pluto/certs.c
+++ b/src/pluto/certs.c
@@ -17,7 +17,6 @@
#include <string.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "asn1/asn1.h"
diff --git a/src/pluto/connections.c b/src/pluto/connections.c
index d2c7a519e..960884e84 100644
--- a/src/pluto/connections.c
+++ b/src/pluto/connections.c
@@ -27,7 +27,6 @@
#include <sys/queue.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "kameipsec.h"
#include "constants.h"
@@ -499,7 +498,7 @@ default_end(struct end *e, ip_address *dflt_nexthop)
return "unknown address family in default_end";
/* default ID to IP (but only if not NO_IP -- WildCard) */
- if (e->id.kind == ID_NONE && !isanyaddr(&e->host_addr))
+ if (e->id.kind == ID_ANY && !isanyaddr(&e->host_addr))
{
e->id.kind = afi->id_addr;
e->id.ip_addr = e->host_addr;
@@ -628,7 +627,7 @@ format_end(char *buf
{
strcpy(host_id, "[%myid]");
}
- else if (!(this->id.kind == ID_NONE
+ else if (!(this->id.kind == ID_ANY
|| (id_is_ipaddr(&this->id) && sameaddr(&this->id.ip_addr, &this->host_addr))))
{
int len = idtoa(&this->id, host_id+1, sizeof(host_id)-2);
@@ -802,7 +801,7 @@ extract_end(struct end *dst, const whack_end_t *src, const char *which)
/* decode id, if any */
if (src->id == NULL)
{
- dst->id.kind = ID_NONE;
+ dst->id.kind = ID_ANY;
}
else
{
@@ -1246,7 +1245,7 @@ remove_group_instance(const struct connection *group USED_BY_DEBUG
* his_id can be used to carry over an ID discovered in Phase 1.
* It must not disagree with the one in c, but if that is unspecified,
* the new connection will use his_id.
- * If his_id is NULL, and c.that.id is uninstantiated (ID_NONE), the
+ * If his_id is NULL, and c.that.id is uninstantiated (ID_ANY), the
* new connection will continue to have an uninstantiated that.id.
* Note: instantiation does not affect port numbers.
*
@@ -2076,7 +2075,7 @@ continue_oppo(struct adns_continuation *acr, err_t ugh)
bool was_held = cr->b.held;
int whackfd = cr->b.whackfd;
- /* note: cr->id has no resources; cr->sgw_id is id_none:
+ /* note: cr->id has no resources; cr->sgw_id is ID_ANY:
* neither need freeing.
*/
whack_log_fd = whackfd;
diff --git a/src/pluto/constants.c b/src/pluto/constants.c
index 289787c11..ae58d907f 100644
--- a/src/pluto/constants.c
+++ b/src/pluto/constants.c
@@ -24,7 +24,6 @@
#include <netinet/in.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "constants.h"
#include "defs.h"
diff --git a/src/pluto/constants.h b/src/pluto/constants.h
index 60b14f8e1..25764a84d 100644
--- a/src/pluto/constants.h
+++ b/src/pluto/constants.h
@@ -1,4 +1,3 @@
-
/* manifest constants
* Copyright (C) 1997 Angelos D. Keromytis.
* Copyright (C) 1998-2002 D. Hugh Redelmeier.
@@ -18,6 +17,7 @@
#define _CONSTANTS_H
#include <utils.h>
+#include <utils/identification.h>
#include <crypto/hashers/hasher.h>
extern const char compile_time_interop_options[];
@@ -109,168 +109,6 @@ extern const char sparse_end[];
#define FULL_INET_ADDRESS_SIZE 6
-/* Group parameters from draft-ietf-ike-01.txt section 6 */
-
-#define MODP_GENERATOR "2"
-
-#define MODP768_MODULUS \
- "FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 " \
- "29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD " \
- "EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 " \
- "E485B576 625E7EC6 F44C42E9 A63A3620 FFFFFFFF FFFFFFFF"
-
-#define MODP1024_MODULUS \
- "FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 " \
- "29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD " \
- "EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 " \
- "E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED " \
- "EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE65381 " \
- "FFFFFFFF FFFFFFFF"
-
-#define MODP1536_MODULUS \
- "FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 " \
- "29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD " \
- "EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245 " \
- "E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED " \
- "EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE45B3D " \
- "C2007CB8 A163BF05 98DA4836 1C55D39A 69163FA8 FD24CF5F " \
- "83655D23 DCA3AD96 1C62F356 208552BB 9ED52907 7096966D " \
- "670C354E 4ABC9804 F1746C08 CA237327 FFFFFFFF FFFFFFFF "
-
-/* draft-ietf-ipsec-ike-modp-groups-03.txt */
-#define MODP2048_MODULUS \
- "FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1" \
- "29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD" \
- "EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245" \
- "E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED" \
- "EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE45B3D" \
- "C2007CB8 A163BF05 98DA4836 1C55D39A 69163FA8 FD24CF5F" \
- "83655D23 DCA3AD96 1C62F356 208552BB 9ED52907 7096966D" \
- "670C354E 4ABC9804 F1746C08 CA18217C 32905E46 2E36CE3B" \
- "E39E772C 180E8603 9B2783A2 EC07A28F B5C55DF0 6F4C52C9" \
- "DE2BCBF6 95581718 3995497C EA956AE5 15D22618 98FA0510" \
- "15728E5A 8AACAA68 FFFFFFFF FFFFFFFF"
-
-#define MODP3072_MODULUS \
- "FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1" \
- "29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD" \
- "EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245" \
- "E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED" \
- "EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE45B3D" \
- "C2007CB8 A163BF05 98DA4836 1C55D39A 69163FA8 FD24CF5F" \
- "83655D23 DCA3AD96 1C62F356 208552BB 9ED52907 7096966D" \
- "670C354E 4ABC9804 F1746C08 CA18217C 32905E46 2E36CE3B" \
- "E39E772C 180E8603 9B2783A2 EC07A28F B5C55DF0 6F4C52C9" \
- "DE2BCBF6 95581718 3995497C EA956AE5 15D22618 98FA0510" \
- "15728E5A 8AAAC42D AD33170D 04507A33 A85521AB DF1CBA64" \
- "ECFB8504 58DBEF0A 8AEA7157 5D060C7D B3970F85 A6E1E4C7" \
- "ABF5AE8C DB0933D7 1E8C94E0 4A25619D CEE3D226 1AD2EE6B" \
- "F12FFA06 D98A0864 D8760273 3EC86A64 521F2B18 177B200C" \
- "BBE11757 7A615D6C 770988C0 BAD946E2 08E24FA0 74E5AB31" \
- "43DB5BFC E0FD108E 4B82D120 A93AD2CA FFFFFFFF FFFFFFFF"
-
-#define MODP4096_MODULUS \
- "FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1" \
- "29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD" \
- "EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245" \
- "E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED" \
- "EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE45B3D" \
- "C2007CB8 A163BF05 98DA4836 1C55D39A 69163FA8 FD24CF5F" \
- "83655D23 DCA3AD96 1C62F356 208552BB 9ED52907 7096966D" \
- "670C354E 4ABC9804 F1746C08 CA18217C 32905E46 2E36CE3B" \
- "E39E772C 180E8603 9B2783A2 EC07A28F B5C55DF0 6F4C52C9" \
- "DE2BCBF6 95581718 3995497C EA956AE5 15D22618 98FA0510" \
- "15728E5A 8AAAC42D AD33170D 04507A33 A85521AB DF1CBA64" \
- "ECFB8504 58DBEF0A 8AEA7157 5D060C7D B3970F85 A6E1E4C7" \
- "ABF5AE8C DB0933D7 1E8C94E0 4A25619D CEE3D226 1AD2EE6B" \
- "F12FFA06 D98A0864 D8760273 3EC86A64 521F2B18 177B200C" \
- "BBE11757 7A615D6C 770988C0 BAD946E2 08E24FA0 74E5AB31" \
- "43DB5BFC E0FD108E 4B82D120 A9210801 1A723C12 A787E6D7" \
- "88719A10 BDBA5B26 99C32718 6AF4E23C 1A946834 B6150BDA" \
- "2583E9CA 2AD44CE8 DBBBC2DB 04DE8EF9 2E8EFC14 1FBECAA6" \
- "287C5947 4E6BC05D 99B2964F A090C3A2 233BA186 515BE7ED" \
- "1F612970 CEE2D7AF B81BDD76 2170481C D0069127 D5B05AA9" \
- "93B4EA98 8D8FDDC1 86FFB7DC 90A6C08F 4DF435C9 34063199" \
- "FFFFFFFF FFFFFFFF"
-
-/* copy&pasted from rfc3526: */
-#define MODP6144_MODULUS \
- "FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1 29024E08" \
- "8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD EF9519B3 CD3A431B" \
- "302B0A6D F25F1437 4FE1356D 6D51C245 E485B576 625E7EC6 F44C42E9" \
- "A637ED6B 0BFF5CB6 F406B7ED EE386BFB 5A899FA5 AE9F2411 7C4B1FE6" \
- "49286651 ECE45B3D C2007CB8 A163BF05 98DA4836 1C55D39A 69163FA8" \
- "FD24CF5F 83655D23 DCA3AD96 1C62F356 208552BB 9ED52907 7096966D" \
- "670C354E 4ABC9804 F1746C08 CA18217C 32905E46 2E36CE3B E39E772C" \
- "180E8603 9B2783A2 EC07A28F B5C55DF0 6F4C52C9 DE2BCBF6 95581718" \
- "3995497C EA956AE5 15D22618 98FA0510 15728E5A 8AAAC42D AD33170D" \
- "04507A33 A85521AB DF1CBA64 ECFB8504 58DBEF0A 8AEA7157 5D060C7D" \
- "B3970F85 A6E1E4C7 ABF5AE8C DB0933D7 1E8C94E0 4A25619D CEE3D226" \
- "1AD2EE6B F12FFA06 D98A0864 D8760273 3EC86A64 521F2B18 177B200C" \
- "BBE11757 7A615D6C 770988C0 BAD946E2 08E24FA0 74E5AB31 43DB5BFC" \
- "E0FD108E 4B82D120 A9210801 1A723C12 A787E6D7 88719A10 BDBA5B26" \
- "99C32718 6AF4E23C 1A946834 B6150BDA 2583E9CA 2AD44CE8 DBBBC2DB" \
- "04DE8EF9 2E8EFC14 1FBECAA6 287C5947 4E6BC05D 99B2964F A090C3A2" \
- "233BA186 515BE7ED 1F612970 CEE2D7AF B81BDD76 2170481C D0069127" \
- "D5B05AA9 93B4EA98 8D8FDDC1 86FFB7DC 90A6C08F 4DF435C9 34028492" \
- "36C3FAB4 D27C7026 C1D4DCB2 602646DE C9751E76 3DBA37BD F8FF9406" \
- "AD9E530E E5DB382F 413001AE B06A53ED 9027D831 179727B0 865A8918" \
- "DA3EDBEB CF9B14ED 44CE6CBA CED4BB1B DB7F1447 E6CC254B 33205151" \
- "2BD7AF42 6FB8F401 378CD2BF 5983CA01 C64B92EC F032EA15 D1721D03" \
- "F482D7CE 6E74FEF6 D55E702F 46980C82 B5A84031 900B1C9E 59E7C97F" \
- "BEC7E8F3 23A97A7E 36CC88BE 0F1D45B7 FF585AC5 4BD407B2 2B4154AA" \
- "CC8F6D7E BF48E1D8 14CC5ED2 0F8037E0 A79715EE F29BE328 06A1D58B" \
- "B7C5DA76 F550AA3D 8A1FBFF0 EB19CCB1 A313D55C DA56C9EC 2EF29632" \
- "387FE8D7 6E3C0468 043E8F66 3F4860EE 12BF2D5B 0B7474D6 E694F91E" \
- "6DCC4024 FFFFFFFF FFFFFFFF"
-
-/* copy&pasted from rfc3526: */
-#define MODP8192_MODULUS \
- "FFFFFFFF FFFFFFFF C90FDAA2 2168C234 C4C6628B 80DC1CD1" \
- "29024E08 8A67CC74 020BBEA6 3B139B22 514A0879 8E3404DD" \
- "EF9519B3 CD3A431B 302B0A6D F25F1437 4FE1356D 6D51C245" \
- "E485B576 625E7EC6 F44C42E9 A637ED6B 0BFF5CB6 F406B7ED" \
- "EE386BFB 5A899FA5 AE9F2411 7C4B1FE6 49286651 ECE45B3D" \
- "C2007CB8 A163BF05 98DA4836 1C55D39A 69163FA8 FD24CF5F" \
- "83655D23 DCA3AD96 1C62F356 208552BB 9ED52907 7096966D" \
- "670C354E 4ABC9804 F1746C08 CA18217C 32905E46 2E36CE3B" \
- "E39E772C 180E8603 9B2783A2 EC07A28F B5C55DF0 6F4C52C9" \
- "DE2BCBF6 95581718 3995497C EA956AE5 15D22618 98FA0510" \
- "15728E5A 8AAAC42D AD33170D 04507A33 A85521AB DF1CBA64" \
- "ECFB8504 58DBEF0A 8AEA7157 5D060C7D B3970F85 A6E1E4C7" \
- "ABF5AE8C DB0933D7 1E8C94E0 4A25619D CEE3D226 1AD2EE6B" \
- "F12FFA06 D98A0864 D8760273 3EC86A64 521F2B18 177B200C" \
- "BBE11757 7A615D6C 770988C0 BAD946E2 08E24FA0 74E5AB31" \
- "43DB5BFC E0FD108E 4B82D120 A9210801 1A723C12 A787E6D7" \
- "88719A10 BDBA5B26 99C32718 6AF4E23C 1A946834 B6150BDA" \
- "2583E9CA 2AD44CE8 DBBBC2DB 04DE8EF9 2E8EFC14 1FBECAA6" \
- "287C5947 4E6BC05D 99B2964F A090C3A2 233BA186 515BE7ED" \
- "1F612970 CEE2D7AF B81BDD76 2170481C D0069127 D5B05AA9" \
- "93B4EA98 8D8FDDC1 86FFB7DC 90A6C08F 4DF435C9 34028492" \
- "36C3FAB4 D27C7026 C1D4DCB2 602646DE C9751E76 3DBA37BD" \
- "F8FF9406 AD9E530E E5DB382F 413001AE B06A53ED 9027D831" \
- "179727B0 865A8918 DA3EDBEB CF9B14ED 44CE6CBA CED4BB1B" \
- "DB7F1447 E6CC254B 33205151 2BD7AF42 6FB8F401 378CD2BF" \
- "5983CA01 C64B92EC F032EA15 D1721D03 F482D7CE 6E74FEF6" \
- "D55E702F 46980C82 B5A84031 900B1C9E 59E7C97F BEC7E8F3" \
- "23A97A7E 36CC88BE 0F1D45B7 FF585AC5 4BD407B2 2B4154AA" \
- "CC8F6D7E BF48E1D8 14CC5ED2 0F8037E0 A79715EE F29BE328" \
- "06A1D58B B7C5DA76 F550AA3D 8A1FBFF0 EB19CCB1 A313D55C" \
- "DA56C9EC 2EF29632 387FE8D7 6E3C0468 043E8F66 3F4860EE" \
- "12BF2D5B 0B7474D6 E694F91E 6DBE1159 74A3926F 12FEE5E4" \
- "38777CB6 A932DF8C D8BEC4D0 73B931BA 3BC832B6 8D9DD300" \
- "741FA7BF 8AFC47ED 2576F693 6BA42466 3AAB639C 5AE4F568" \
- "3423B474 2BF1C978 238F16CB E39D652D E3FDB8BE FC848AD9" \
- "22222E04 A4037C07 13EB57A8 1A23F0C7 3473FC64 6CEA306B" \
- "4BCBC886 2F8385DD FA9D4B7F A2C087E8 79683303 ED5BDD3A" \
- "062B3CF5 B3A278A6 6D2A13F8 3F44F82D DF310EE0 74AB6A36" \
- "4597E899 A0255DC1 64F31CC5 0846851D F9AB4819 5DED7EA1" \
- "B1D510BD 7EE74D73 FAF36BC3 1ECFA268 359046F4 EB879F92" \
- "4009438B 481C6CD7 889A002E D5EE382B C9190DA6 FC026E47" \
- "9558E447 5677E9AA 9E3050E2 765694DF C81F56E8 80B96E71" \
- "60C980DD 98EDD3DF FFFFFFFF FFFFFFFF"
-#define LOCALSECRETSIZE (512 / BITS_PER_BYTE)
-
/* limits on nonce sizes. See RFC2409 "The internet key exchange (IKE)" 5 */
#define MINIMUM_NONCE_SIZE 8 /* bytes */
#define DEFAULT_NONCE_SIZE 16 /* bytes */
@@ -292,6 +130,92 @@ extern const char sparse_end[];
#define IKE_UDP_PORT 500
+/* IPsec AH transform values
+ * RFC2407 The Internet IP security Domain of Interpretation for ISAKMP 4.4.3
+ * and in http://www.iana.org/assignments/isakmp-registry
+ */
+enum ipsec_authentication_algo {
+ AH_NONE = 0,
+ AH_MD5 = 2,
+ AH_SHA = 3,
+ AH_DES = 4,
+ AH_SHA2_256 = 5,
+ AH_SHA2_384 = 6,
+ AH_SHA2_512 = 7,
+ AH_RIPEMD = 8,
+ AH_AES_XCBC_MAC = 9,
+ AH_RSA = 10
+};
+
+extern enum_names ah_transformid_names;
+
+/* IPsec ESP transform values
+ * RFC2407 The Internet IP security Domain of Interpretation for ISAKMP 4.4.4
+ * and from http://www.iana.org/assignments/isakmp-registry
+ */
+
+enum ipsec_cipher_algo {
+ ESP_NONE = 0,
+ ESP_DES_IV64 = 1,
+ ESP_DES = 2,
+ ESP_3DES = 3,
+ ESP_RC5 = 4,
+ ESP_IDEA = 5,
+ ESP_CAST = 6,
+ ESP_BLOWFISH = 7,
+ ESP_3IDEA = 8,
+ ESP_DES_IV32 = 9,
+ ESP_RC4 = 10,
+ ESP_NULL = 11,
+ ESP_AES = 12,
+ ESP_AES_CTR = 13,
+ ESP_AES_CCM_8 = 14,
+ ESP_AES_CCM_12 = 15,
+ ESP_AES_CCM_16 = 16,
+ ESP_UNASSIGNED_17 = 17,
+ ESP_AES_GCM_8 = 18,
+ ESP_AES_GCM_12 = 19,
+ ESP_AES_GCM_16 = 20,
+ ESP_SEED_CBC = 21,
+ ESP_CAMELLIA = 22,
+ ESP_SERPENT = 252,
+ ESP_TWOFISH = 253
+};
+
+extern enum_names esp_transformid_names;
+
+/* IPCOMP transform values
+ * RFC2407 The Internet IP security Domain of Interpretation for ISAKMP 4.4.5
+ */
+
+enum ipsec_comp_algo {
+ IPSCOMP_NONE = 0,
+ IPCOMP_OUI = 1,
+ IPCOMP_DEFLATE = 2,
+ IPCOMP_LZS = 3,
+ IPCOMP_LZJH = 4
+};
+
+extern enum_names ipcomp_transformid_names;
+
+/* Certificate type values
+ * RFC 2408 ISAKMP, chapter 3.9
+ */
+enum ipsec_cert_type {
+ CERT_NONE= 0,
+ CERT_PKCS7_WRAPPED_X509= 1,
+ CERT_PGP= 2,
+ CERT_DNS_SIGNED_KEY= 3,
+ CERT_X509_SIGNATURE= 4,
+ CERT_X509_KEY_EXCHANGE= 5,
+ CERT_KERBEROS_TOKENS= 6,
+ CERT_CRL= 7,
+ CERT_ARL= 8,
+ CERT_SPKI= 9,
+ CERT_X509_ATTRIBUTE= 10,
+ CERT_RAW_RSA_KEY= 11
+};
+
/* RFC 2560 OCSP - certificate status */
typedef enum {
@@ -759,15 +683,9 @@ extern enum_names protocol_names;
: (p)==PROTO_IPCOMP ? enum_show(&ipcomp_transformid_names, (t)) \
: "??")
-/* many transform values are moved to freeswan/ipsec_policy.h */
-
-extern enum_names isakmp_transformid_names;
-
#define KEY_IKE 1
-extern enum_names ah_transformid_names;
-extern enum_names esp_transformid_names;
-extern enum_names ipcomp_transformid_names;
+extern enum_names isakmp_transformid_names;
/* the following are from RFC 2393/draft-shacham-ippcp-rfc2393bis-05.txt 3.3 */
typedef u_int16_t cpi_t;
diff --git a/src/pluto/crl.c b/src/pluto/crl.c
index b8cdb435b..1d9b5445e 100644
--- a/src/pluto/crl.c
+++ b/src/pluto/crl.c
@@ -23,7 +23,6 @@
#include <sys/types.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include <asn1/asn1.h>
#include <asn1/asn1_parser.h>
diff --git a/src/pluto/crypto.c b/src/pluto/crypto.c
index 8ea6d87f6..e02dc25eb 100644
--- a/src/pluto/crypto.c
+++ b/src/pluto/crypto.c
@@ -14,7 +14,6 @@
*/
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "constants.h"
#include "defs.h"
diff --git a/src/pluto/dnskey.c b/src/pluto/dnskey.c
index b59b172ed..bd190530c 100644
--- a/src/pluto/dnskey.c
+++ b/src/pluto/dnskey.c
@@ -28,7 +28,6 @@
#include <sys/queue.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "constants.h"
#include "adns.h" /* needs <resolv.h> */
diff --git a/src/pluto/id.c b/src/pluto/id.c
index bca483e1c..f34775e68 100644
--- a/src/pluto/id.c
+++ b/src/pluto/id.c
@@ -26,7 +26,6 @@
#include <sys/queue.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "constants.h"
#include "defs.h"
@@ -36,7 +35,7 @@
#include "packet.h"
#include "whack.h"
-const struct id empty_id; /* ID_NONE */
+const struct id empty_id; /* ID_ANY */
enum myid_state myid_state = MYID_UNKNOWN;
struct id myids[MYID_SPECIFIED+1]; /* %myid */
@@ -48,7 +47,7 @@ char *myid_str[MYID_SPECIFIED+1]; /* string form of IDs */
void
init_id(void)
{
- passert(empty_id.kind == ID_NONE);
+ passert(empty_id.kind == ID_ANY);
myid_state = MYID_UNKNOWN;
{
enum myid_state s;
@@ -191,7 +190,7 @@ atoid(char *src, struct id *id, bool myid_ok)
if (streq(src, "%any") || streq(src, "0.0.0.0"))
{
/* any ID will be accepted */
- id->kind = ID_NONE;
+ id->kind = ID_ANY;
}
else
{
@@ -287,7 +286,7 @@ idtoa(const struct id *id, char *dst, size_t dstlen)
id = resolve_myid(id);
switch (id->kind)
{
- case ID_NONE:
+ case ID_ANY:
n = snprintf(dst, dstlen, "(none)");
break;
case ID_IPV4_ADDR:
@@ -368,7 +367,7 @@ unshare_id_content(struct id *id)
id->name = chunk_clone(id->name);
break;
case ID_MYID:
- case ID_NONE:
+ case ID_ANY:
case ID_IPV4_ADDR:
case ID_IPV6_ADDR:
break;
@@ -389,7 +388,7 @@ free_id_content(struct id *id)
free(id->name.ptr);
break;
case ID_MYID:
- case ID_NONE:
+ case ID_ANY:
case ID_IPV4_ADDR:
case ID_IPV6_ADDR:
break;
@@ -408,7 +407,7 @@ same_id(const struct id *a, const struct id *b)
return FALSE;
switch (a->kind)
{
- case ID_NONE:
+ case ID_ANY:
return TRUE; /* kind of vacuous */
case ID_IPV4_ADDR:
@@ -450,7 +449,7 @@ same_id(const struct id *a, const struct id *b)
bool
match_id(const struct id *a, const struct id *b, int *wildcards)
{
- if (b->kind == ID_NONE)
+ if (b->kind == ID_ANY)
{
*wildcards = MAX_WILDCARDS;
return TRUE;
@@ -472,7 +471,7 @@ id_count_wildcards(const struct id *id)
{
switch (id->kind)
{
- case ID_NONE:
+ case ID_ANY:
return MAX_WILDCARDS;
case ID_DER_ASN1_DN:
return dn_count_wildcards(id->name);
@@ -495,7 +494,7 @@ build_id_payload(struct isakmp_ipsec_id *hd, chunk_t *tl, struct end *end)
hd->isaiid_idtype = id->kind;
switch (id->kind)
{
- case ID_NONE:
+ case ID_ANY:
hd->isaiid_idtype = aftoinfo(addrtypeof(&end->host_addr))->id_addr;
tl->len = addrbytesptr(&end->host_addr
, (const unsigned char **)&tl->ptr); /* sets tl->ptr too */
diff --git a/src/pluto/ike_alg.c b/src/pluto/ike_alg.c
index 42c71e953..92d9e854b 100644
--- a/src/pluto/ike_alg.c
+++ b/src/pluto/ike_alg.c
@@ -20,7 +20,6 @@
#include <sys/queue.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include <library.h>
#include <debug.h>
diff --git a/src/pluto/ipsec_doi.c b/src/pluto/ipsec_doi.c
index 0a30c542f..52f5553f0 100644
--- a/src/pluto/ipsec_doi.c
+++ b/src/pluto/ipsec_doi.c
@@ -28,7 +28,6 @@
#include <sys/time.h> /* for gettimeofday */
#include <freeswan.h>
-#include <ipsec_policy.h>
#include <library.h>
#include <asn1/asn1.h>
@@ -4379,7 +4378,7 @@ static stf_status quick_inI1_outR1_start_query(struct verify_oppo_bundle *b,
* legal).
*/
our_id = resolve_myid(&c->spd.this.id);
- if (our_id->kind == ID_NONE)
+ if (our_id->kind == ID_ANY)
{
iptoid(&c->spd.this.host_addr, &our_id_space);
our_id = &our_id_space;
diff --git a/src/pluto/kernel.c b/src/pluto/kernel.c
index 395dde7c0..fdc2c4c3c 100644
--- a/src/pluto/kernel.c
+++ b/src/pluto/kernel.c
@@ -29,7 +29,6 @@
#include <arpa/inet.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include <library.h>
#include <crypto/rngs/rng.h>
diff --git a/src/pluto/kernel_alg.c b/src/pluto/kernel_alg.c
index dfa9ac293..98ea62830 100644
--- a/src/pluto/kernel_alg.c
+++ b/src/pluto/kernel_alg.c
@@ -26,7 +26,6 @@
#include <pfkey.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "constants.h"
#include "defs.h"
diff --git a/src/pluto/keys.c b/src/pluto/keys.c
index e75cd8fd6..031d00a46 100644
--- a/src/pluto/keys.c
+++ b/src/pluto/keys.c
@@ -32,7 +32,6 @@
#endif
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "constants.h"
#include "defs.h"
@@ -183,7 +182,7 @@ get_secret(const struct connection *c, enum PrivateKeyKind kind, bool asym)
}
else if (kind == PPK_PSK
&& (c->policy & (POLICY_PSK | POLICY_XAUTH_PSK))
- && ((c->kind == CK_TEMPLATE && c->spd.that.id.kind == ID_NONE) ||
+ && ((c->kind == CK_TEMPLATE && c->spd.that.id.kind == ID_ANY) ||
(c->kind == CK_INSTANCE && id_is_ipaddr(&c->spd.that.id))))
{
/* roadwarrior: replace him with 0.0.0.0 */
@@ -1428,7 +1427,7 @@ add_x509_public_key(x509cert_t *cert , time_t until
struct id id = empty_id;
gntoid(&id, gn);
- if (id.kind != ID_NONE)
+ if (id.kind != ID_ANY)
{
pk = allocate_RSA_public_key(c);
pk->id = id;
diff --git a/src/pluto/nat_traversal.c b/src/pluto/nat_traversal.c
index 5f27bf0da..de3972fe2 100644
--- a/src/pluto/nat_traversal.c
+++ b/src/pluto/nat_traversal.c
@@ -25,7 +25,6 @@
#include <sys/queue.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include <pfkeyv2.h>
#include <pfkey.h>
diff --git a/src/pluto/ocsp.c b/src/pluto/ocsp.c
index 6613ef119..1445f4b8e 100644
--- a/src/pluto/ocsp.c
+++ b/src/pluto/ocsp.c
@@ -22,7 +22,6 @@
#include <fcntl.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include <library.h>
#include <asn1/asn1.h>
diff --git a/src/pluto/pgp.c b/src/pluto/pgp.c
index 999a771a4..e80b2cc5b 100644
--- a/src/pluto/pgp.c
+++ b/src/pluto/pgp.c
@@ -17,7 +17,6 @@
#include <time.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include <library.h>
#include <crypto/hashers/hasher.h>
diff --git a/src/pluto/smartcard.c b/src/pluto/smartcard.c
index 9ca92814c..855a8a12b 100644
--- a/src/pluto/smartcard.c
+++ b/src/pluto/smartcard.c
@@ -28,7 +28,6 @@
#include <dlfcn.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "constants.h"
diff --git a/src/pluto/spdb.c b/src/pluto/spdb.c
index 5ab6916a0..723124d0a 100644
--- a/src/pluto/spdb.c
+++ b/src/pluto/spdb.c
@@ -21,7 +21,6 @@
#include <sys/queue.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include "constants.h"
#include "defs.h"
diff --git a/src/pluto/x509.c b/src/pluto/x509.c
index fe2b049c8..9a5714bc9 100644
--- a/src/pluto/x509.c
+++ b/src/pluto/x509.c
@@ -24,7 +24,6 @@
#include <sys/types.h>
#include <freeswan.h>
-#include <ipsec_policy.h>
#include <asn1/asn1.h>
#include <asn1/asn1_parser.h>
@@ -1027,7 +1026,7 @@ void select_x509cert_id(x509cert_t *cert, struct id *end_id)
{
bool copy_subject_dn = TRUE; /* ID is subject DN */
- if (end_id->kind != ID_NONE) /* check for matching subjectAltName */
+ if (end_id->kind != ID_ANY) /* check for matching subjectAltName */
{
generalName_t *gn = cert->subjectAltName;
@@ -1047,7 +1046,7 @@ void select_x509cert_id(x509cert_t *cert, struct id *end_id)
if (copy_subject_dn)
{
- if (end_id->kind != ID_NONE && end_id->kind != ID_DER_ASN1_DN)
+ if (end_id->kind != ID_ANY && end_id->kind != ID_DER_ASN1_DN)
{
char buf[BUF_LEN];
@@ -1479,7 +1478,7 @@ void gntoid(struct id *id, const generalName_t *gn)
id->name = gn->name;
break;
default:
- id->kind = ID_NONE;
+ id->kind = ID_ANY;
id->name = chunk_empty;
}
}
diff --git a/src/starter/Makefile.am b/src/starter/Makefile.am
index a859c33b6..336cc759a 100644
--- a/src/starter/Makefile.am
+++ b/src/starter/Makefile.am
@@ -13,7 +13,14 @@ INCLUDES = \
-I$(top_srcdir)/src/whack \
-I$(top_srcdir)/src/stroke
-AM_CFLAGS = -DIPSEC_DIR=\"${ipsecdir}\" -DIPSEC_CONFDIR=\"${confdir}\" -DIPSEC_PIDDIR=\"${piddir}\" -DIPSEC_EAPDIR=\"${eapdir}\" -DDEBUG
+AM_CFLAGS = \
+-DIPSEC_DIR=\"${ipsecdir}\" \
+-DIPSEC_CONFDIR=\"${confdir}\" \
+-DIPSEC_PIDDIR=\"${piddir}\" \
+-DIPSEC_EAPDIR=\"${eapdir}\" \
+-DNO_CREDENTIAL_FACTORY \
+-DDEBUG
+
starter_LDADD = defs.o $(top_builddir)/src/libfreeswan/libfreeswan.a $(top_builddir)/src/libstrongswan/libstrongswan.la
EXTRA_DIST = parser.l parser.y keywords.txt ipsec.conf
dist_man_MANS = ipsec.conf.5 starter.8
diff --git a/src/whack/Makefile.am b/src/whack/Makefile.am
index 27f856231..be74e22f7 100644
--- a/src/whack/Makefile.am
+++ b/src/whack/Makefile.am
@@ -11,5 +11,7 @@ whack_LDADD = \
$(top_builddir)/src/libstrongswan/libstrongswan.la \
$(top_builddir)/src/libfreeswan/libfreeswan.a
-AM_CFLAGS = -DDEBUG
+AM_CFLAGS = \
+-DNO_CREDENTIAL_FACTORY \
+-DDEBUG