From d4eec05d00ce77d2bab3848ff49d04acf0ed2cc0 Mon Sep 17 00:00:00 2001 From: Georg Richter Date: Tue, 18 Feb 2025 16:19:50 +0100 Subject: [PATCH] Revert "CONC-710: Remove UDF declarations" Since UDF declarations are used e.g. by lib_mysqludf_sys, I'm reverting this commit. (See also CONC-757). This reverts commit 1a2ed3f67af698b394b2faed069b49d4f409a155. --- include/mariadb_com.h | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) diff --git a/include/mariadb_com.h b/include/mariadb_com.h index 195979af..4418bf8f 100644 --- a/include/mariadb_com.h +++ b/include/mariadb_com.h @@ -406,6 +406,30 @@ struct rand_struct { double max_value_dbl; }; + /* The following is for user defined functions */ + +enum Item_result {STRING_RESULT,REAL_RESULT,INT_RESULT,ROW_RESULT,DECIMAL_RESULT}; + +typedef struct st_udf_args +{ + unsigned int arg_count; /* Number of arguments */ + enum Item_result *arg_type; /* Pointer to item_results */ + char **args; /* Pointer to argument */ + unsigned long *lengths; /* Length of string arguments */ + char *maybe_null; /* Set to 1 for all maybe_null args */ +} UDF_ARGS; + + /* This holds information about the result */ + +typedef struct st_udf_init +{ + my_bool maybe_null; /* 1 if function can return NULL */ + unsigned int decimals; /* for real functions */ + unsigned int max_length; /* For string functions */ + char *ptr; /* free pointer for function data */ + my_bool const_item; /* 0 if result is independent of arguments */ +} UDF_INIT; + /* Connection types */ #define MARIADB_CONNECTION_UNIXSOCKET 0 #define MARIADB_CONNECTION_TCP 1