summaryrefslogtreecommitdiff
path: root/src/plugins/HPMHooking/HPMHooking_login.HookingPoints.inc
blob: 1e35486214c5eba097a116670c30d1f01cc04c96 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
/**
 * This file is part of Hercules.
 * http://herc.ws - http://github.com/HerculesWS/Hercules
 *
 * Copyright (C) 2013-2019  Hercules Dev Team
 *
 * Hercules is free software: you can redistribute it and/or modify
 * it under the terms of the GNU General Public License as published by
 * the Free Software Foundation, either version 3 of the License, or
 * (at your option) any later version.
 *
 * This program is distributed in the hope that it will be useful,
 * but WITHOUT ANY WARRANTY; without even the implied warranty of
 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
 * GNU General Public License for more details.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program.  If not, see <http://www.gnu.org/licenses/>.
 */

/*
 * NOTE: This file was auto-generated and should never be manually edited,
 *       as it will get overwritten.
 */

/* GENERATED FILE DO NOT EDIT */

struct HookingPointData HookingPoints[] = {
/* HCache_interface */
	{ HP_POP(HCache->init, HP_HCache_init) },
	{ HP_POP(HCache->check, HP_HCache_check) },
	{ HP_POP(HCache->open, HP_HCache_open) },
/* account_interface */
	{ HP_POP(account->db_sql_up, HP_account_db_sql_up) },
	{ HP_POP(account->mmo_send_accreg2, HP_account_mmo_send_accreg2) },
	{ HP_POP(account->mmo_save_accreg2, HP_account_mmo_save_accreg2) },
	{ HP_POP(account->mmo_auth_fromsql, HP_account_mmo_auth_fromsql) },
	{ HP_POP(account->mmo_auth_tosql, HP_account_mmo_auth_tosql) },
	{ HP_POP(account->db_sql, HP_account_db_sql) },
	{ HP_POP(account->db_sql_init, HP_account_db_sql_init) },
	{ HP_POP(account->db_sql_destroy, HP_account_db_sql_destroy) },
	{ HP_POP(account->db_sql_get_property, HP_account_db_sql_get_property) },
	{ HP_POP(account->db_sql_set_property, HP_account_db_sql_set_property) },
	{ HP_POP(account->db_sql_create, HP_account_db_sql_create) },
	{ HP_POP(account->db_sql_remove, HP_account_db_sql_remove) },
	{ HP_POP(account->db_sql_save, HP_account_db_sql_save) },
	{ HP_POP(account->db_sql_load_num, HP_account_db_sql_load_num) },
	{ HP_POP(account->db_sql_load_str, HP_account_db_sql_load_str) },
	{ HP_POP(account->db_sql_iterator, HP_account_db_sql_iterator) },
	{ HP_POP(account->db_sql_iter_destroy, HP_account_db_sql_iter_destroy) },
	{ HP_POP(account->db_sql_iter_next, HP_account_db_sql_iter_next) },
	{ HP_POP(account->db_read_inter, HP_account_db_read_inter) },
/* cmdline_interface */
	{ HP_POP(cmdline->init, HP_cmdline_init) },
	{ HP_POP(cmdline->final, HP_cmdline_final) },
	{ HP_POP(cmdline->arg_add, HP_cmdline_arg_add) },
	{ HP_POP(cmdline->exec, HP_cmdline_exec) },
	{ HP_POP(cmdline->arg_next_value, HP_cmdline_arg_next_value) },
	{ HP_POP(cmdline->arg_source, HP_cmdline_arg_source) },
/* console_interface */
	{ HP_POP(console->init, HP_console_init) },
	{ HP_POP(console->final, HP_console_final) },
	{ HP_POP(console->display_title, HP_console_display_title) },
	{ HP_POP(console->display_gplnotice, HP_console_display_gplnotice) },
/* core_interface */
	{ HP_POP(core->shutdown_callback, HP_core_shutdown_callback) },
/* db_interface */
	{ HP_POP(DB->fix_options, HP_DB_fix_options) },
	{ HP_POP(DB->default_cmp, HP_DB_default_cmp) },
	{ HP_POP(DB->default_hash, HP_DB_default_hash) },
	{ HP_POP(DB->default_release, HP_DB_default_release) },
	{ HP_POP(DB->custom_release, HP_DB_custom_release) },
	{ HP_POP(DB->alloc, HP_DB_alloc) },
	{ HP_POP(DB->i2key, HP_DB_i2key) },
	{ HP_POP(DB->ui2key, HP_DB_ui2key) },
	{ HP_POP(DB->str2key, HP_DB_str2key) },
	{ HP_POP(DB->i642key, HP_DB_i642key) },
	{ HP_POP(DB->ui642key, HP_DB_ui642key) },
	{ HP_POP(DB->i2data, HP_DB_i2data) },
	{ HP_POP(DB->ui2data, HP_DB_ui2data) },
	{ HP_POP(DB->ptr2data, HP_DB_ptr2data) },
	{ HP_POP(DB->data2i, HP_DB_data2i) },
	{ HP_POP(DB->data2ui, HP_DB_data2ui) },
	{ HP_POP(DB->data2ptr, HP_DB_data2ptr) },
	{ HP_POP(DB->init, HP_DB_init) },
	{ HP_POP(DB->final, HP_DB_final) },
/* des_interface */
	{ HP_POP(des->decrypt_block, HP_des_decrypt_block) },
	{ HP_POP(des->decrypt, HP_des_decrypt) },
/* ipban_interface */
	{ HP_POP(ipban->init, HP_ipban_init) },
	{ HP_POP(ipban->final, HP_ipban_final) },
	{ HP_POP(ipban->cleanup, HP_ipban_cleanup) },
	{ HP_POP(ipban->config_read_inter, HP_ipban_config_read_inter) },
	{ HP_POP(ipban->config_read_connection, HP_ipban_config_read_connection) },
	{ HP_POP(ipban->config_read_dynamic, HP_ipban_config_read_dynamic) },
	{ HP_POP(ipban->config_read, HP_ipban_config_read) },
	{ HP_POP(ipban->check, HP_ipban_check) },
	{ HP_POP(ipban->log, HP_ipban_log) },
/* lchrif_interface */
	{ HP_POP(lchrif->server_init, HP_lchrif_server_init) },
	{ HP_POP(lchrif->server_destroy, HP_lchrif_server_destroy) },
	{ HP_POP(lchrif->server_reset, HP_lchrif_server_reset) },
	{ HP_POP(lchrif->on_disconnect, HP_lchrif_on_disconnect) },
/* lclif_interface */
	{ HP_POP(lclif->init, HP_lclif_init) },
	{ HP_POP(lclif->final, HP_lclif_final) },
	{ HP_POP(lclif->connection_error, HP_lclif_connection_error) },
	{ HP_POP(lclif->server_list, HP_lclif_server_list) },
	{ HP_POP(lclif->auth_failed, HP_lclif_auth_failed) },
	{ HP_POP(lclif->login_error, HP_lclif_login_error) },
	{ HP_POP(lclif->coding_key, HP_lclif_coding_key) },
	{ HP_POP(lclif->packet, HP_lclif_packet) },
	{ HP_POP(lclif->parse_packet, HP_lclif_parse_packet) },
	{ HP_POP(lclif->parse, HP_lclif_parse) },
/* lclif_interface_private */
	{ HP_POP(lclif->p->packetdb_loaddb, HP_PRIV__lclif_packetdb_loaddb) },
	{ HP_POP(lclif->p->parse_sub, HP_PRIV__lclif_parse_sub) },
	{ HP_POP(lclif->p->parse_CA_CONNECT_INFO_CHANGED, HP_PRIV__lclif_parse_CA_CONNECT_INFO_CHANGED) },
	{ HP_POP(lclif->p->parse_CA_EXE_HASHCHECK, HP_PRIV__lclif_parse_CA_EXE_HASHCHECK) },
	{ HP_POP(lclif->p->parse_CA_LOGIN, HP_PRIV__lclif_parse_CA_LOGIN) },
	{ HP_POP(lclif->p->parse_CA_LOGIN2, HP_PRIV__lclif_parse_CA_LOGIN2) },
	{ HP_POP(lclif->p->parse_CA_LOGIN3, HP_PRIV__lclif_parse_CA_LOGIN3) },
	{ HP_POP(lclif->p->parse_CA_LOGIN4, HP_PRIV__lclif_parse_CA_LOGIN4) },
	{ HP_POP(lclif->p->parse_CA_LOGIN_PCBANG, HP_PRIV__lclif_parse_CA_LOGIN_PCBANG) },
	{ HP_POP(lclif->p->parse_CA_LOGIN_HAN, HP_PRIV__lclif_parse_CA_LOGIN_HAN) },
	{ HP_POP(lclif->p->parse_CA_SSO_LOGIN_REQ, HP_PRIV__lclif_parse_CA_SSO_LOGIN_REQ) },
	{ HP_POP(lclif->p->parse_CA_LOGIN_OTP, HP_PRIV__lclif_parse_CA_LOGIN_OTP) },
	{ HP_POP(lclif->p->parse_CA_ACK_MOBILE_OTP, HP_PRIV__lclif_parse_CA_ACK_MOBILE_OTP) },
	{ HP_POP(lclif->p->parse_CA_OTP_CODE, HP_PRIV__lclif_parse_CA_OTP_CODE) },
	{ HP_POP(lclif->p->parse_CA_REQ_HASH, HP_PRIV__lclif_parse_CA_REQ_HASH) },
	{ HP_POP(lclif->p->parse_CA_CHARSERVERCONNECT, HP_PRIV__lclif_parse_CA_CHARSERVERCONNECT) },
/* libconfig_interface */
	{ HP_POP(libconfig->read, HP_libconfig_read) },
	{ HP_POP(libconfig->write, HP_libconfig_write) },
	{ HP_POP(libconfig->set_options, HP_libconfig_set_options) },
	{ HP_POP(libconfig->get_options, HP_libconfig_get_options) },
	{ HP_POP(libconfig->read_string, HP_libconfig_read_string) },
	{ HP_POP(libconfig->read_file_src, HP_libconfig_read_file_src) },
	{ HP_POP(libconfig->write_file, HP_libconfig_write_file) },
	{ HP_POP(libconfig->set_destructor, HP_libconfig_set_destructor) },
	{ HP_POP(libconfig->set_include_dir, HP_libconfig_set_include_dir) },
	{ HP_POP(libconfig->init, HP_libconfig_init) },
	{ HP_POP(libconfig->destroy, HP_libconfig_destroy) },
	{ HP_POP(libconfig->setting_get_int, HP_libconfig_setting_get_int) },
	{ HP_POP(libconfig->setting_get_int64, HP_libconfig_setting_get_int64) },
	{ HP_POP(libconfig->setting_get_float, HP_libconfig_setting_get_float) },
	{ HP_POP(libconfig->setting_get_bool, HP_libconfig_setting_get_bool) },
	{ HP_POP(libconfig->setting_get_string, HP_libconfig_setting_get_string) },
	{ HP_POP(libconfig->setting_lookup, HP_libconfig_setting_lookup) },
	{ HP_POP(libconfig->setting_lookup_int, HP_libconfig_setting_lookup_int) },
	{ HP_POP(libconfig->setting_lookup_int64, HP_libconfig_setting_lookup_int64) },
	{ HP_POP(libconfig->setting_lookup_float, HP_libconfig_setting_lookup_float) },
	{ HP_POP(libconfig->setting_lookup_bool, HP_libconfig_setting_lookup_bool) },
	{ HP_POP(libconfig->setting_lookup_string, HP_libconfig_setting_lookup_string) },
	{ HP_POP(libconfig->setting_set_int, HP_libconfig_setting_set_int) },
	{ HP_POP(libconfig->setting_set_int64, HP_libconfig_setting_set_int64) },
	{ HP_POP(libconfig->setting_set_float, HP_libconfig_setting_set_float) },
	{ HP_POP(libconfig->setting_set_bool, HP_libconfig_setting_set_bool) },
	{ HP_POP(libconfig->setting_set_string, HP_libconfig_setting_set_string) },
	{ HP_POP(libconfig->setting_set_format, HP_libconfig_setting_set_format) },
	{ HP_POP(libconfig->setting_get_format, HP_libconfig_setting_get_format) },
	{ HP_POP(libconfig->setting_get_int_elem, HP_libconfig_setting_get_int_elem) },
	{ HP_POP(libconfig->setting_get_int64_elem, HP_libconfig_setting_get_int64_elem) },
	{ HP_POP(libconfig->setting_get_float_elem, HP_libconfig_setting_get_float_elem) },
	{ HP_POP(libconfig->setting_get_bool_elem, HP_libconfig_setting_get_bool_elem) },
	{ HP_POP(libconfig->setting_get_string_elem, HP_libconfig_setting_get_string_elem) },
	{ HP_POP(libconfig->setting_set_int_elem, HP_libconfig_setting_set_int_elem) },
	{ HP_POP(libconfig->setting_set_int64_elem, HP_libconfig_setting_set_int64_elem) },
	{ HP_POP(libconfig->setting_set_float_elem, HP_libconfig_setting_set_float_elem) },
	{ HP_POP(libconfig->setting_set_bool_elem, HP_libconfig_setting_set_bool_elem) },
	{ HP_POP(libconfig->setting_set_string_elem, HP_libconfig_setting_set_string_elem) },
	{ HP_POP(libconfig->setting_index, HP_libconfig_setting_index) },
	{ HP_POP(libconfig->setting_length, HP_libconfig_setting_length) },
	{ HP_POP(libconfig->setting_get_elem, HP_libconfig_setting_get_elem) },
	{ HP_POP(libconfig->setting_get_member, HP_libconfig_setting_get_member) },
	{ HP_POP(libconfig->setting_add, HP_libconfig_setting_add) },
	{ HP_POP(libconfig->setting_remove, HP_libconfig_setting_remove) },
	{ HP_POP(libconfig->setting_remove_elem, HP_libconfig_setting_remove_elem) },
	{ HP_POP(libconfig->setting_set_hook, HP_libconfig_setting_set_hook) },
	{ HP_POP(libconfig->lookup, HP_libconfig_lookup) },
	{ HP_POP(libconfig->lookup_int, HP_libconfig_lookup_int) },
	{ HP_POP(libconfig->lookup_int64, HP_libconfig_lookup_int64) },
	{ HP_POP(libconfig->lookup_float, HP_libconfig_lookup_float) },
	{ HP_POP(libconfig->lookup_bool, HP_libconfig_lookup_bool) },
	{ HP_POP(libconfig->lookup_string, HP_libconfig_lookup_string) },
	{ HP_POP(libconfig->load_file, HP_libconfig_load_file) },
	{ HP_POP(libconfig->setting_copy_simple, HP_libconfig_setting_copy_simple) },
	{ HP_POP(libconfig->setting_copy_elem, HP_libconfig_setting_copy_elem) },
	{ HP_POP(libconfig->setting_copy_aggregate, HP_libconfig_setting_copy_aggregate) },
	{ HP_POP(libconfig->setting_copy, HP_libconfig_setting_copy) },
	{ HP_POP(libconfig->setting_get_bool_real, HP_libconfig_setting_get_bool_real) },
	{ HP_POP(libconfig->setting_get_uint32, HP_libconfig_setting_get_uint32) },
	{ HP_POP(libconfig->setting_get_uint16, HP_libconfig_setting_get_uint16) },
	{ HP_POP(libconfig->setting_get_int16, HP_libconfig_setting_get_int16) },
	{ HP_POP(libconfig->setting_lookup_bool_real, HP_libconfig_setting_lookup_bool_real) },
	{ HP_POP(libconfig->setting_lookup_uint32, HP_libconfig_setting_lookup_uint32) },
	{ HP_POP(libconfig->setting_lookup_uint16, HP_libconfig_setting_lookup_uint16) },
	{ HP_POP(libconfig->setting_lookup_int16, HP_libconfig_setting_lookup_int16) },
	{ HP_POP(libconfig->setting_lookup_mutable_string, HP_libconfig_setting_lookup_mutable_string) },
	{ HP_POP(libconfig->lookup_mutable_string, HP_libconfig_lookup_mutable_string) },
/* login_interface */
	{ HP_POP(login->mmo_auth, HP_login_mmo_auth) },
	{ HP_POP(login->mmo_auth_new, HP_login_mmo_auth_new) },
	{ HP_POP(login->waiting_disconnect_timer, HP_login_waiting_disconnect_timer) },
	{ HP_POP(login->create_online_user, HP_login_create_online_user) },
	{ HP_POP(login->add_online_user, HP_login_add_online_user) },
	{ HP_POP(login->remove_online_user, HP_login_remove_online_user) },
	{ HP_POP(login->online_db_setoffline, HP_login_online_db_setoffline) },
	{ HP_POP(login->online_data_cleanup_sub, HP_login_online_data_cleanup_sub) },
	{ HP_POP(login->online_data_cleanup, HP_login_online_data_cleanup) },
	{ HP_POP(login->sync_ip_addresses, HP_login_sync_ip_addresses) },
	{ HP_POP(login->check_encrypted, HP_login_check_encrypted) },
	{ HP_POP(login->check_password, HP_login_check_password) },
	{ HP_POP(login->lan_subnet_check, HP_login_lan_subnet_check) },
	{ HP_POP(login->fromchar_accinfo, HP_login_fromchar_accinfo) },
	{ HP_POP(login->fromchar_account, HP_login_fromchar_account) },
	{ HP_POP(login->fromchar_account_update_other, HP_login_fromchar_account_update_other) },
	{ HP_POP(login->fromchar_auth_ack, HP_login_fromchar_auth_ack) },
	{ HP_POP(login->fromchar_ban, HP_login_fromchar_ban) },
	{ HP_POP(login->fromchar_change_sex_other, HP_login_fromchar_change_sex_other) },
	{ HP_POP(login->fromchar_pong, HP_login_fromchar_pong) },
	{ HP_POP(login->fromchar_parse_auth, HP_login_fromchar_parse_auth) },
	{ HP_POP(login->fromchar_parse_update_users, HP_login_fromchar_parse_update_users) },
	{ HP_POP(login->fromchar_parse_request_change_email, HP_login_fromchar_parse_request_change_email) },
	{ HP_POP(login->fromchar_parse_account_data, HP_login_fromchar_parse_account_data) },
	{ HP_POP(login->fromchar_parse_ping, HP_login_fromchar_parse_ping) },
	{ HP_POP(login->fromchar_parse_change_email, HP_login_fromchar_parse_change_email) },
	{ HP_POP(login->fromchar_parse_account_update, HP_login_fromchar_parse_account_update) },
	{ HP_POP(login->fromchar_parse_ban, HP_login_fromchar_parse_ban) },
	{ HP_POP(login->fromchar_parse_change_sex, HP_login_fromchar_parse_change_sex) },
	{ HP_POP(login->fromchar_parse_account_reg2, HP_login_fromchar_parse_account_reg2) },
	{ HP_POP(login->fromchar_parse_unban, HP_login_fromchar_parse_unban) },
	{ HP_POP(login->fromchar_parse_account_online, HP_login_fromchar_parse_account_online) },
	{ HP_POP(login->fromchar_parse_account_offline, HP_login_fromchar_parse_account_offline) },
	{ HP_POP(login->fromchar_parse_online_accounts, HP_login_fromchar_parse_online_accounts) },
	{ HP_POP(login->fromchar_parse_request_account_reg2, HP_login_fromchar_parse_request_account_reg2) },
	{ HP_POP(login->fromchar_parse_update_wan_ip, HP_login_fromchar_parse_update_wan_ip) },
	{ HP_POP(login->fromchar_parse_all_offline, HP_login_fromchar_parse_all_offline) },
	{ HP_POP(login->fromchar_parse_change_pincode, HP_login_fromchar_parse_change_pincode) },
	{ HP_POP(login->fromchar_parse_wrong_pincode, HP_login_fromchar_parse_wrong_pincode) },
	{ HP_POP(login->fromchar_parse_accinfo, HP_login_fromchar_parse_accinfo) },
	{ HP_POP(login->parse_fromchar, HP_login_parse_fromchar) },
	{ HP_POP(login->kick, HP_login_kick) },
	{ HP_POP(login->auth_ok, HP_login_auth_ok) },
	{ HP_POP(login->auth_failed, HP_login_auth_failed) },
	{ HP_POP(login->client_login, HP_login_client_login) },
	{ HP_POP(login->client_login_otp, HP_login_client_login_otp) },
	{ HP_POP(login->client_login_mobile_otp_request, HP_login_client_login_mobile_otp_request) },
	{ HP_POP(login->char_server_connection_status, HP_login_char_server_connection_status) },
	{ HP_POP(login->parse_request_connection, HP_login_parse_request_connection) },
	{ HP_POP(login->config_set_defaults, HP_login_config_set_defaults) },
	{ HP_POP(login->config_read, HP_login_config_read) },
	{ HP_POP(login->config_read_inter, HP_login_config_read_inter) },
	{ HP_POP(login->config_read_console, HP_login_config_read_console) },
	{ HP_POP(login->config_read_log, HP_login_config_read_log) },
	{ HP_POP(login->config_read_account, HP_login_config_read_account) },
	{ HP_POP(login->config_read_permission, HP_login_config_read_permission) },
	{ HP_POP(login->config_read_permission_hash, HP_login_config_read_permission_hash) },
	{ HP_POP(login->config_read_permission_blacklist, HP_login_config_read_permission_blacklist) },
	{ HP_POP(login->config_read_users, HP_login_config_read_users) },
	{ HP_POP(login->clear_dnsbl_servers, HP_login_clear_dnsbl_servers) },
	{ HP_POP(login->config_set_dnsbl_servers, HP_login_config_set_dnsbl_servers) },
	{ HP_POP(login->clear_client_hash_nodes, HP_login_clear_client_hash_nodes) },
	{ HP_POP(login->config_set_md5hash, HP_login_config_set_md5hash) },
	{ HP_POP(login->convert_users_to_colors, HP_login_convert_users_to_colors) },
/* loginlog_interface */
	{ HP_POP(loginlog->failedattempts, HP_loginlog_failedattempts) },
	{ HP_POP(loginlog->log, HP_loginlog_log) },
	{ HP_POP(loginlog->init, HP_loginlog_init) },
	{ HP_POP(loginlog->final, HP_loginlog_final) },
	{ HP_POP(loginlog->config_read_names, HP_loginlog_config_read_names) },
	{ HP_POP(loginlog->config_read_log, HP_loginlog_config_read_log) },
	{ HP_POP(loginlog->config_read, HP_loginlog_config_read) },
/* md5_interface */
	{ HP_POP(md5->string, HP_md5_string) },
	{ HP_POP(md5->binary, HP_md5_binary) },
	{ HP_POP(md5->salt, HP_md5_salt) },
/* mutex_interface */
	{ HP_POP(mutex->create, HP_mutex_create) },
	{ HP_POP(mutex->destroy, HP_mutex_destroy) },
	{ HP_POP(mutex->lock, HP_mutex_lock) },
	{ HP_POP(mutex->trylock, HP_mutex_trylock) },
	{ HP_POP(mutex->unlock, HP_mutex_unlock) },
	{ HP_POP(mutex->cond_create, HP_mutex_cond_create) },
	{ HP_POP(mutex->cond_destroy, HP_mutex_cond_destroy) },
	{ HP_POP(mutex->cond_wait, HP_mutex_cond_wait) },
	{ HP_POP(mutex->cond_signal, HP_mutex_cond_signal) },
	{ HP_POP(mutex->cond_broadcast, HP_mutex_cond_broadcast) },
/* nullpo_interface */
	{ HP_POP(nullpo->assert_report, HP_nullpo_assert_report) },
/* packets_interface */
	{ HP_POP(packets->init, HP_packets_init) },
	{ HP_POP(packets->final, HP_packets_final) },
	{ HP_POP(packets->addLens, HP_packets_addLens) },
	{ HP_POP(packets->addLen, HP_packets_addLen) },
/* rnd_interface */
	{ HP_POP(rnd->init, HP_rnd_init) },
	{ HP_POP(rnd->final, HP_rnd_final) },
	{ HP_POP(rnd->seed, HP_rnd_seed) },
	{ HP_POP(rnd->random, HP_rnd_random) },
	{ HP_POP(rnd->roll, HP_rnd_roll) },
	{ HP_POP(rnd->value, HP_rnd_value) },
	{ HP_POP(rnd->uniform, HP_rnd_uniform) },
	{ HP_POP(rnd->uniform53, HP_rnd_uniform53) },
/* showmsg_interface */
	{ HP_POP(showmsg->init, HP_showmsg_init) },
	{ HP_POP(showmsg->final, HP_showmsg_final) },
	{ HP_POP(showmsg->clearScreen, HP_showmsg_clearScreen) },
	{ HP_POP(showmsg->showMessageV, HP_showmsg_showMessageV) },
/* socket_interface */
	{ HP_POP(sockt->init, HP_sockt_init) },
	{ HP_POP(sockt->final, HP_sockt_final) },
	{ HP_POP(sockt->perform, HP_sockt_perform) },
	{ HP_POP(sockt->datasync, HP_sockt_datasync) },
	{ HP_POP(sockt->make_listen_bind, HP_sockt_make_listen_bind) },
	{ HP_POP(sockt->make_connection, HP_sockt_make_connection) },
	{ HP_POP(sockt->realloc_fifo, HP_sockt_realloc_fifo) },
	{ HP_POP(sockt->realloc_writefifo, HP_sockt_realloc_writefifo) },
	{ HP_POP(sockt->wfifoset, HP_sockt_wfifoset) },
	{ HP_POP(sockt->wfifohead, HP_sockt_wfifohead) },
	{ HP_POP(sockt->rfifoskip, HP_sockt_rfifoskip) },
	{ HP_POP(sockt->close, HP_sockt_close) },
	{ HP_POP(sockt->validateWfifo, HP_sockt_validateWfifo) },
	{ HP_POP(sockt->session_is_valid, HP_sockt_session_is_valid) },
	{ HP_POP(sockt->session_is_active, HP_sockt_session_is_active) },
	{ HP_POP(sockt->flush, HP_sockt_flush) },
	{ HP_POP(sockt->flush_fifos, HP_sockt_flush_fifos) },
	{ HP_POP(sockt->connect_client, HP_sockt_connect_client) },
	{ HP_POP(sockt->set_nonblocking, HP_sockt_set_nonblocking) },
	{ HP_POP(sockt->set_defaultparse, HP_sockt_set_defaultparse) },
	{ HP_POP(sockt->host2ip, HP_sockt_host2ip) },
	{ HP_POP(sockt->ip2str, HP_sockt_ip2str) },
	{ HP_POP(sockt->str2ip, HP_sockt_str2ip) },
	{ HP_POP(sockt->ntows, HP_sockt_ntows) },
	{ HP_POP(sockt->getips, HP_sockt_getips) },
	{ HP_POP(sockt->eof, HP_sockt_eof) },
	{ HP_POP(sockt->lan_subnet_check, HP_sockt_lan_subnet_check) },
	{ HP_POP(sockt->allowed_ip_check, HP_sockt_allowed_ip_check) },
	{ HP_POP(sockt->trusted_ip_check, HP_sockt_trusted_ip_check) },
	{ HP_POP(sockt->net_config_read_sub, HP_sockt_net_config_read_sub) },
	{ HP_POP(sockt->net_config_read, HP_sockt_net_config_read) },
/* sql_interface */
	{ HP_POP(SQL->Connect, HP_SQL_Connect) },
	{ HP_POP(SQL->GetTimeout, HP_SQL_GetTimeout) },
	{ HP_POP(SQL->GetColumnNames, HP_SQL_GetColumnNames) },
	{ HP_POP(SQL->SetEncoding, HP_SQL_SetEncoding) },
	{ HP_POP(SQL->Ping, HP_SQL_Ping) },
	{ HP_POP(SQL->EscapeString, HP_SQL_EscapeString) },
	{ HP_POP(SQL->EscapeStringLen, HP_SQL_EscapeStringLen) },
	{ HP_POP(SQL->QueryV, HP_SQL_QueryV) },
	{ HP_POP(SQL->QueryStr, HP_SQL_QueryStr) },
	{ HP_POP(SQL->LastInsertId, HP_SQL_LastInsertId) },
	{ HP_POP(SQL->NumColumns, HP_SQL_NumColumns) },
	{ HP_POP(SQL->NumRows, HP_SQL_NumRows) },
	{ HP_POP(SQL->NextRow, HP_SQL_NextRow) },
	{ HP_POP(SQL->GetData, HP_SQL_GetData) },
	{ HP_POP(SQL->FreeResult, HP_SQL_FreeResult) },
	{ HP_POP(SQL->ShowDebug_, HP_SQL_ShowDebug_) },
	{ HP_POP(SQL->Free, HP_SQL_Free) },
	{ HP_POP(SQL->Malloc, HP_SQL_Malloc) },
	{ HP_POP(SQL->StmtMalloc, HP_SQL_StmtMalloc) },
	{ HP_POP(SQL->StmtPrepareV, HP_SQL_StmtPrepareV) },
	{ HP_POP(SQL->StmtPrepareStr, HP_SQL_StmtPrepareStr) },
	{ HP_POP(SQL->StmtNumParams, HP_SQL_StmtNumParams) },
	{ HP_POP(SQL->StmtBindParam, HP_SQL_StmtBindParam) },
	{ HP_POP(SQL->StmtExecute, HP_SQL_StmtExecute) },
	{ HP_POP(SQL->StmtLastInsertId, HP_SQL_StmtLastInsertId) },
	{ HP_POP(SQL->StmtNumColumns, HP_SQL_StmtNumColumns) },
	{ HP_POP(SQL->StmtBindColumn, HP_SQL_StmtBindColumn) },
	{ HP_POP(SQL->StmtNumRows, HP_SQL_StmtNumRows) },
	{ HP_POP(SQL->StmtNextRow, HP_SQL_StmtNextRow) },
	{ HP_POP(SQL->StmtFreeResult, HP_SQL_StmtFreeResult) },
	{ HP_POP(SQL->StmtFree, HP_SQL_StmtFree) },
	{ HP_POP(SQL->StmtShowDebug_, HP_SQL_StmtShowDebug_) },
/* stringbuf_interface */
	{ HP_POP(StrBuf->Malloc, HP_StrBuf_Malloc) },
	{ HP_POP(StrBuf->Init, HP_StrBuf_Init) },
	{ HP_POP(StrBuf->Vprintf, HP_StrBuf_Vprintf) },
	{ HP_POP(StrBuf->Append, HP_StrBuf_Append) },
	{ HP_POP(StrBuf->AppendStr, HP_StrBuf_AppendStr) },
	{ HP_POP(StrBuf->Length, HP_StrBuf_Length) },
	{ HP_POP(StrBuf->Value, HP_StrBuf_Value) },
	{ HP_POP(StrBuf->Clear, HP_StrBuf_Clear) },
	{ HP_POP(StrBuf->Destroy, HP_StrBuf_Destroy) },
	{ HP_POP(StrBuf->Free, HP_StrBuf_Free) },
/* strlib_interface */
	{ HP_POP(strlib->jstrescape, HP_strlib_jstrescape) },
	{ HP_POP(strlib->jstrescapecpy, HP_strlib_jstrescapecpy) },
	{ HP_POP(strlib->jmemescapecpy, HP_strlib_jmemescapecpy) },
	{ HP_POP(strlib->remove_control_chars_, HP_strlib_remove_control_chars_) },
	{ HP_POP(strlib->trim_, HP_strlib_trim_) },
	{ HP_POP(strlib->normalize_name_, HP_strlib_normalize_name_) },
	{ HP_POP(strlib->stristr_, HP_strlib_stristr_) },
	{ HP_POP(strlib->strnlen_, HP_strlib_strnlen_) },
	{ HP_POP(strlib->strtok_r_, HP_strlib_strtok_r_) },
	{ HP_POP(strlib->e_mail_check_, HP_strlib_e_mail_check_) },
	{ HP_POP(strlib->config_switch_, HP_strlib_config_switch_) },
	{ HP_POP(strlib->safestrncpy_, HP_strlib_safestrncpy_) },
	{ HP_POP(strlib->safestrnlen_, HP_strlib_safestrnlen_) },
	{ HP_POP(strlib->strline_, HP_strlib_strline_) },
	{ HP_POP(strlib->bin2hex_, HP_strlib_bin2hex_) },
/* sv_interface */
	{ HP_POP(sv->parse_next, HP_sv_parse_next) },
	{ HP_POP(sv->parse, HP_sv_parse) },
	{ HP_POP(sv->split, HP_sv_split) },
	{ HP_POP(sv->escape_c, HP_sv_escape_c) },
	{ HP_POP(sv->unescape_c, HP_sv_unescape_c) },
	{ HP_POP(sv->skip_escaped_c, HP_sv_skip_escaped_c) },
	{ HP_POP(sv->readdb, HP_sv_readdb) },
/* sysinfo_interface */
	{ HP_POP(sysinfo->getpagesize, HP_sysinfo_getpagesize) },
	{ HP_POP(sysinfo->platform, HP_sysinfo_platform) },
	{ HP_POP(sysinfo->osversion, HP_sysinfo_osversion) },
	{ HP_POP(sysinfo->cpu, HP_sysinfo_cpu) },
	{ HP_POP(sysinfo->cpucores, HP_sysinfo_cpucores) },
	{ HP_POP(sysinfo->arch, HP_sysinfo_arch) },
	{ HP_POP(sysinfo->is64bit, HP_sysinfo_is64bit) },
	{ HP_POP(sysinfo->compiler, HP_sysinfo_compiler) },
	{ HP_POP(sysinfo->cflags, HP_sysinfo_cflags) },
	{ HP_POP(sysinfo->time, HP_sysinfo_time) },
	{ HP_POP(sysinfo->vcstype, HP_sysinfo_vcstype) },
	{ HP_POP(sysinfo->vcstypeid, HP_sysinfo_vcstypeid) },
	{ HP_POP(sysinfo->vcsrevision_src, HP_sysinfo_vcsrevision_src) },
	{ HP_POP(sysinfo->vcsrevision_scripts, HP_sysinfo_vcsrevision_scripts) },
	{ HP_POP(sysinfo->vcsrevision_reload, HP_sysinfo_vcsrevision_reload) },
	{ HP_POP(sysinfo->is_superuser, HP_sysinfo_is_superuser) },
	{ HP_POP(sysinfo->init, HP_sysinfo_init) },
	{ HP_POP(sysinfo->final, HP_sysinfo_final) },
/* thread_interface */
	{ HP_POP(thread->init, HP_thread_init) },
	{ HP_POP(thread->final, HP_thread_final) },
	{ HP_POP(thread->create, HP_thread_create) },
	{ HP_POP(thread->create_opt, HP_thread_create_opt) },
	{ HP_POP(thread->destroy, HP_thread_destroy) },
	{ HP_POP(thread->self, HP_thread_self) },
	{ HP_POP(thread->get_tid, HP_thread_get_tid) },
	{ HP_POP(thread->wait, HP_thread_wait) },
	{ HP_POP(thread->prio_set, HP_thread_prio_set) },
	{ HP_POP(thread->prio_get, HP_thread_prio_get) },
	{ HP_POP(thread->yield, HP_thread_yield) },
/* timer_interface */
	{ HP_POP(timer->gettick, HP_timer_gettick) },
	{ HP_POP(timer->gettick_nocache, HP_timer_gettick_nocache) },
	{ HP_POP(timer->add, HP_timer_add) },
	{ HP_POP(timer->add_interval, HP_timer_add_interval) },
	{ HP_POP(timer->get, HP_timer_get) },
	{ HP_POP(timer->delete, HP_timer_delete) },
	{ HP_POP(timer->addtick, HP_timer_addtick) },
	{ HP_POP(timer->settick, HP_timer_settick) },
	{ HP_POP(timer->add_func_list, HP_timer_add_func_list) },
	{ HP_POP(timer->get_uptime, HP_timer_get_uptime) },
	{ HP_POP(timer->perform, HP_timer_perform) },
	{ HP_POP(timer->init, HP_timer_init) },
	{ HP_POP(timer->final, HP_timer_final) },
};

int HookingPointsLenMax = 42;