174
174
extern "C" int gethostname(char *name, int namelen);
178
static const char *tc_heuristic_recover_names[]=
180
"COMMIT", "ROLLBACK", NULL
182
static TYPELIB tc_heuristic_recover_typelib=
184
array_elements(tc_heuristic_recover_names)-1,"",
185
tc_heuristic_recover_names, NULL
188
177
const char *first_keyword= "first";
189
178
const char * const DRIZZLE_CONFIG_NAME= "drizzled";
190
179
#define GET_HA_ROWS GET_ULL
2009
int drizzled_get_one_option(int optid, const struct option *opt,
2014
global_system_variables.tx_isolation= ISO_SERIALIZABLE;
2017
strncpy(drizzle_home,argument,sizeof(drizzle_home)-1);
2020
if (default_collation_name == compiled_default_collation_name)
2021
default_collation_name= 0;
2024
strncpy(data_home_real,argument, sizeof(data_home_real)-1);
2025
/* Correct pointer set by my_getopt (for embedded library) */
2026
data_home= data_home_real;
2027
data_home_len= strlen(data_home);
2030
if (!drizzled_user || !strcmp(drizzled_user, argument))
2031
drizzled_user= argument;
2033
errmsg_printf(ERRMSG_LVL_WARN, _("Ignoring user change to '%s' because the user was "
2034
"set to '%s' earlier on the command line\n"),
2035
argument, drizzled_user);
2038
strncpy(language, argument, sizeof(language)-1);
2045
global_system_variables.log_warnings++;
2046
else if (argument == disabled_my_option)
2047
global_system_variables.log_warnings= 0L;
2049
global_system_variables.log_warnings= atoi(argument);
2054
test_flags.set((uint32_t) atoi(argument));
2057
case (int) OPT_WANT_CORE:
2058
test_flags.set(TEST_CORE_ON_SIGNAL);
2060
case (int) OPT_SKIP_STACK_TRACE:
2061
test_flags.set(TEST_NO_STACKTRACE);
2063
case (int) OPT_SKIP_SYMLINKS:
2064
internal::my_use_symdir=0;
2066
case (int) OPT_BIND_ADDRESS:
2068
struct addrinfo *res_lst, hints;
2070
memset(&hints, 0, sizeof(struct addrinfo));
2071
hints.ai_socktype= SOCK_STREAM;
2072
hints.ai_protocol= IPPROTO_TCP;
2074
if (getaddrinfo(argument, NULL, &hints, &res_lst) != 0)
2076
errmsg_printf(ERRMSG_LVL_ERROR, _("Can't start server: cannot resolve hostname!"));
2077
return EXIT_ARGUMENT_INVALID;
2080
if (res_lst->ai_next)
2082
errmsg_printf(ERRMSG_LVL_ERROR, _("Can't start server: bind-address refers to "
2083
"multiple interfaces!"));
2084
return EXIT_ARGUMENT_INVALID;
2086
freeaddrinfo(res_lst);
2089
case (int) OPT_PID_FILE:
2090
strncpy(pidfile_name, argument, sizeof(pidfile_name)-1);
2094
case OPT_TX_ISOLATION:
2097
type= find_type_or_exit(argument, &tx_isolation_typelib, opt->name);
2098
global_system_variables.tx_isolation= (type-1);
2101
case OPT_TC_HEURISTIC_RECOVER:
2102
tc_heuristic_recover= find_type_or_exit(argument,
2103
&tc_heuristic_recover_typelib,
2114
1999
- FIXME add EXIT_TOO_MANY_ARGUMENTS to "drizzled/error.h" and return that code?