Coverage Report

Created: 2026-09-14 06:25

next uncovered line (L), next uncovered region (R), next uncovered branch (B)
/src/php-src/ext/hash/hash_arginfo.h
Line
Count
Source
1
/* This is a generated file, edit hash.stub.php instead.
2
 * Stub hash: b0fe91da9b0469b44a9647b774b9b00498592e30 */
3
4
#include "zend_attributes.h"
5
#include "zend_constants.h"
6
7
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash, 0, 2, IS_STRING, 0)
8
  ZEND_ARG_TYPE_INFO(0, algo, IS_STRING, 0)
9
  ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
10
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, binary, _IS_BOOL, 0, "false")
11
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_ARRAY, 0, "[]")
12
ZEND_END_ARG_INFO()
13
14
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_hash_file, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
15
  ZEND_ARG_TYPE_INFO(0, algo, IS_STRING, 0)
16
  ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
17
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, binary, _IS_BOOL, 0, "false")
18
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_ARRAY, 0, "[]")
19
ZEND_END_ARG_INFO()
20
21
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash_hmac, 0, 3, IS_STRING, 0)
22
  ZEND_ARG_TYPE_INFO(0, algo, IS_STRING, 0)
23
  ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
24
  ZEND_ARG_TYPE_INFO(0, key, IS_STRING, 0)
25
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, binary, _IS_BOOL, 0, "false")
26
ZEND_END_ARG_INFO()
27
28
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_hash_hmac_file, 0, 3, MAY_BE_STRING|MAY_BE_FALSE)
29
  ZEND_ARG_TYPE_INFO(0, algo, IS_STRING, 0)
30
  ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
31
  ZEND_ARG_TYPE_INFO(0, key, IS_STRING, 0)
32
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, binary, _IS_BOOL, 0, "false")
33
ZEND_END_ARG_INFO()
34
35
ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_hash_init, 0, 1, HashContext, 0)
36
  ZEND_ARG_TYPE_INFO(0, algo, IS_STRING, 0)
37
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, flags, IS_LONG, 0, "0")
38
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, key, IS_STRING, 0, "\"\"")
39
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_ARRAY, 0, "[]")
40
ZEND_END_ARG_INFO()
41
42
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash_update, 0, 2, IS_TRUE, 0)
43
  ZEND_ARG_OBJ_INFO(0, context, HashContext, 0)
44
  ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
45
ZEND_END_ARG_INFO()
46
47
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash_update_stream, 0, 2, IS_LONG, 0)
48
  ZEND_ARG_OBJ_INFO(0, context, HashContext, 0)
49
  ZEND_ARG_INFO(0, stream)
50
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 0, "-1")
51
ZEND_END_ARG_INFO()
52
53
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash_update_file, 0, 2, _IS_BOOL, 0)
54
  ZEND_ARG_OBJ_INFO(0, context, HashContext, 0)
55
  ZEND_ARG_TYPE_INFO(0, filename, IS_STRING, 0)
56
  ZEND_ARG_INFO_WITH_DEFAULT_VALUE(0, stream_context, "null")
57
ZEND_END_ARG_INFO()
58
59
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash_final, 0, 1, IS_STRING, 0)
60
  ZEND_ARG_OBJ_INFO(0, context, HashContext, 0)
61
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, binary, _IS_BOOL, 0, "false")
62
ZEND_END_ARG_INFO()
63
64
ZEND_BEGIN_ARG_WITH_RETURN_OBJ_INFO_EX(arginfo_hash_copy, 0, 1, HashContext, 0)
65
  ZEND_ARG_OBJ_INFO(0, context, HashContext, 0)
66
ZEND_END_ARG_INFO()
67
68
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash_algos, 0, 0, IS_ARRAY, 0)
69
ZEND_END_ARG_INFO()
70
71
#define arginfo_hash_hmac_algos arginfo_hash_algos
72
73
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash_pbkdf2, 0, 4, IS_STRING, 0)
74
  ZEND_ARG_TYPE_INFO(0, algo, IS_STRING, 0)
75
  ZEND_ARG_TYPE_INFO(0, password, IS_STRING, 0)
76
  ZEND_ARG_TYPE_INFO(0, salt, IS_STRING, 0)
77
  ZEND_ARG_TYPE_INFO(0, iterations, IS_LONG, 0)
