Skip to content

Commit a5a44a2

Browse files
committed
Since the generated arginfo handled this, remove from ibm_db2.c
Also fix up the defs to actually work, since we're using generated
1 parent ee5e68c commit a5a44a2

File tree

2 files changed

+49
-361
lines changed

2 files changed

+49
-361
lines changed

ibm_db2.c

Lines changed: 4 additions & 360 deletions
Original file line numberDiff line numberDiff line change
@@ -198,381 +198,25 @@ typedef struct _stmt_handle_struct {
198198
#define STRCASECMP strcasecmp
199199
#endif
200200

201-
/* {{{ ZEND_BEGIN_ARG_INFO
201+
/* {{{ Argument info
202202
*/
203203

204204
#if PHP_MAJOR_VERSION >= 8
205-
#include <ibm_db2_arginfo.h>
205+
#include "ibm_db2_arginfo.h"
206206
#else
207-
/* XXX: */
208-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_connect, 0, 0, 3)
209-
ZEND_ARG_INFO(0, database)
210-
ZEND_ARG_INFO(0, username)
211-
ZEND_ARG_INFO(0, password)
212-
ZEND_ARG_INFO(0, options)
213-
ZEND_END_ARG_INFO()
214-
215-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_commit, 0, 0, 1)
216-
ZEND_ARG_INFO(0, connection)
217-
ZEND_END_ARG_INFO()
218-
219-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_pconnect, 0, 0, 3)
220-
ZEND_ARG_INFO(0, database)
221-
ZEND_ARG_INFO(0, username)
222-
ZEND_ARG_INFO(0, password)
223-
ZEND_ARG_INFO(0, options)
224-
ZEND_END_ARG_INFO()
225-
226-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_autocommit, 0, 0, 1)
227-
ZEND_ARG_INFO(0, autocommit)
228-
ZEND_ARG_INFO(0, value)
229-
ZEND_END_ARG_INFO()
230-
231-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_bind_param, 0, 0, 3)
232-
ZEND_ARG_INFO(0, stmt)
233-
ZEND_ARG_INFO(0, parameter_number)
234-
ZEND_ARG_INFO(0, variable_name)
235-
ZEND_ARG_INFO(0, parameter_type)
236-
ZEND_ARG_INFO(0, data_type)
237-
ZEND_ARG_INFO(0, precision)
238-
ZEND_ARG_INFO(0, scale)
239-
ZEND_END_ARG_INFO()
240-
241-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_close, 0, 0, 1)
242-
ZEND_ARG_INFO(0, connection)
243-
ZEND_END_ARG_INFO()
244-
245-
#ifdef PASE
246-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_pclose, 0, 0, 1)
247-
ZEND_ARG_INFO(0, connection)
248-
ZEND_END_ARG_INFO()
249-
#endif
250-
251-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_column_privileges, 0, 0, 1)
252-
ZEND_ARG_INFO(0, connection)
253-
ZEND_ARG_INFO(0, qualifier)
254-
ZEND_ARG_INFO(0, schema)
255-
ZEND_ARG_INFO(0, table_name)
256-
ZEND_ARG_INFO(0, column_name)
257-
ZEND_END_ARG_INFO()
258-
259-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_columns, 0, 0, 1)
260-
ZEND_ARG_INFO(0, connection)
261-
ZEND_ARG_INFO(0, qualifier)
262-
ZEND_ARG_INFO(0, schema)
263-
ZEND_ARG_INFO(0, table_name)
264-
ZEND_ARG_INFO(0, column_name)
265-
ZEND_END_ARG_INFO()
266-
267-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_foreign_keys, 0, 0, 4)
268-
ZEND_ARG_INFO(0, connection)
269-
ZEND_ARG_INFO(0, qualifier)
270-
ZEND_ARG_INFO(0, schema)
271-
ZEND_ARG_INFO(0, table_name)
272-
ZEND_END_ARG_INFO()
273-
274-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_primary_keys, 0, 0, 4)
275-
ZEND_ARG_INFO(0, connection)
276-
ZEND_ARG_INFO(0, qualifier)
277-
ZEND_ARG_INFO(0, schema)
278-
ZEND_ARG_INFO(0, table_name)
279-
ZEND_END_ARG_INFO()
280-
281-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_procedure_columns, 0, 0, 5)
282-
ZEND_ARG_INFO(0, connection)
283-
ZEND_ARG_INFO(0, qualifier)
284-
ZEND_ARG_INFO(0, schema)
285-
ZEND_ARG_INFO(0, procedure)
286-
ZEND_ARG_INFO(0, parameter)
287-
ZEND_END_ARG_INFO()
288-
289-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_procedures, 0, 0, 4)
290-
ZEND_ARG_INFO(0, connection)
291-
ZEND_ARG_INFO(0, qualifier)
292-
ZEND_ARG_INFO(0, schema)
293-
ZEND_ARG_INFO(0, procedure)
294-
ZEND_END_ARG_INFO()
295-
296-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_special_columns, 0, 0, 5)
297-
ZEND_ARG_INFO(0, connection)
298-
ZEND_ARG_INFO(0, qualifier)
299-
ZEND_ARG_INFO(0, schema)
300-
ZEND_ARG_INFO(0, table_name)
301-
ZEND_ARG_INFO(0, scope)
302-
ZEND_END_ARG_INFO()
303-
304-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_statistics, 0, 0, 5)
305-
ZEND_ARG_INFO(0, connection)
306-
ZEND_ARG_INFO(0, qualifier)
307-
ZEND_ARG_INFO(0, schema)
308-
ZEND_ARG_INFO(0, table_name)
309-
ZEND_ARG_INFO(0, unique)
310-
ZEND_END_ARG_INFO()
311-
312-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_table_privileges, 0, 0, 1)
313-
ZEND_ARG_INFO(0, connection)
314-
ZEND_ARG_INFO(0, qualifier)
315-
ZEND_ARG_INFO(0, schema)
316-
ZEND_ARG_INFO(0, table_name)
317-
ZEND_END_ARG_INFO()
318-
319-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_tables, 0, 0, 1)
320-
ZEND_ARG_INFO(0, connection)
321-
ZEND_ARG_INFO(0, qualifier)
322-
ZEND_ARG_INFO(0, schema)
323-
ZEND_ARG_INFO(0, table_name)
324-
ZEND_ARG_INFO(0, table_type)
325-
ZEND_END_ARG_INFO()
326-
327-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_exec, 0, 0, 2)
328-
ZEND_ARG_INFO(0, connection)
329-
ZEND_ARG_INFO(0, statement)
330-
ZEND_ARG_INFO(0, options)
331-
ZEND_END_ARG_INFO()
332-
333-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_prepare, 0, 0, 2)
334-
ZEND_ARG_INFO(0, connection)
335-
ZEND_ARG_INFO(0, statement)
336-
ZEND_ARG_INFO(0, options)
337-
ZEND_END_ARG_INFO()
338-
339-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_execute, 0, 0, 1)
340-
ZEND_ARG_INFO(0, stmt)
341-
ZEND_ARG_INFO(0, options)
342-
ZEND_END_ARG_INFO()
343-
344-
#ifndef PASE
345-
/* XXX: db2_execute_many isn't documented */
346-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_execute_many, 0, 0, 1)
347-
ZEND_ARG_INFO(0, stmt)
348-
ZEND_ARG_INFO(0, options)
349-
ZEND_END_ARG_INFO()
350-
#endif
351-
352-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_stmt_errormsg, 0, 0, 0)
353-
ZEND_ARG_INFO(0, stmt)
354-
ZEND_END_ARG_INFO()
355-
356-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_conn_errormsg, 0, 0, 0)
357-
ZEND_ARG_INFO(0, connection)
358-
ZEND_END_ARG_INFO()
359-
360-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_conn_error, 0, 0, 0)
361-
ZEND_ARG_INFO(0, connection)
362-
ZEND_END_ARG_INFO()
363-
364-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_stmt_error, 0, 0, 0)
365-
ZEND_ARG_INFO(0, stmt)
366-
ZEND_END_ARG_INFO()
367-
368-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_next_result, 0, 0, 1)
369-
ZEND_ARG_INFO(0, stmt)
370-
ZEND_END_ARG_INFO()
371-
372-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_num_fields, 0, 0, 1)
373-
ZEND_ARG_INFO(0, stmt)
374-
ZEND_END_ARG_INFO()
375-
376-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_num_rows, 0, 0, 1)
377-
ZEND_ARG_INFO(0, stmt)
378-
ZEND_END_ARG_INFO()
379-
380-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_field_name, 0, 0, 2)
381-
ZEND_ARG_INFO(0, stmt)
382-
ZEND_ARG_INFO(0, column)
383-
ZEND_END_ARG_INFO()
384-
385-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_field_display_size, 0, 0, 2)
386-
ZEND_ARG_INFO(0, stmt)
387-
ZEND_ARG_INFO(0, column)
388-
ZEND_END_ARG_INFO()
389-
390-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_field_num, 0, 0, 2)
391-
ZEND_ARG_INFO(0, stmt)
392-
ZEND_ARG_INFO(0, column)
393-
ZEND_END_ARG_INFO()
394-
395-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_field_precision, 0, 0, 2)
396-
ZEND_ARG_INFO(0, stmt)
397-
ZEND_ARG_INFO(0, column)
398-
ZEND_END_ARG_INFO()
399-
400-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_field_scale, 0, 0, 2)
401-
ZEND_ARG_INFO(0, stmt)
402-
ZEND_ARG_INFO(0, column)
403-
ZEND_END_ARG_INFO()
404-
405-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_field_type, 0, 0, 2)
406-
ZEND_ARG_INFO(0, stmt)
407-
ZEND_ARG_INFO(0, column)
408-
ZEND_END_ARG_INFO()
409-
410-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_field_width, 0, 0, 2)
411-
ZEND_ARG_INFO(0, stmt)
412-
ZEND_ARG_INFO(0, column)
413-
ZEND_END_ARG_INFO()
414-
415-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_cursor_type, 0, 0, 1)
416-
ZEND_ARG_INFO(0, stmt)
417-
ZEND_END_ARG_INFO()
418-
419-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_rollback, 0, 0, 1)
420-
ZEND_ARG_INFO(0, connection)
421-
ZEND_END_ARG_INFO()
422-
423-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_free_stmt, 0, 0, 1)
424-
ZEND_ARG_INFO(0, stmt)
425-
ZEND_END_ARG_INFO()
426-
427-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_result, 0, 0, 2)
428-
ZEND_ARG_INFO(0, stmt)
429-
ZEND_ARG_INFO(0, column)
430-
ZEND_END_ARG_INFO()
431-
432-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_fetch_row, 0, 0, 1)
433-
ZEND_ARG_INFO(0, stmt)
434-
ZEND_ARG_INFO(0, row_number)
435-
ZEND_END_ARG_INFO()
436-
437-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_fetch_assoc, 0, 0, 1)
438-
ZEND_ARG_INFO(0, stmt)
439-
ZEND_ARG_INFO(0, row_number)
440-
ZEND_END_ARG_INFO()
441-
442-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_fetch_array, 0, 0, 1)
443-
ZEND_ARG_INFO(0, stmt)
444-
ZEND_ARG_INFO(0, row_number)
445-
ZEND_END_ARG_INFO()
446-
447-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_fetch_both, 0, 0, 1)
448-
ZEND_ARG_INFO(0, stmt)
449-
ZEND_ARG_INFO(0, row_number)
450-
ZEND_END_ARG_INFO()
451-
452-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_free_result, 0, 0, 1)
453-
ZEND_ARG_INFO(0, stmt)
454-
ZEND_END_ARG_INFO()
455-
456-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_set_option, 0, 0, 3)
457-
ZEND_ARG_INFO(0, resource)
458-
ZEND_ARG_INFO(0, options)
459-
ZEND_ARG_INFO(0, type)
460-
ZEND_END_ARG_INFO()
461-
462-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_fetch_object, 0, 0, 1)
463-
ZEND_ARG_INFO(0, stmt)
464-
ZEND_ARG_INFO(0, row_number)
465-
ZEND_END_ARG_INFO()
466-
467-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_server_info, 0, 0, 1)
468-
ZEND_ARG_INFO(0, connection)
469-
ZEND_END_ARG_INFO()
470-
471-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_client_info, 0, 0, 1)
472-
ZEND_ARG_INFO(0, connection)
473-
ZEND_END_ARG_INFO()
474-
475-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_escape_string, 0, 0, 1)
476-
ZEND_ARG_INFO(0, string_literal)
477-
ZEND_END_ARG_INFO()
478-
479-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_lob_read, 0, 0, 3)
480-
ZEND_ARG_INFO(0, stmt)
481-
ZEND_ARG_INFO(0, colnum)
482-
ZEND_ARG_INFO(0, length)
483-
ZEND_END_ARG_INFO()
484-
485-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_get_option, 0, 0, 2)
486-
ZEND_ARG_INFO(0, resource)
487-
ZEND_ARG_INFO(0, option)
488-
ZEND_END_ARG_INFO()
489-
490-
ZEND_BEGIN_ARG_INFO_EX(arginfo_db2_last_insert_id, 0, 0, 1)
491-
ZEND_ARG_INFO(0, resource)
492-
ZEND_END_ARG_INFO()
207+
#include "ibm_db2_legacy_arginfo.h"
493208
#endif
494209

