Hello My udf function (inet_aton functionality for 3.21.33 server) does work in 99% percent of all cases, just when I use it on the output of a outer join where some fields are NULL it crashes the server - when giving NULL as argument directly it works: result of a join of 2 very simple tables (a,b are int; c is char): +------+------+------+---------+ | a | b | a | c | +------+------+------+---------+ | 1 | 1 | NULL | NULL | ... mysql> select *,ewu_aton(NULL) from a left outer join c using (a); ERROR: Wrong arguments to ewu_aton; Use the source! mysql> select *,ewu_aton(c) from a left outer join c using (a); ERROR 2013: Lost connection to MySQL server during query How does this come? In a INT_RESULT function I even have no change to do errors with malloc etc... bye, -christian- my_bool ewu_aton_init(UDF_INIT *initid, UDF_ARGS *args, char *message) { unsigned int a,b,c,d; if (args->arg_count != 1 || args->arg_type[0] != STRING_RESULT || args->lengths[0] < 1 || args->lengths[0] > 15) { strcpy(message,"Wrong arguments to ewu_aton; Use the source!"); return 1; } if (sscanf(args->args[0], "%u.%u.%u.%u", &a, &b, &c, &d) != 4) { strcpy(message,"This is not a dotted-quad IP; Use the source!"); return 1; } if (a>255 || b>255 || c>255 || d>255) { strcpy(message,"Invalid IP number; Use the source!"); return 1; } initid->maybe_null=0; return 0; } long long ewu_aton(UDF_INIT *initid, UDF_ARGS *args, char *is_null, char *error) { unsigned int a,b,c,d; if (sscanf(args->args[0], "%u.%u.%u.%u", &a, &b, &c, &d) != 4) { /* cannot happen - init checks this...?! */ *is_null=1; *error=1; return 0; } *is_null=0; *error=0; return (long unsigned int)( a*0x01000000 + b*0x00010000 + c*0x00000100 + d); } -- Christian Hammers WESTEND GmbH - Aachen und Dueren Tel 0241/701333-0 [EMAIL PROTECTED] Internet & Security for Professionals Fax 0241/911879 WESTEND ist CISCO Systems Partner - Premium Certified --------------------------------------------------------------------- Before posting, please check: http://www.mysql.com/manual.php (the manual) http://lists.mysql.com/ (the list archive) To request this thread, e-mail <[EMAIL PROTECTED]> To unsubscribe, e-mail <[EMAIL PROTECTED]> Trouble unsubscribing? Try: http://lists.mysql.com/php/unsubscribe.php