components/openscap/patches/system_info3.c.patch
author Rich Burridge <rich.burridge@oracle.com>
Mon, 05 Jan 2015 13:33:36 -0800
changeset 3581 ac4a2e93e035
parent 2016 50e1c2ae28b8
permissions -rw-r--r--
20231085 problem in UTILITY/ERLANG
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
2016
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
     1
This patch fixes the issue, where the system_info probe crashes on solaris,
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
     2
 when the network interfaces cannot be detected. Fix provides the default
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
     3
 loop back interface as default.
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
     4
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
     5
This patch has not been contributed upstream, but is planned to be done by
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
     6
 2014-Aug-15.
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
     7
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
     8
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
     9
--- openscap-1.0.0/src/OVAL/probes/independent/system_info.c.~2~	2014-07-24 11:02:52.698291479 -0700
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    10
+++ openscap-1.0.0/src/OVAL/probes/independent/system_info.c	2014-07-25 11:20:07.096049635 -0700
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    11
@@ -170,6 +170,7 @@
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    12
        char host[NI_MAXHOST], *mac;
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    13
        SEXP_t *attrs;
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    14
        SEXP_t *r0, *r1, *r2;
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    15
+	int item_added = 0;
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    16
 
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    17
        if (getifaddrs(&ifaddr) == -1)
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    18
                return rc;
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    19
@@ -213,8 +214,6 @@
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    20
 				goto leave2;
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    21
 			}
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    22
 		}
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    23
-
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    24
-
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    25
 	        attrs = probe_attr_creat("name",
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    26
                                  r0 = SEXP_string_newf("%s", ifa->ifa_name),
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    27
                                  "ip_address",
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    28
@@ -223,10 +222,22 @@
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    29
                                  r2 = SEXP_string_newf("%s", mac),
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    30
                                  NULL);
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    31
 	        probe_item_ent_add(item, "interface", attrs, NULL);
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    32
+		item_added = 1;
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    33
         	SEXP_vfree(attrs, r0, r1, r2, NULL);
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    34
 	}
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    35
 leave2:
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    36
         close(fd);
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    37
+	if (item_added == 0) {
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    38
+		attrs = probe_attr_creat("name",
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    39
+					 r0 = SEXP_string_newf("dummy0"),
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    40
+					 "ip_address",
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    41
+					 r1 = SEXP_string_newf("127.0.0.1"),
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    42
+					 "mac_address",
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    43
+					 r2 = SEXP_string_newf("aa:bb:cc:dd:ee:ff"),
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    44
+					 NULL);
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    45
+		probe_item_ent_add(item, "interface", attrs, NULL);
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    46
+		SEXP_vfree(attrs, r0, r1, r2, NULL);
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    47
+	}
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    48
 leave1:
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    49
         freeifaddrs(ifaddr);
50e1c2ae28b8 19173594 oscap crashes when compliance is run
Jacob Varughese <jacob.varughese@oracle.com>
parents:
diff changeset
    50
         return rc;