1 #!/bin/sh 2 3 awk ' 4 /- join\(/ { 5 printf(" * WARNING: do not edit!\n"); 6 i = index(FILENAME, "/crypto/external"); 7 s = substr(FILENAME, i); 8 printf(" * Generated by Makefile from /usr/src%s\n", s); 9 next; 10 } 11 /use OpenSSL/ { 12 next; 13 } 14 /^\{-/ { 15 next; 16 } 17 /^-}/ { 18 next; 19 } 20 /generate_stack_string_macros\(/ { 21 V="SKM_DEFINE_STACK_OF_INTERNAL(OPENSSL_STRING, char, char)\n" 22 V=V"#define sk_OPENSSL_STRING_num(sk) OPENSSL_sk_num(ossl_check_const_OPENSSL_STRING_sk_type(sk))\n" 23 V=V"#define sk_OPENSSL_STRING_value(sk, idx) ((char *)OPENSSL_sk_value(ossl_check_const_OPENSSL_STRING_sk_type(sk), (idx)))\n" 24 V=V"#define sk_OPENSSL_STRING_new(cmp) ((STACK_OF(OPENSSL_STRING) *)OPENSSL_sk_new(ossl_check_OPENSSL_STRING_compfunc_type(cmp)))\n" 25 V=V"#define sk_OPENSSL_STRING_new_null() ((STACK_OF(OPENSSL_STRING) *)OPENSSL_sk_new_null())\n" 26 V=V"#define sk_OPENSSL_STRING_new_reserve(cmp, n) ((STACK_OF(OPENSSL_STRING) *)OPENSSL_sk_new_reserve(ossl_check_OPENSSL_STRING_compfunc_type(cmp), (n)))\n" 27 V=V"#define sk_OPENSSL_STRING_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_OPENSSL_STRING_sk_type(sk), (n))\n" 28 V=V"#define sk_OPENSSL_STRING_free(sk) OPENSSL_sk_free(ossl_check_OPENSSL_STRING_sk_type(sk))\n" 29 V=V"#define sk_OPENSSL_STRING_zero(sk) OPENSSL_sk_zero(ossl_check_OPENSSL_STRING_sk_type(sk))\n" 30 V=V"#define sk_OPENSSL_STRING_delete(sk, i) ((char *)OPENSSL_sk_delete(ossl_check_OPENSSL_STRING_sk_type(sk), (i)))\n" 31 V=V"#define sk_OPENSSL_STRING_delete_ptr(sk, ptr) ((char *)OPENSSL_sk_delete_ptr(ossl_check_OPENSSL_STRING_sk_type(sk), ossl_check_OPENSSL_STRING_type(ptr)))\n" 32 V=V"#define sk_OPENSSL_STRING_push(sk, ptr) OPENSSL_sk_push(ossl_check_OPENSSL_STRING_sk_type(sk), ossl_check_OPENSSL_STRING_type(ptr))\n" 33 V=V"#define sk_OPENSSL_STRING_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_OPENSSL_STRING_sk_type(sk), ossl_check_OPENSSL_STRING_type(ptr))\n" 34 V=V"#define sk_OPENSSL_STRING_pop(sk) ((char *)OPENSSL_sk_pop(ossl_check_OPENSSL_STRING_sk_type(sk)))\n" 35 V=V"#define sk_OPENSSL_STRING_shift(sk) ((char *)OPENSSL_sk_shift(ossl_check_OPENSSL_STRING_sk_type(sk)))\n" 36 V=V"#define sk_OPENSSL_STRING_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_OPENSSL_STRING_sk_type(sk),ossl_check_OPENSSL_STRING_freefunc_type(freefunc))\n" 37 V=V"#define sk_OPENSSL_STRING_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_OPENSSL_STRING_sk_type(sk), ossl_check_OPENSSL_STRING_type(ptr), (idx))\n" 38 V=V"#define sk_OPENSSL_STRING_set(sk, idx, ptr) ((char *)OPENSSL_sk_set(ossl_check_OPENSSL_STRING_sk_type(sk), (idx), ossl_check_OPENSSL_STRING_type(ptr)))\n" 39 V=V"#define sk_OPENSSL_STRING_find(sk, ptr) OPENSSL_sk_find(ossl_check_OPENSSL_STRING_sk_type(sk), ossl_check_OPENSSL_STRING_type(ptr))\n" 40 V=V"#define sk_OPENSSL_STRING_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_OPENSSL_STRING_sk_type(sk), ossl_check_OPENSSL_STRING_type(ptr))\n" 41 V=V"#define sk_OPENSSL_STRING_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_OPENSSL_STRING_sk_type(sk), ossl_check_OPENSSL_STRING_type(ptr), pnum)\n" 42 V=V"#define sk_OPENSSL_STRING_sort(sk) OPENSSL_sk_sort(ossl_check_OPENSSL_STRING_sk_type(sk))\n" 43 V=V"#define sk_OPENSSL_STRING_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_OPENSSL_STRING_sk_type(sk))\n" 44 V=V"#define sk_OPENSSL_STRING_dup(sk) ((STACK_OF(OPENSSL_STRING) *)OPENSSL_sk_dup(ossl_check_const_OPENSSL_STRING_sk_type(sk)))\n" 45 V=V"#define sk_OPENSSL_STRING_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(OPENSSL_STRING) *)OPENSSL_sk_deep_copy(ossl_check_const_OPENSSL_STRING_sk_type(sk), ossl_check_OPENSSL_STRING_copyfunc_type(copyfunc), ossl_check_OPENSSL_STRING_freefunc_type(freefunc)))\n" 46 V=V"#define sk_OPENSSL_STRING_set_cmp_func(sk, cmp) ((sk_OPENSSL_STRING_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OPENSSL_STRING_sk_type(sk), ossl_check_OPENSSL_STRING_compfunc_type(cmp)))\n" 47 48 printf("%s", V); 49 next; 50 } 51 /generate_stack_string_macros/ { 52 next; 53 } 54 /generate_stack_const_string_macros\(/ { 55 56 V="SKM_DEFINE_STACK_OF_INTERNAL(OPENSSL_CSTRING, const char, char)\n" 57 V=V"#define sk_OPENSSL_CSTRING_num(sk) OPENSSL_sk_num(ossl_check_const_OPENSSL_CSTRING_sk_type(sk))\n" 58 V=V"#define sk_OPENSSL_CSTRING_value(sk, idx) ((const char *)OPENSSL_sk_value(ossl_check_const_OPENSSL_CSTRING_sk_type(sk), (idx)))\n" 59 V=V"#define sk_OPENSSL_CSTRING_new(cmp) ((STACK_OF(OPENSSL_CSTRING) *)OPENSSL_sk_new(ossl_check_OPENSSL_CSTRING_compfunc_type(cmp)))\n" 60 V=V"#define sk_OPENSSL_CSTRING_new_null() ((STACK_OF(OPENSSL_CSTRING) *)OPENSSL_sk_new_null())\n" 61 V=V"#define sk_OPENSSL_CSTRING_new_reserve(cmp, n) ((STACK_OF(OPENSSL_CSTRING) *)OPENSSL_sk_new_reserve(ossl_check_OPENSSL_CSTRING_compfunc_type(cmp), (n)))\n" 62 V=V"#define sk_OPENSSL_CSTRING_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_OPENSSL_CSTRING_sk_type(sk), (n))\n" 63 V=V"#define sk_OPENSSL_CSTRING_free(sk) OPENSSL_sk_free(ossl_check_OPENSSL_CSTRING_sk_type(sk))\n" 64 V=V"#define sk_OPENSSL_CSTRING_zero(sk) OPENSSL_sk_zero(ossl_check_OPENSSL_CSTRING_sk_type(sk))\n" 65 V=V"#define sk_OPENSSL_CSTRING_delete(sk, i) ((const char *)OPENSSL_sk_delete(ossl_check_OPENSSL_CSTRING_sk_type(sk), (i)))\n" 66 V=V"#define sk_OPENSSL_CSTRING_delete_ptr(sk, ptr) ((const char *)OPENSSL_sk_delete_ptr(ossl_check_OPENSSL_CSTRING_sk_type(sk), ossl_check_OPENSSL_CSTRING_type(ptr)))\n" 67 V=V"#define sk_OPENSSL_CSTRING_push(sk, ptr) OPENSSL_sk_push(ossl_check_OPENSSL_CSTRING_sk_type(sk), ossl_check_OPENSSL_CSTRING_type(ptr))\n" 68 V=V"#define sk_OPENSSL_CSTRING_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_OPENSSL_CSTRING_sk_type(sk), ossl_check_OPENSSL_CSTRING_type(ptr))\n" 69 V=V"#define sk_OPENSSL_CSTRING_pop(sk) ((const char *)OPENSSL_sk_pop(ossl_check_OPENSSL_CSTRING_sk_type(sk)))\n" 70 V=V"#define sk_OPENSSL_CSTRING_shift(sk) ((const char *)OPENSSL_sk_shift(ossl_check_OPENSSL_CSTRING_sk_type(sk)))\n" 71 V=V"#define sk_OPENSSL_CSTRING_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_OPENSSL_CSTRING_sk_type(sk),ossl_check_OPENSSL_CSTRING_freefunc_type(freefunc))\n" 72 V=V"#define sk_OPENSSL_CSTRING_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_OPENSSL_CSTRING_sk_type(sk), ossl_check_OPENSSL_CSTRING_type(ptr), (idx))\n" 73 V=V"#define sk_OPENSSL_CSTRING_set(sk, idx, ptr) ((const char *)OPENSSL_sk_set(ossl_check_OPENSSL_CSTRING_sk_type(sk), (idx), ossl_check_OPENSSL_CSTRING_type(ptr)))\n" 74 V=V"#define sk_OPENSSL_CSTRING_find(sk, ptr) OPENSSL_sk_find(ossl_check_OPENSSL_CSTRING_sk_type(sk), ossl_check_OPENSSL_CSTRING_type(ptr))\n" 75 V=V"#define sk_OPENSSL_CSTRING_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_OPENSSL_CSTRING_sk_type(sk), ossl_check_OPENSSL_CSTRING_type(ptr))\n" 76 V=V"#define sk_OPENSSL_CSTRING_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_OPENSSL_CSTRING_sk_type(sk), ossl_check_OPENSSL_CSTRING_type(ptr), pnum)\n" 77 V=V"#define sk_OPENSSL_CSTRING_sort(sk) OPENSSL_sk_sort(ossl_check_OPENSSL_CSTRING_sk_type(sk))\n" 78 V=V"#define sk_OPENSSL_CSTRING_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_OPENSSL_CSTRING_sk_type(sk))\n" 79 V=V"#define sk_OPENSSL_CSTRING_dup(sk) ((STACK_OF(OPENSSL_CSTRING) *)OPENSSL_sk_dup(ossl_check_const_OPENSSL_CSTRING_sk_type(sk)))\n" 80 V=V"#define sk_OPENSSL_CSTRING_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(OPENSSL_CSTRING) *)OPENSSL_sk_deep_copy(ossl_check_const_OPENSSL_CSTRING_sk_type(sk), ossl_check_OPENSSL_CSTRING_copyfunc_type(copyfunc), ossl_check_OPENSSL_CSTRING_freefunc_type(freefunc)))\n" 81 V=V"#define sk_OPENSSL_CSTRING_set_cmp_func(sk, cmp) ((sk_OPENSSL_CSTRING_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OPENSSL_CSTRING_sk_type(sk), ossl_check_OPENSSL_CSTRING_compfunc_type(cmp)))\n" 82 printf("%s", V); 83 next; 84 } 85 /generate_stack_const_string_macros/ { 86 next; 87 } 88 /generate_stack_block_macros\(/ { 89 i = index($0, "\""); 90 s = substr($0, i + 1); 91 i = index(s, "\""); 92 s = substr(s, 1, i - 1); 93 94 V="SKM_DEFINE_STACK_OF_INTERNAL(OPENSSL_BLOCK, void, void)\n" 95 V=V"#define sk_OPENSSL_BLOCK_num(sk) OPENSSL_sk_num(ossl_check_const_OPENSSL_BLOCK_sk_type(sk))\n" 96 V=V"#define sk_OPENSSL_BLOCK_value(sk, idx) ((void *)OPENSSL_sk_value(ossl_check_const_OPENSSL_BLOCK_sk_type(sk), (idx)))\n" 97 V=V"#define sk_OPENSSL_BLOCK_new(cmp) ((STACK_OF(OPENSSL_BLOCK) *)OPENSSL_sk_new(ossl_check_OPENSSL_BLOCK_compfunc_type(cmp)))\n" 98 V=V"#define sk_OPENSSL_BLOCK_new_null() ((STACK_OF(OPENSSL_BLOCK) *)OPENSSL_sk_new_null())\n" 99 V=V"#define sk_OPENSSL_BLOCK_new_reserve(cmp, n) ((STACK_OF(OPENSSL_BLOCK) *)OPENSSL_sk_new_reserve(ossl_check_OPENSSL_BLOCK_compfunc_type(cmp), (n)))\n" 100 V=V"#define sk_OPENSSL_BLOCK_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_OPENSSL_BLOCK_sk_type(sk), (n))\n" 101 V=V"#define sk_OPENSSL_BLOCK_free(sk) OPENSSL_sk_free(ossl_check_OPENSSL_BLOCK_sk_type(sk))\n" 102 V=V"#define sk_OPENSSL_BLOCK_zero(sk) OPENSSL_sk_zero(ossl_check_OPENSSL_BLOCK_sk_type(sk))\n" 103 V=V"#define sk_OPENSSL_BLOCK_delete(sk, i) ((void *)OPENSSL_sk_delete(ossl_check_OPENSSL_BLOCK_sk_type(sk), (i)))\n" 104 V=V"#define sk_OPENSSL_BLOCK_delete_ptr(sk, ptr) ((void *)OPENSSL_sk_delete_ptr(ossl_check_OPENSSL_BLOCK_sk_type(sk), ossl_check_OPENSSL_BLOCK_type(ptr)))\n" 105 V=V"#define sk_OPENSSL_BLOCK_push(sk, ptr) OPENSSL_sk_push(ossl_check_OPENSSL_BLOCK_sk_type(sk), ossl_check_OPENSSL_BLOCK_type(ptr))\n" 106 V=V"#define sk_OPENSSL_BLOCK_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_OPENSSL_BLOCK_sk_type(sk), ossl_check_OPENSSL_BLOCK_type(ptr))\n" 107 V=V"#define sk_OPENSSL_BLOCK_pop(sk) ((void *)OPENSSL_sk_pop(ossl_check_OPENSSL_BLOCK_sk_type(sk)))\n" 108 V=V"#define sk_OPENSSL_BLOCK_shift(sk) ((void *)OPENSSL_sk_shift(ossl_check_OPENSSL_BLOCK_sk_type(sk)))\n" 109 V=V"#define sk_OPENSSL_BLOCK_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_OPENSSL_BLOCK_sk_type(sk),ossl_check_OPENSSL_BLOCK_freefunc_type(freefunc))\n" 110 V=V"#define sk_OPENSSL_BLOCK_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_OPENSSL_BLOCK_sk_type(sk), ossl_check_OPENSSL_BLOCK_type(ptr), (idx))\n" 111 V=V"#define sk_OPENSSL_BLOCK_set(sk, idx, ptr) ((void *)OPENSSL_sk_set(ossl_check_OPENSSL_BLOCK_sk_type(sk), (idx), ossl_check_OPENSSL_BLOCK_type(ptr)))\n" 112 V=V"#define sk_OPENSSL_BLOCK_find(sk, ptr) OPENSSL_sk_find(ossl_check_OPENSSL_BLOCK_sk_type(sk), ossl_check_OPENSSL_BLOCK_type(ptr))\n" 113 V=V"#define sk_OPENSSL_BLOCK_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_OPENSSL_BLOCK_sk_type(sk), ossl_check_OPENSSL_BLOCK_type(ptr))\n" 114 V=V"#define sk_OPENSSL_BLOCK_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_OPENSSL_BLOCK_sk_type(sk), ossl_check_OPENSSL_BLOCK_type(ptr), pnum)\n" 115 V=V"#define sk_OPENSSL_BLOCK_sort(sk) OPENSSL_sk_sort(ossl_check_OPENSSL_BLOCK_sk_type(sk))\n" 116 V=V"#define sk_OPENSSL_BLOCK_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_OPENSSL_BLOCK_sk_type(sk))\n" 117 V=V"#define sk_OPENSSL_BLOCK_dup(sk) ((STACK_OF(OPENSSL_BLOCK) *)OPENSSL_sk_dup(ossl_check_const_OPENSSL_BLOCK_sk_type(sk)))\n" 118 V=V"#define sk_OPENSSL_BLOCK_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(OPENSSL_BLOCK) *)OPENSSL_sk_deep_copy(ossl_check_const_OPENSSL_BLOCK_sk_type(sk), ossl_check_OPENSSL_BLOCK_copyfunc_type(copyfunc), ossl_check_OPENSSL_BLOCK_freefunc_type(freefunc)))\n" 119 V=V"#define sk_OPENSSL_BLOCK_set_cmp_func(sk, cmp) ((sk_OPENSSL_BLOCK_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_OPENSSL_BLOCK_sk_type(sk), ossl_check_OPENSSL_BLOCK_compfunc_type(cmp)))\n" 120 121 gsub("@", s, V); 122 printf("%s\n", V); 123 next; 124 } 125 /generate_stack_block_macros/ { 126 next; 127 } 128 /generate_const_stack_macros\(/ { 129 i = index($0, "\""); 130 s = substr($0, i + 1); 131 i = index(s, "\""); 132 s = substr(s, 1, i - 1); 133 134 V="SKM_DEFINE_STACK_OF_INTERNAL(SSL_CIPHER, const SSL_CIPHER, SSL_CIPHER)\n" 135 V=V"#define sk_SSL_CIPHER_num(sk) OPENSSL_sk_num(ossl_check_const_SSL_CIPHER_sk_type(sk))\n" 136 V=V"#define sk_SSL_CIPHER_value(sk, idx) ((const SSL_CIPHER *)OPENSSL_sk_value(ossl_check_const_SSL_CIPHER_sk_type(sk), (idx)))\n" 137 V=V"#define sk_SSL_CIPHER_new(cmp) ((STACK_OF(SSL_CIPHER) *)OPENSSL_sk_new(ossl_check_SSL_CIPHER_compfunc_type(cmp)))\n" 138 V=V"#define sk_SSL_CIPHER_new_null() ((STACK_OF(SSL_CIPHER) *)OPENSSL_sk_new_null())\n" 139 V=V"#define sk_SSL_CIPHER_new_reserve(cmp, n) ((STACK_OF(SSL_CIPHER) *)OPENSSL_sk_new_reserve(ossl_check_SSL_CIPHER_compfunc_type(cmp), (n)))\n" 140 V=V"#define sk_SSL_CIPHER_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_SSL_CIPHER_sk_type(sk), (n))\n" 141 V=V"#define sk_SSL_CIPHER_free(sk) OPENSSL_sk_free(ossl_check_SSL_CIPHER_sk_type(sk))\n" 142 V=V"#define sk_SSL_CIPHER_zero(sk) OPENSSL_sk_zero(ossl_check_SSL_CIPHER_sk_type(sk))\n" 143 V=V"#define sk_SSL_CIPHER_delete(sk, i) ((const SSL_CIPHER *)OPENSSL_sk_delete(ossl_check_SSL_CIPHER_sk_type(sk), (i)))\n" 144 V=V"#define sk_SSL_CIPHER_delete_ptr(sk, ptr) ((const SSL_CIPHER *)OPENSSL_sk_delete_ptr(ossl_check_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_type(ptr)))\n" 145 V=V"#define sk_SSL_CIPHER_push(sk, ptr) OPENSSL_sk_push(ossl_check_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_type(ptr))\n" 146 V=V"#define sk_SSL_CIPHER_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_type(ptr))\n" 147 V=V"#define sk_SSL_CIPHER_pop(sk) ((const SSL_CIPHER *)OPENSSL_sk_pop(ossl_check_SSL_CIPHER_sk_type(sk)))\n" 148 V=V"#define sk_SSL_CIPHER_shift(sk) ((const SSL_CIPHER *)OPENSSL_sk_shift(ossl_check_SSL_CIPHER_sk_type(sk)))\n" 149 V=V"#define sk_SSL_CIPHER_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_SSL_CIPHER_sk_type(sk),ossl_check_SSL_CIPHER_freefunc_type(freefunc))\n" 150 V=V"#define sk_SSL_CIPHER_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_type(ptr), (idx))\n" 151 V=V"#define sk_SSL_CIPHER_set(sk, idx, ptr) ((const SSL_CIPHER *)OPENSSL_sk_set(ossl_check_SSL_CIPHER_sk_type(sk), (idx), ossl_check_SSL_CIPHER_type(ptr)))\n" 152 V=V"#define sk_SSL_CIPHER_find(sk, ptr) OPENSSL_sk_find(ossl_check_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_type(ptr))\n" 153 V=V"#define sk_SSL_CIPHER_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_type(ptr))\n" 154 V=V"#define sk_SSL_CIPHER_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_type(ptr), pnum)\n" 155 V=V"#define sk_SSL_CIPHER_sort(sk) OPENSSL_sk_sort(ossl_check_SSL_CIPHER_sk_type(sk))\n" 156 V=V"#define sk_SSL_CIPHER_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_SSL_CIPHER_sk_type(sk))\n" 157 V=V"#define sk_SSL_CIPHER_dup(sk) ((STACK_OF(SSL_CIPHER) *)OPENSSL_sk_dup(ossl_check_const_SSL_CIPHER_sk_type(sk)))\n" 158 V=V"#define sk_SSL_CIPHER_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(SSL_CIPHER) *)OPENSSL_sk_deep_copy(ossl_check_const_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_copyfunc_type(copyfunc), ossl_check_SSL_CIPHER_freefunc_type(freefunc)))\n" 159 V=V"#define sk_SSL_CIPHER_set_cmp_func(sk, cmp) ((sk_SSL_CIPHER_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_SSL_CIPHER_sk_type(sk), ossl_check_SSL_CIPHER_compfunc_type(cmp)))\n" 160 161 gsub("@", s, V); 162 printf("%s\n", V); 163 next; 164 } 165 /generate_lhash_macros\(/ { 166 i = index($0, "\""); 167 s = substr($0, i + 1); 168 i = index(s, "\""); 169 s = substr(s, 1, i - 1); 170 171 V="DEFINE_LHASH_OF_INTERNAL(@);\n" 172 V=V"#define lh_@_new(hfn, cmp) ((LHASH_OF(@) *)OPENSSL_LH_new(ossl_check_@_lh_hashfunc_type(hfn), ossl_check_@_lh_compfunc_type(cmp)))\n" 173 V=V"#define lh_@_free(lh) OPENSSL_LH_free(ossl_check_@_lh_type(lh))\n" 174 V=V"#define lh_@_flush(lh) OPENSSL_LH_flush(ossl_check_@_lh_type(lh))\n" 175 V=V"#define lh_@_insert(lh, ptr) ((@ *)OPENSSL_LH_insert(ossl_check_@_lh_type(lh), ossl_check_@_lh_plain_type(ptr)))\n" 176 V=V"#define lh_@_delete(lh, ptr) ((@ *)OPENSSL_LH_delete(ossl_check_@_lh_type(lh), ossl_check_const_@_lh_plain_type(ptr)))\n" 177 V=V"#define lh_@_retrieve(lh, ptr) ((@ *)OPENSSL_LH_retrieve(ossl_check_@_lh_type(lh), ossl_check_const_@_lh_plain_type(ptr)))\n" 178 V=V"#define lh_@_error(lh) OPENSSL_LH_error(ossl_check_@_lh_type(lh))\n" 179 V=V"#define lh_@_num_items(lh) OPENSSL_LH_num_items(ossl_check_@_lh_type(lh))\n" 180 V=V"#define lh_@_node_stats_bio(lh, out) OPENSSL_LH_node_stats_bio(ossl_check_const_@_lh_type(lh), out)\n" 181 V=V"#define lh_@_node_usage_stats_bio(lh, out) OPENSSL_LH_node_usage_stats_bio(ossl_check_const_@_lh_type(lh), out)\n" 182 V=V"#define lh_@_stats_bio(lh, out) OPENSSL_LH_stats_bio(ossl_check_const_@_lh_type(lh), out)\n" 183 V=V"#define lh_@_get_down_load(lh) OPENSSL_LH_get_down_load(ossl_check_@_lh_type(lh))\n" 184 V=V"#define lh_@_set_down_load(lh, dl) OPENSSL_LH_set_down_load(ossl_check_@_lh_type(lh), dl)\n" 185 V=V"#define lh_@_doall(lh, dfn) OPENSSL_LH_doall(ossl_check_@_lh_type(lh), ossl_check_@_lh_doallfunc_type(dfn))\n" 186 gsub("@", s, V); 187 printf("%s\n", V); 188 next; 189 } 190 191 /generate_stack_macros\(/ { 192 i = index($0, "\""); 193 s = substr($0, i + 1); 194 i = index(s, "\""); 195 s = substr(s, 1, i - 1); 196 197 V="SKM_DEFINE_STACK_OF_INTERNAL(@, @, @)\n" 198 V=V"#define sk_@_num(sk) OPENSSL_sk_num(ossl_check_const_@_sk_type(sk))\n" 199 V=V"#define sk_@_value(sk, idx) ((@ *)OPENSSL_sk_value(ossl_check_const_@_sk_type(sk), (idx)))\n" 200 V=V"#define sk_@_new(cmp) ((STACK_OF(@) *)OPENSSL_sk_new(ossl_check_@_compfunc_type(cmp)))\n" 201 V=V"#define sk_@_new_null() ((STACK_OF(@) *)OPENSSL_sk_new_null())\n" 202 V=V"#define sk_@_new_reserve(cmp, n) ((STACK_OF(@) *)OPENSSL_sk_new_reserve(ossl_check_@_compfunc_type(cmp), (n)))\n" 203 V=V"#define sk_@_reserve(sk, n) OPENSSL_sk_reserve(ossl_check_@_sk_type(sk), (n))\n" 204 V=V"#define sk_@_free(sk) OPENSSL_sk_free(ossl_check_@_sk_type(sk))\n" 205 V=V"#define sk_@_zero(sk) OPENSSL_sk_zero(ossl_check_@_sk_type(sk))\n" 206 V=V"#define sk_@_delete(sk, i) ((@ *)OPENSSL_sk_delete(ossl_check_@_sk_type(sk), (i)))\n" 207 V=V"#define sk_@_delete_ptr(sk, ptr) ((@ *)OPENSSL_sk_delete_ptr(ossl_check_@_sk_type(sk), ossl_check_@_type(ptr)))\n" 208 V=V"#define sk_@_push(sk, ptr) OPENSSL_sk_push(ossl_check_@_sk_type(sk), ossl_check_@_type(ptr))\n" 209 V=V"#define sk_@_unshift(sk, ptr) OPENSSL_sk_unshift(ossl_check_@_sk_type(sk), ossl_check_@_type(ptr))\n" 210 V=V"#define sk_@_pop(sk) ((@ *)OPENSSL_sk_pop(ossl_check_@_sk_type(sk)))\n" 211 V=V"#define sk_@_shift(sk) ((@ *)OPENSSL_sk_shift(ossl_check_@_sk_type(sk)))\n" 212 V=V"#define sk_@_pop_free(sk, freefunc) OPENSSL_sk_pop_free(ossl_check_@_sk_type(sk),ossl_check_@_freefunc_type(freefunc))\n" 213 V=V"#define sk_@_insert(sk, ptr, idx) OPENSSL_sk_insert(ossl_check_@_sk_type(sk), ossl_check_@_type(ptr), (idx))\n" 214 V=V"#define sk_@_set(sk, idx, ptr) ((@ *)OPENSSL_sk_set(ossl_check_@_sk_type(sk), (idx), ossl_check_@_type(ptr)))\n" 215 V=V"#define sk_@_find(sk, ptr) OPENSSL_sk_find(ossl_check_@_sk_type(sk), ossl_check_@_type(ptr))\n" 216 V=V"#define sk_@_find_ex(sk, ptr) OPENSSL_sk_find_ex(ossl_check_@_sk_type(sk), ossl_check_@_type(ptr))\n" 217 V=V"#define sk_@_find_all(sk, ptr, pnum) OPENSSL_sk_find_all(ossl_check_@_sk_type(sk), ossl_check_@_type(ptr), pnum)\n" 218 V=V"#define sk_@_sort(sk) OPENSSL_sk_sort(ossl_check_@_sk_type(sk))\n" 219 V=V"#define sk_@_is_sorted(sk) OPENSSL_sk_is_sorted(ossl_check_const_@_sk_type(sk))\n" 220 V=V"#define sk_@_dup(sk) ((STACK_OF(@) *)OPENSSL_sk_dup(ossl_check_const_@_sk_type(sk)))\n" 221 V=V"#define sk_@_deep_copy(sk, copyfunc, freefunc) ((STACK_OF(@) *)OPENSSL_sk_deep_copy(ossl_check_const_@_sk_type(sk), ossl_check_@_copyfunc_type(copyfunc), ossl_check_@_freefunc_type(freefunc)))\n" 222 V=V"#define sk_@_set_cmp_func(sk, cmp) ((sk_@_compfunc)OPENSSL_sk_set_cmp_func(ossl_check_@_sk_type(sk), ossl_check_@_compfunc_type(cmp)))\n" 223 224 gsub("@", s, V); 225 printf("%s\n", V); 226 next; 227 } 228 { 229 print $0; 230 } 231 ' "$1" 232