[libnetfilter_conntrack] utils: fix wrong use of errno in example files

Pablo Neira netfilter-cvslog-bounces at lists.netfilter.org
Wed Dec 10 22:53:16 CET 2008


Gitweb:		http://git.netfilter.org/cgi-bin/gitweb.cgi?p=libnetfilter_conntrack.git;a=commit;h=f44b2b59ec22903d98395a0543502551f9685e4d
commit f44b2b59ec22903d98395a0543502551f9685e4d
Author:     Pablo Neira Ayuso <pablo at netfilter.org>
AuthorDate: Wed Dec 10 22:50:23 2008 +0100
Commit:     Pablo Neira Ayuso <pablo at netfilter.org>
CommitDate: Wed Dec 10 22:50:23 2008 +0100

    utils: fix wrong use of errno in example files
    
    This patch removes the use of strerr(errno) when the returned
    valued is != -1. This fixes random segfaults in my x86_64
    machines. According to the documentation, errno should not be
    used unless the returned value is -1.
    
    This patch also includes some missing nfct_close() calls in
    the examples.
    
    Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>
       via  f44b2b59ec22903d98395a0543502551f9685e4d (commit)
      from  367324c4af8167a9384f23fb419b31b9cf960ac0 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.

- Log -----------------------------------------------------------------
commit f44b2b59ec22903d98395a0543502551f9685e4d
Author: Pablo Neira Ayuso <pablo at netfilter.org>
Date:   Wed Dec 10 22:50:23 2008 +0100

    utils: fix wrong use of errno in example files
    
    This patch removes the use of strerr(errno) when the returned
    valued is != -1. This fixes random segfaults in my x86_64
    machines. According to the documentation, errno should not be
    used unless the returned value is -1.
    
    This patch also includes some missing nfct_close() calls in
    the examples.
    
    Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>

-----------------------------------------------------------------------

 utils/conntrack_create.c     |    9 ++++++---
 utils/conntrack_create_nat.c |    9 ++++++---
 utils/conntrack_delete.c     |    9 ++++++---
 utils/conntrack_dump.c       |    9 ++++++---
 utils/conntrack_events.c     |    9 ++++++---
 utils/conntrack_filter.c     |    9 ++++++---
 utils/conntrack_flush.c      |    9 ++++++---
 utils/conntrack_get.c        |    9 ++++++---
 utils/conntrack_grp_create.c |   11 +++++++----
 utils/conntrack_master.c     |   16 +++++++++++-----
 utils/conntrack_update.c     |    9 ++++++---
 utils/expect_create.c        |   17 ++++++++++++-----
 utils/expect_delete.c        |    9 +++++----
 utils/expect_dump.c          |   11 +++++++----
 utils/expect_events.c        |   11 ++++++-----
 utils/expect_flush.c         |   11 +++++++----
 utils/expect_get.c           |   11 +++++++----
 17 files changed, 116 insertions(+), 62 deletions(-)
This patch removes the use of strerr(errno) when the returned
valued is != -1. This fixes random segfaults in my x86_64
machines. According to the documentation, errno should not be
used unless the returned value is -1.

This patch also includes some missing nfct_close() calls in
the examples.

Signed-off-by: Pablo Neira Ayuso <pablo at netfilter.org>

diff --git a/utils/conntrack_create.c b/utils/conntrack_create.c
index 34efa57..56a30ff 100644
--- a/utils/conntrack_create.c
+++ b/utils/conntrack_create.c
@@ -39,10 +39,13 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_CREATE, ct);
 
-	printf("TEST: create conntrack (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: create conntrack ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_create_nat.c b/utils/conntrack_create_nat.c
index 3995cd3..327d1d2 100644
--- a/utils/conntrack_create_nat.c
+++ b/utils/conntrack_create_nat.c
@@ -40,10 +40,13 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_CREATE, ct);
 
-	printf("TEST: create conntrack (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: create conntrack ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_delete.c b/utils/conntrack_delete.c
index 55d2d52..227319f 100644
--- a/utils/conntrack_delete.c
+++ b/utils/conntrack_delete.c
@@ -33,10 +33,13 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_DESTROY, ct);
 
