summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorPablo Neira Ayuso <pablo@netfilter.org>2011-02-17 18:05:58 +0100
committerPablo Neira Ayuso <pablo@netfilter.org>2011-02-17 18:05:58 +0100
commit3e6806e7690d0ed79d9aed82dc44d1eaa676d3e8 (patch)
tree9605e4dccaa01300e92ac93b67b6db9ea6c0b798 /src
parent2217eb4c53a54eabbc09e043209181c483e2eace (diff)
conntrack: fix segfault in nfct_copy() if secctx of origin is not set
This problem was caught by qa/test_api. Signed-off-by: Pablo Neira Ayuso <pablo@netfilter.org>
Diffstat (limited to 'src')
-rw-r--r--src/conntrack/copy.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/src/conntrack/copy.c b/src/conntrack/copy.c
index 591dde1..94d0711 100644
--- a/src/conntrack/copy.c
+++ b/src/conntrack/copy.c
@@ -418,9 +418,12 @@ static void copy_attr_zone(struct nf_conntrack *dest,
static void copy_attr_secctx(struct nf_conntrack *dest,
const struct nf_conntrack *orig)
{
- if (dest->secctx)
+ if (dest->secctx) {
free(dest->secctx);
- dest->secctx = strdup(orig->secctx);
+ dest->secctx = NULL;
+ }
+ if (orig->secctx)
+ dest->secctx = strdup(orig->secctx);
}
static void copy_attr_timestamp_start(struct nf_conntrack *dest,