495210
/* }}} */
496211

497-
/* {{{ Every user visible function must have an entry in ibm_db2_functions[].
498-
*/
499-
zend_function_entry ibm_db2_functions[] = {
500-
PHP_FE(db2_connect, arginfo_db2_connect)
501-
PHP_FE(db2_commit, arginfo_db2_commit)
502-
PHP_FE(db2_pconnect, arginfo_db2_pconnect)
503-
PHP_FE(db2_autocommit, arginfo_db2_autocommit)
504-
PHP_FE(db2_bind_param, arginfo_db2_bind_param)
505-
PHP_FE(db2_close, arginfo_db2_close)
506-
#ifdef PASE /* IBM i db2_pclose last ditch pconnect close */
507-
PHP_FE(db2_pclose, arginfo_db2_pclose)
508-
#endif /* PASE */
509-
PHP_FE(db2_column_privileges, arginfo_db2_column_privileges)
510-
PHP_FALIAS(db2_columnprivileges, db2_column_privileges, arginfo_db2_column_privileges)
511-
PHP_FE(db2_columns, arginfo_db2_columns)
512-
PHP_FE(db2_foreign_keys, arginfo_db2_foreign_keys)
513-
PHP_FALIAS(db2_foreignkeys, db2_foreign_keys, arginfo_db2_foreign_keys)
514-
PHP_FE(db2_primary_keys, arginfo_db2_primary_keys)
515-
PHP_FALIAS(db2_primarykeys, db2_primary_keys, arginfo_db2_primary_keys)
516-
PHP_FE(db2_procedure_columns, arginfo_db2_procedure_columns)
517-
PHP_FALIAS(db2_procedurecolumns, db2_procedure_columns, arginfo_db2_procedure_columns)
518-
PHP_FE(db2_procedures, arginfo_db2_procedures)
519-
PHP_FE(db2_special_columns, arginfo_db2_special_columns)
520-
PHP_FALIAS(db2_specialcolumns, db2_special_columns, arginfo_db2_special_columns)
521-
PHP_FE(db2_statistics, arginfo_db2_statistics)
522-
PHP_FE(db2_table_privileges, arginfo_db2_table_privileges)
523-
PHP_FALIAS(db2_tableprivileges, db2_table_privileges, arginfo_db2_table_privileges)
524-
PHP_FE(db2_tables, arginfo_db2_tables)
525-
PHP_FE(db2_exec, arginfo_db2_exec)
526-
PHP_FE(db2_prepare, arginfo_db2_prepare)
527-
PHP_FE(db2_execute, arginfo_db2_execute)
528-
#ifndef PASE /* IBM i execute many unsupported */
529-
PHP_FE(db2_execute_many, arginfo_db2_execute_many)
530-
#endif /* PASE */
531-
PHP_FE(db2_stmt_errormsg, arginfo_db2_stmt_errormsg)
532-
PHP_FE(db2_conn_errormsg, arginfo_db2_conn_errormsg)
533-
PHP_FE(db2_conn_error, arginfo_db2_conn_error)
534-
PHP_FE(db2_stmt_error, arginfo_db2_stmt_error)
535-
PHP_FE(db2_next_result, arginfo_db2_next_result)
536-
PHP_FE(db2_num_fields, arginfo_db2_num_fields)
537-
PHP_FE(db2_num_rows, arginfo_db2_num_rows)
538-
PHP_FE(db2_field_name, arginfo_db2_field_name)
539-
PHP_FE(db2_field_display_size, arginfo_db2_field_display_size)
540-
PHP_FE(db2_field_num, arginfo_db2_field_num)
541-
PHP_FE(db2_field_precision, arginfo_db2_field_precision)
542-
PHP_FE(db2_field_scale, arginfo_db2_field_scale)
543-
PHP_FE(db2_field_type, arginfo_db2_field_type)
544-
PHP_FE(db2_field_width, arginfo_db2_field_width)
545-
PHP_FE(db2_cursor_type, arginfo_db2_cursor_type)
546-
PHP_FE(db2_rollback, arginfo_db2_rollback)
547-
PHP_FE(db2_free_stmt, arginfo_db2_free_stmt)
548-
PHP_FE(db2_result, arginfo_db2_result)
549-
PHP_FE(db2_fetch_row, arginfo_db2_fetch_row)
550-
PHP_FE(db2_fetch_assoc, arginfo_db2_fetch_assoc)
551-
PHP_FE(db2_fetch_array, arginfo_db2_fetch_array)
552-
PHP_FE(db2_fetch_both, arginfo_db2_fetch_both)
553-
PHP_FE(db2_free_result, arginfo_db2_free_result)
554-
PHP_FE(db2_set_option, arginfo_db2_set_option)
555-
PHP_FALIAS(db2_setoption, db2_set_option, arginfo_db2_set_option)
556-
PHP_FE(db2_fetch_object, arginfo_db2_fetch_object)
557-
PHP_FE(db2_server_info, arginfo_db2_server_info)
558-
PHP_FE(db2_client_info, arginfo_db2_client_info)
559-
PHP_FE(db2_escape_string, arginfo_db2_escape_string)
560-
PHP_FE(db2_lob_read, arginfo_db2_lob_read)
561-
PHP_FE(db2_get_option, arginfo_db2_get_option)
562-
PHP_FALIAS(db2_getoption, db2_get_option, arginfo_db2_get_option)
563-
PHP_FE(db2_last_insert_id, arginfo_db2_last_insert_id)
564-
{NULL, NULL, NULL} /* Must be the last line in ibm_db2_functions[] */
565-
};
566-
/* }}} */
567-
568212
/* {{{ ibm_db2_module_entry
569213
*/
570214
zend_module_entry ibm_db2_module_entry = {
571215
#if ZEND_MODULE_API_NO >= 20010901
572216
STANDARD_MODULE_HEADER,
573217
#endif
574218
"ibm_db2",
575-
ibm_db2_functions,
219+
ext_functions,
576220
PHP_MINIT(ibm_db2),
577221
PHP_MSHUTDOWN(ibm_db2),
578222
NULL, /* Replace with NULL if there's nothing to do at request start */

0 commit comments

Comments
 (0)