-	printf("TEST: delete conntrack (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: delete conntrack ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_dump.c b/utils/conntrack_dump.c
index d8ae4f1..4ef9168 100644
--- a/utils/conntrack_dump.c
+++ b/utils/conntrack_dump.c
@@ -32,10 +32,13 @@ int main()
 	nfct_callback_register(h, NFCT_T_ALL, cb, NULL);
 	ret = nfct_query(h, NFCT_Q_DUMP, &family);
 
-	printf("TEST: dump conntrack (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: get conntrack ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_events.c b/utils/conntrack_events.c
index 4be5d48..ab3125c 100644
--- a/utils/conntrack_events.c
+++ b/utils/conntrack_events.c
@@ -40,10 +40,13 @@ int main()
 
 	ret = nfct_catch(h);
 
-	printf("TEST: OK (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: conntrack events ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_filter.c b/utils/conntrack_filter.c
index fdaea68..7c44c50 100644
--- a/utils/conntrack_filter.c
+++ b/utils/conntrack_filter.c
@@ -80,10 +80,13 @@ int main()
 
 	ret = nfct_catch(h);
 
-	printf("TEST: OK (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: conntrack events ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_flush.c b/utils/conntrack_flush.c
index 43e8d78..92aac86 100644
--- a/utils/conntrack_flush.c
+++ b/utils/conntrack_flush.c
@@ -19,10 +19,13 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_FLUSH, &family);
 
-	printf("TEST: flush conntrack (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: flush conntrack ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_get.c b/utils/conntrack_get.c
index 68ee2fd..5595794 100644
--- a/utils/conntrack_get.c
+++ b/utils/conntrack_get.c
@@ -47,10 +47,13 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_GET, ct);
 
-	printf("TEST: get conntrack (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: get conntrack ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_grp_create.c b/utils/conntrack_grp_create.c
index a0bb0d7..3b62d6d 100644
--- a/utils/conntrack_grp_create.c
+++ b/utils/conntrack_grp_create.c
@@ -44,10 +44,13 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_CREATE, ct);
 
-	printf("TEST: create conntrack (%d)(%s)\n", ret, strerror(errno));
-
-	if (ret == -1)
-		exit(EXIT_FAILURE);
+	printf("TEST: create conntrack ");
+	if (ret == -1) 
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_master.c b/utils/conntrack_master.c
index bdee474..1cd7490 100644
--- a/utils/conntrack_master.c
+++ b/utils/conntrack_master.c
@@ -39,7 +39,11 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_CREATE, ct);
 
-	printf("TEST: create conntrack (%d)(%s)\n", ret, strerror(errno));
+	printf("TEST: create conntrack ");
+	if (ret == -1)
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	if (ret == -1)
 		exit(EXIT_FAILURE);
@@ -77,11 +81,13 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_CREATE, ct);
 
-	printf("TEST: create confirmed conntrack (%d)(%s)\n", 
-	       ret, strerror(errno));
-
+	printf("TEST: create confirmed conntrack ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/conntrack_update.c b/utils/conntrack_update.c
index 21e3054..0256b7a 100644
--- a/utils/conntrack_update.c
+++ b/utils/conntrack_update.c
@@ -38,10 +38,13 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_UPDATE, ct);
 
-	printf("TEST: update conntrack (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: update conntrack ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
+
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/expect_create.c b/utils/expect_create.c
index b366d01..330ef66 100644
--- a/utils/expect_create.c
+++ b/utils/expect_create.c
@@ -48,7 +48,11 @@ int main()
 
 	ret = nfct_query(h, NFCT_Q_CREATE, master);
 
-	printf("TEST: add master conntrack (%d)(%s)\n", ret, strerror(errno));
+	printf("TEST: add master conntrack ");
+	if (ret == -1)
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
 
@@ -107,10 +111,13 @@ int main()
 
 	ret = nfexp_query(h, NFCT_Q_CREATE, exp);
 
-	printf("TEST: create expectation (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: create expectation ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
+
+	nfct_close(h);
 
-	exit(EXIT_SUCCESS);
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/expect_delete.c b/utils/expect_delete.c
index e6255da..a402757 100644
--- a/utils/expect_delete.c
+++ b/utils/expect_delete.c
@@ -41,10 +41,11 @@ int main()
 
 	ret = nfexp_query(h, NFCT_Q_DESTROY, exp);
 
-	printf("TEST: delete expectation (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: delete expectation ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
-	exit(EXIT_SUCCESS);
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/expect_dump.c b/utils/expect_dump.c
index d636d18..fa25bad 100644
--- a/utils/expect_dump.c
+++ b/utils/expect_dump.c
@@ -31,10 +31,13 @@ int main()
 	nfexp_callback_register(h, NFCT_T_ALL, cb, NULL);
 	ret = nfexp_query(h, NFCT_Q_DUMP, &family);
 
-	printf("TEST: get expectation (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: dumo expectation ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
+
+	nfct_close(h);
 
-	exit(EXIT_SUCCESS);
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/expect_events.c b/utils/expect_events.c
index 956ca42..a8b84cc 100644
--- a/utils/expect_events.c
+++ b/utils/expect_events.c
@@ -37,12 +37,13 @@ int main()
 
 	ret = nfexp_catch(h);
 
-	printf("TEST: OK (%d)(%s)\n", ret, strerror(errno));
+	printf("TEST: expectation events ");
+	if (ret == -1)
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
 
 	nfct_close(h);
 
-	if (ret == -1)
-		exit(EXIT_FAILURE);
-
-	exit(EXIT_SUCCESS);
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/expect_flush.c b/utils/expect_flush.c
index 22ae3d3..4e28c1c 100644
--- a/utils/expect_flush.c
+++ b/utils/expect_flush.c
@@ -18,10 +18,13 @@ int main()
 
 	ret = nfexp_query(h, NFCT_Q_FLUSH, &family);
 
-	printf("TEST: flush expectation (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: flush expectations ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
+
+	nfct_close(h);
 
-	exit(EXIT_SUCCESS);
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }
diff --git a/utils/expect_get.c b/utils/expect_get.c
index b9518bc..cda5a3b 100644
--- a/utils/expect_get.c
+++ b/utils/expect_get.c
@@ -54,10 +54,13 @@ int main()
 	nfexp_callback_register(h, NFCT_T_ALL, cb, NULL);
 	ret = nfexp_query(h, NFCT_Q_GET, exp);
 
-	printf("TEST: get expectation (%d)(%s)\n", ret, strerror(errno));
-
+	printf("TEST: get expectation ");
 	if (ret == -1)
-		exit(EXIT_FAILURE);
+		printf("(%d)(%s)\n", ret, strerror(errno));
+	else
+		printf("(OK)\n");
+
+	nfct_close(h);
 
-	exit(EXIT_SUCCESS);
+	ret == -1 ? exit(EXIT_FAILURE) : exit(EXIT_SUCCESS);
 }



More information about the netfilter-cvslog mailing list