components/trousers/patches/tspi_rpc_hosttable.c.patch
author Craig Mohrman <craig.mohrman@oracle.com>
Thu, 04 Aug 2016 08:26:36 -0700
changeset 6548 24913c16931e
parent 5941 db8aa9865e9f
permissions -rw-r--r--
PSARC/2016/303 enable rsyslog as default Solaris logger 24362425 rsyslog should degrade service if syslog.conf has been modified
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
     1
# Add solaris-specific #pragma init and fini.
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
     2
# Add NULL pointer check.
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
     3
# Except for the #pragmas, this patch is suitable for upstream use.
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
     4
#
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
     5
+++ src/tspi/rpc/hosttable.c	2014-04-24 11:05:44.000000000 -0700
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
     6
--- src/tspi/rpc/hosttable.c	2016-04-18 13:55:57.988441566 -0700
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
     7
@@ -21,8 +21,8 @@
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
     8
 
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
     9
 static struct host_table *ht = NULL;
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    10
 
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    11
-TSS_RESULT
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    12
-host_table_init()
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    13
+static TSS_RESULT
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    14
+host_table_init(void)
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    15
 {
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    16
 	ht = calloc(1, sizeof(struct host_table));
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    17
 	if (ht == NULL) {
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    18
@@ -35,9 +35,8 @@
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    19
 	return TSS_SUCCESS;
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    20
 }
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    21
 
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    22
-#ifdef SOLARIS
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    23
-#pragma init(_init)
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    24
-void _init(void)
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    25
+#ifdef SOLARIS && !defined(__GNUC__)
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    26
+static void my_init(void)
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    27
 #else
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    28
 static void __attribute__ ((constructor)) my_init(void)
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    29
 #endif
777
e2e604cdbd6a 7123028 Problem with crypto/tss
Dan Anderson <dan.anderson@oracle.com>
parents: 259
diff changeset
    30
@@ -46,11 +45,14 @@
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    31
 	__tspi_obj_list_init();
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    32
 }
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    33
 
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    34
-void
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    35
+static void
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    36
 host_table_final()
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    37
 {
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    38
 	struct host_table_entry *hte, *next = NULL;
777
e2e604cdbd6a 7123028 Problem with crypto/tss
Dan Anderson <dan.anderson@oracle.com>
parents: 259
diff changeset
    39
 
e2e604cdbd6a 7123028 Problem with crypto/tss
Dan Anderson <dan.anderson@oracle.com>
parents: 259
diff changeset
    40
+	if (ht == NULL) /* no host table to free */
e2e604cdbd6a 7123028 Problem with crypto/tss
Dan Anderson <dan.anderson@oracle.com>
parents: 259
diff changeset
    41
+		return;
e2e604cdbd6a 7123028 Problem with crypto/tss
Dan Anderson <dan.anderson@oracle.com>
parents: 259
diff changeset
    42
+
e2e604cdbd6a 7123028 Problem with crypto/tss
Dan Anderson <dan.anderson@oracle.com>
parents: 259
diff changeset
    43
 	MUTEX_LOCK(ht->lock);
e2e604cdbd6a 7123028 Problem with crypto/tss
Dan Anderson <dan.anderson@oracle.com>
parents: 259
diff changeset
    44
 
e2e604cdbd6a 7123028 Problem with crypto/tss
Dan Anderson <dan.anderson@oracle.com>
parents: 259
diff changeset
    45
 	for (hte = ht->entries; hte; hte = next) {
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    46
@@ -69,9 +71,8 @@
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    47
 	ht = NULL;
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    48
 }
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    49
 
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    50
-#ifdef SOLARIS
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    51
-#pragma fini(_fini)
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    52
-void _fini(void)
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    53
+#ifdef SOLARIS && !defined(__GNUC__)
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    54
+static void my_fini(void)
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    55
 #else
5941
db8aa9865e9f 15776792 Upgrade TrouSerS TPM library to 0.3.13
Dan Anderson <dan.anderson@oracle.com>
parents: 777
diff changeset
    56
 static void __attribute__ ((destructor)) my_fini(void)
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    57
 #endif
777
e2e604cdbd6a 7123028 Problem with crypto/tss
Dan Anderson <dan.anderson@oracle.com>
parents: 259
diff changeset
    58
@@ -79,6 +80,11 @@
259
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    59
 	host_table_final();
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    60
 }
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    61
 
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    62
+#ifdef SOLARIS
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    63
+#pragma init(my_init)
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    64
+#pragma fini(my_fini)
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    65
+#endif
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    66
+
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    67
 TSS_RESULT
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    68
 __tspi_add_table_entry(TSS_HCONTEXT tspContext, BYTE *host, int type, struct host_table_entry **ret)
520697a05dde 7045320 Move trousers from SFW to Userland
Wyllys Ingersoll <Wyllys.Ingersoll@Oracle.COM>
parents:
diff changeset
    69
 {