78
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 0, "0")
79
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, binary, _IS_BOOL, 0, "false")
80
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, options, IS_ARRAY, 0, "[]")
81
ZEND_END_ARG_INFO()
82
83
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash_equals, 0, 2, _IS_BOOL, 0)
84
  ZEND_ARG_TYPE_INFO(0, known_string, IS_STRING, 0)
85
  ZEND_ARG_TYPE_INFO(0, user_string, IS_STRING, 0)
86
ZEND_END_ARG_INFO()
87
88
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_hash_hkdf, 0, 2, IS_STRING, 0)
89
  ZEND_ARG_TYPE_INFO(0, algo, IS_STRING, 0)
90
  ZEND_ARG_TYPE_INFO(0, key, IS_STRING, 0)
91
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, length, IS_LONG, 0, "0")
92
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, info, IS_STRING, 0, "\"\"")
93
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, salt, IS_STRING, 0, "\"\"")
94
ZEND_END_ARG_INFO()
95
96
#if defined(PHP_MHASH_BC)
97
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mhash_get_block_size, 0, 1, MAY_BE_LONG|MAY_BE_FALSE)
98
  ZEND_ARG_TYPE_INFO(0, algo, IS_LONG, 0)
99
ZEND_END_ARG_INFO()
100
101
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mhash_get_hash_name, 0, 1, MAY_BE_STRING|MAY_BE_FALSE)
102
  ZEND_ARG_TYPE_INFO(0, algo, IS_LONG, 0)
103
ZEND_END_ARG_INFO()
104
105
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mhash_keygen_s2k, 0, 4, MAY_BE_STRING|MAY_BE_FALSE)
106
  ZEND_ARG_TYPE_INFO(0, algo, IS_LONG, 0)
107
  ZEND_ARG_TYPE_INFO(0, password, IS_STRING, 0)
108
  ZEND_ARG_TYPE_INFO(0, salt, IS_STRING, 0)
109
  ZEND_ARG_TYPE_INFO(0, length, IS_LONG, 0)
110
ZEND_END_ARG_INFO()
111
112
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_mhash_count, 0, 0, IS_LONG, 0)
113
ZEND_END_ARG_INFO()
114
115
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_MASK_EX(arginfo_mhash, 0, 2, MAY_BE_STRING|MAY_BE_FALSE)
116
  ZEND_ARG_TYPE_INFO(0, algo, IS_LONG, 0)
117
  ZEND_ARG_TYPE_INFO(0, data, IS_STRING, 0)
118
  ZEND_ARG_TYPE_INFO_WITH_DEFAULT_VALUE(0, key, IS_STRING, 1, "null")
119
ZEND_END_ARG_INFO()
120
#endif
121
122
ZEND_BEGIN_ARG_INFO_EX(arginfo_class_HashContext___construct, 0, 0, 0)
123
ZEND_END_ARG_INFO()
124
125
#define arginfo_class_HashContext___serialize arginfo_hash_algos
126
127
ZEND_BEGIN_ARG_WITH_RETURN_TYPE_INFO_EX(arginfo_class_HashContext___unserialize, 0, 1, IS_VOID, 0)
128
  ZEND_ARG_TYPE_INFO(0, data, IS_ARRAY, 0)
