aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTobias Brunner <tobias@strongswan.org>2012-09-28 16:03:09 +0200
committerTobias Brunner <tobias@strongswan.org>2012-09-28 16:28:46 +0200
commit9d5b688a11dd255f554b6821a956f87a6df1a29f (patch)
treed8aab9cdbd2c072d5f491f51b50acc2351dc683c /src
parent0031bf3eaf0cf85ab3cf385d633acb2811376682 (diff)
downloadstrongswan-9d5b688a11dd255f554b6821a956f87a6df1a29f.tar.bz2
strongswan-9d5b688a11dd255f554b6821a956f87a6df1a29f.tar.xz
Properly initialize sockaddr_in struct in fast and dhcp plugins
Diffstat (limited to 'src')
-rw-r--r--src/libcharon/plugins/dhcp/dhcp_socket.c11
-rw-r--r--src/libfast/smtp.c11
2 files changed, 14 insertions, 8 deletions
diff --git a/src/libcharon/plugins/dhcp/dhcp_socket.c b/src/libcharon/plugins/dhcp/dhcp_socket.c
index 104c71c01..f469c5a35 100644
--- a/src/libcharon/plugins/dhcp/dhcp_socket.c
+++ b/src/libcharon/plugins/dhcp/dhcp_socket.c
@@ -648,7 +648,13 @@ METHOD(dhcp_socket_t, destroy, void,
dhcp_socket_t *dhcp_socket_create()
{
private_dhcp_socket_t *this;
- struct sockaddr_in src;
+ struct sockaddr_in src = {
+ .sin_family = AF_INET,
+ .sin_port = htons(DHCP_CLIENT_PORT),
+ .sin_addr = {
+ .s_addr = INADDR_ANY,
+ },
+ };
int on = 1;
struct sock_filter dhcp_filter_code[] = {
BPF_STMT(BPF_LD+BPF_B+BPF_ABS,
@@ -738,9 +744,6 @@ dhcp_socket_t *dhcp_socket_create()
destroy(this);
return NULL;
}
- src.sin_family = AF_INET;
- src.sin_port = htons(DHCP_CLIENT_PORT);
- src.sin_addr.s_addr = INADDR_ANY;
if (bind(this->send, (struct sockaddr*)&src, sizeof(src)) == -1)
{
DBG1(DBG_CFG, "unable to bind DHCP send socket: %s", strerror(errno));
diff --git a/src/libfast/smtp.c b/src/libfast/smtp.c
index 4118c74a6..1375c2944 100644
--- a/src/libfast/smtp.c
+++ b/src/libfast/smtp.c
@@ -136,7 +136,13 @@ METHOD(smtp_t, destroy, void,
smtp_t *smtp_create()
{
private_smtp_t *this;
- struct sockaddr_in addr;
+ struct sockaddr_in addr = {
+ .sin_family = AF_INET,
+ .sin_port = htons(25),
+ .sin_addr = {
+ .s_addr = htonl(INADDR_LOOPBACK),
+ },
+ };
int s;
INIT(this,
@@ -153,9 +159,6 @@ smtp_t *smtp_create()
free(this);
return NULL;
}
- addr.sin_family = AF_INET;
- addr.sin_addr.s_addr = htonl(INADDR_LOOPBACK);
- addr.sin_port = htons(25);
if (connect(s, (struct sockaddr*)&addr, sizeof(addr)) < 0)
{
DBG1(DBG_LIB, "connecting to SMTP server failed: %s", strerror(errno));