/* ** curl tool main function. */ int main(int argc, char *argv[]) { int res; struct Configurable config; /* Initialise the config */ init_config(&config); main_checkfds(); #if defined(HAVE_SIGNAL) && defined(SIGPIPE) (void)signal(SIGPIPE, SIG_IGN); #endif res = operate(&config, argc, argv); #ifdef __SYMBIAN32__ if(config.showerror) tool_pressanykey(); #endif free_config_fields(&config); #ifdef __NOVELL_LIBC__ if(getenv("_IN_NETWARE_BASH_") == NULL) tool_pressanykey(); #endif #ifdef __VMS vms_special_exit(res, vms_show); #else return res; #endif }
int curl_main(int argc, char *argv[]) #endif { // scp, sftp: edit arguments and relaunch if ((strcmp(argv[0], "scp") == 0) || (strcmp(argv[0], "sftp") == 0)) { return scp_convert(argc, argv); } CURLcode result = CURLE_OK; struct GlobalConfig global; memset(&global, 0, sizeof(global)); main_checkfds(); #if defined(HAVE_SIGNAL) && defined(SIGPIPE) (void)signal(SIGPIPE, SIG_IGN); #endif /* Initialize memory tracking */ memory_tracking_init(); /* Initialize the curl library - do not call any libcurl functions before this point */ result = main_init(&global); if(!result) { /* Start our curl operation */ result = operate(&global, argc, argv); #ifdef __SYMBIAN32__ if(global.showerror) tool_pressanykey(); #endif /* Perform the main cleanup */ main_free(&global); } #ifdef __NOVELL_LIBC__ if(getenv("_IN_NETWARE_BASH_") == NULL) tool_pressanykey(); #endif #ifdef __VMS vms_special_exit(result, vms_show); #else return (int)result; #endif }