129
ZEND_END_ARG_INFO()
130
131
#define arginfo_class_HashContext___debugInfo arginfo_hash_algos
132
133
ZEND_FUNCTION(hash);
134
ZEND_FUNCTION(hash_file);
135
ZEND_FUNCTION(hash_hmac);
136
ZEND_FUNCTION(hash_hmac_file);
137
ZEND_FUNCTION(hash_init);
138
ZEND_FUNCTION(hash_update);
139
ZEND_FUNCTION(hash_update_stream);
140
ZEND_FUNCTION(hash_update_file);
141
ZEND_FUNCTION(hash_final);
142
ZEND_FUNCTION(hash_copy);
143
ZEND_FUNCTION(hash_algos);
144
ZEND_FUNCTION(hash_hmac_algos);
145
ZEND_FUNCTION(hash_pbkdf2);
146
ZEND_FUNCTION(hash_equals);
147
ZEND_FUNCTION(hash_hkdf);
148
#if defined(PHP_MHASH_BC)
149
ZEND_FUNCTION(mhash_get_block_size);
150
ZEND_FUNCTION(mhash_get_hash_name);
151
ZEND_FUNCTION(mhash_keygen_s2k);
152
ZEND_FUNCTION(mhash_count);
153
ZEND_FUNCTION(mhash);
154
#endif
155
ZEND_METHOD(HashContext, __construct);
156
ZEND_METHOD(HashContext, __serialize);
157
ZEND_METHOD(HashContext, __unserialize);
158
ZEND_METHOD(HashContext, __debugInfo);
159
160
static const zend_function_entry ext_functions[] = {
161
  ZEND_FE(hash, arginfo_hash)
162
  ZEND_FE(hash_file, arginfo_hash_file)
163
  ZEND_FE(hash_hmac, arginfo_hash_hmac)
164
  ZEND_FE(hash_hmac_file, arginfo_hash_hmac_file)
165
  ZEND_FE(hash_init, arginfo_hash_init)
166
  ZEND_FE(hash_update, arginfo_hash_update)
167
  ZEND_FE(hash_update_stream, arginfo_hash_update_stream)
168
  ZEND_FE(hash_update_file, arginfo_hash_update_file)
169
  ZEND_FE(hash_final, arginfo_hash_final)
170
  ZEND_FE(hash_copy, arginfo_hash_copy)
171
  ZEND_RAW_FENTRY("hash_algos", zif_hash_algos, arginfo_hash_algos, ZEND_ACC_COMPILE_TIME_EVAL, NULL, NULL)
172
  ZEND_RAW_FENTRY("hash_hmac_algos", zif_hash_hmac_algos, arginfo_hash_hmac_algos, ZEND_ACC_COMPILE_TIME_EVAL, NULL, NULL)
173
  ZEND_FE(hash_pbkdf2, arginfo_hash_pbkdf2)
174
  ZEND_FE(hash_equals, arginfo_hash_equals)
175
  ZEND_FE(hash_hkdf, arginfo_hash_hkdf)
176
#if defined(PHP_MHASH_BC)
177
  ZEND_RAW_FENTRY("mhash_get_block_size", zif_mhash_get_block_size, arginfo_mhash_get_block_size, ZEND_ACC_DEPRECATED, NULL, NULL)
178
  ZEND_RAW_FENTRY("mhash_get_hash_name", zif_mhash_get_hash_name, arginfo_mhash_get_hash_name, ZEND_ACC_DEPRECATED, NULL, NULL)
179
  ZEND_RAW_FENTRY("mhash_keygen_s2k", zif_mhash_keygen_s2k, arginfo_mhash_keygen_s2k, ZEND_ACC_DEPRECATED, NULL, NULL)
180
  ZEND_RAW_FENTRY("mhash_count", zif_mhash_count, arginfo_mhash_count, ZEND_ACC_DEPRECATED, NULL, NULL)
181
  ZEND_RAW_FENTRY("mhash", zif_mhash, arginfo_mhash, ZEND_ACC_DEPRECATED, NULL, NULL)
182
#endif
183
  ZEND_FE_END
184
};
185
186
static const zend_function_entry class_HashContext_methods[] = {
187
  ZEND_ME(HashContext, __construct, arginfo_class_HashContext___construct, ZEND_ACC_PRIVATE)
188
  ZEND_ME(HashContext, __serialize, arginfo_class_HashContext___serialize, ZEND_ACC_PUBLIC)
189
  ZEND_ME(HashContext, __unserialize, arginfo_class_HashContext___unserialize, ZEND_ACC_PUBLIC)
190
  ZEND_ME(HashContext, __debugInfo, arginfo_class_HashContext___debugInfo, ZEND_ACC_PUBLIC)
191
  ZEND_FE_END
192
};
193
194
static void register_hash_symbols(int module_number)
195
16
{
196
16
  REGISTER_LONG_CONSTANT("HASH_HMAC", PHP_HASH_HMAC, CONST_PERSISTENT);
197
198
199
16
  zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "hash_hmac", sizeof("hash_hmac") - 1), 2, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
200
201
16
  zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "hash_hmac_file", sizeof("hash_hmac_file") - 1), 2, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
202
203
16
  zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "hash_init", sizeof("hash_init") - 1), 2, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
204
205
16
  zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "hash_pbkdf2", sizeof("hash_pbkdf2") - 1), 1, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
206
207
16
  zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "hash_equals", sizeof("hash_equals") - 1), 0, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
208
209
16
  zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "hash_equals", sizeof("hash_equals") - 1), 1, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
210
211
16
  zend_add_parameter_attribute(zend_hash_str_find_ptr(CG(function_table), "hash_hkdf", sizeof("hash_hkdf") - 1), 1, ZSTR_KNOWN(ZEND_STR_SENSITIVEPARAMETER), 0);
212
#if defined(PHP_MHASH_BC)
213
214
  zend_attribute *attribute_Deprecated_func_mhash_get_block_size_0 = zend_add_function_attribute(zend_hash_str_find_ptr(CG(function_table), "mhash_get_block_size", sizeof("mhash_get_block_size") - 1), ZSTR_KNOWN(ZEND_STR_DEPRECATED_CAPITALIZED), 1);
215
  ZVAL_STR(&attribute_Deprecated_func_mhash_get_block_size_0->args[0].value, ZSTR_KNOWN(ZEND_STR_8_DOT_1));
216
  attribute_Deprecated_func_mhash_get_block_size_0->args[0].name = ZSTR_KNOWN(ZEND_STR_SINCE);
217
218
  zend_attribute *attribute_Deprecated_func_mhash_get_hash_name_0 = zend_add_function_attribute(zend_hash_str_find_ptr(CG(function_table), "mhash_get_hash_name", sizeof("mhash_get_hash_name") - 1), ZSTR_KNOWN(ZEND_STR_DEPRECATED_CAPITALIZED), 1);
219
  ZVAL_STR(&attribute_Deprecated_func_mhash_get_hash_name_0->args[0].value, ZSTR_KNOWN(ZEND_STR_8_DOT_1));
220
  attribute_Deprecated_func_mhash_get_hash_name_0->args[0].name = ZSTR_KNOWN(ZEND_STR_SINCE);
221
222
  zend_attribute *attribute_Deprecated_func_mhash_keygen_s2k_0 = zend_add_function_attribute(zend_hash_str_find_ptr(CG(function_table), "mhash_keygen_s2k", sizeof("mhash_keygen_s2k") - 1), ZSTR_KNOWN(ZEND_STR_DEPRECATED_CAPITALIZED), 1);
223
  ZVAL_STR(&attribute_Deprecated_func_mhash_keygen_s2k_0->args[0].value, ZSTR_KNOWN(ZEND_STR_8_DOT_1));
224
  attribute_Deprecated_func_mhash_keygen_s2k_0->args[0].name = ZSTR_KNOWN(ZEND_STR_SINCE);
225
226
  zend_attribute *attribute_Deprecated_func_mhash_count_0 = zend_add_function_attribute(zend_hash_str_find_ptr(CG(function_table), "mhash_count", sizeof("mhash_count") - 1), ZSTR_KNOWN(ZEND_STR_DEPRECATED_CAPITALIZED), 1);
227
  ZVAL_STR(&attribute_Deprecated_func_mhash_count_0->args[0].value, ZSTR_KNOWN(ZEND_STR_8_DOT_1));
228
  attribute_Deprecated_func_mhash_count_0->args[0].name = ZSTR_KNOWN(ZEND_STR_SINCE);
229
230
  zend_attribute *attribute_Deprecated_func_mhash_0 = zend_add_function_attribute(zend_hash_str_find_ptr(CG(function_table), "mhash", sizeof("mhash") - 1), ZSTR_KNOWN(ZEND_STR_DEPRECATED_CAPITALIZED), 1);
231
  ZVAL_STR(&attribute_Deprecated_func_mhash_0->args[0].value, ZSTR_KNOWN(ZEND_STR_8_DOT_1));
232
  attribute_Deprecated_func_mhash_0->args[0].name = ZSTR_KNOWN(ZEND_STR_SINCE);
233
#endif
234
16
}
235
236
static zend_class_entry *register_class_HashContext(void)
237
16
{
238
16
  zend_class_entry ce, *class_entry;
239
240
16
  INIT_CLASS_ENTRY(ce, "HashContext", class_HashContext_methods);
241
16
  class_entry = zend_register_internal_class_with_flags(&ce, NULL, ZEND_ACC_FINAL);
242
243
16
  return class_entry;
244
16
}