Changes in trunk/src/sh_forward.c [27:20]
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/sh_forward.c
r27 r20 335 335 #endif 336 336 337 #if defined(SH_WITH_CLIENT) || defined(SH_WITH_SERVER)337 #ifdef SH_WITH_CLIENT 338 338 339 339 static int count_dev_server = 0; … … 345 345 } 346 346 347 int sh_forward_setlogserver (c onst char * address)347 int sh_forward_setlogserver (char * address) 348 348 { 349 349 SL_ENTER(_("sh_forward_setlogserver")); … … 708 708 static long sh_forward_try (char * errmsg); 709 709 710 static unsigned int ServerPort = SH_DEFAULT_PORT;711 712 int sh_forward_server_port (const char * str)713 {714 unsigned long l;715 char * endptr;716 717 SL_ENTER(_("sh_forward_server_port"));718 719 l = strtoul (str, &endptr, 0);720 if (l > 65535 || endptr == str)721 {722 SL_RETURN (-1, _("sh_forward_server_port"));723 }724 ServerPort = (unsigned int) l;725 SL_RETURN (0, _("sh_forward_server_port"));726 }727 710 728 711 long sh_forward (char * errmsg) … … 897 880 898 881 sockfd = connect_port_2 (sh.srvexport.name, sh.srvexport.alt, 899 S erverPort,882 SH_DEFAULT_PORT, 900 883 error_call, &error_num, error_msg, 256); 901 884 … … 1458 1441 flag_err, 1459 1442 MSG_TCP_NOCONF); 1460 } 1461 #ifdef SH_WITH_CLIENT 1462 else { 1443 } else { 1463 1444 sh_socket_server_cmd(buffer); 1464 1445 } 1465 #endif1466 1446 flag_err = 0; 1467 1447 … … 1931 1911 1932 1912 1933 int sh_forward_use_clt_class (c onst char * c)1913 int sh_forward_use_clt_class (char * c) 1934 1914 { 1935 1915 int i; … … 1939 1919 } 1940 1920 1941 int sh_forward_use_clt_sev (c onst char * c)1921 int sh_forward_use_clt_sev (char * c) 1942 1922 { 1943 1923 int i; … … 1970 1950 } 1971 1951 1972 1973 int sh_forward_register_client (const char * str) 1952 extern int safe_logger (int signal, int method, pid_t thepid); 1953 1954 int sh_forward_register_client (char * str) 1974 1955 { 1975 1956 client_t * newclt; 1976 1957 client_t * testclt; 1977 1958 1978 c onst char* ptr;1959 char * ptr; 1979 1960 int sepnum = 0; 1980 1961 int sep[2]; … … 1999 1980 if (all_clients == NULL) 2000 1981 { 2001 (void) safe_logger (0, 0, NULL);1982 (void) safe_logger (0, 0, getpid()); 2002 1983 aud__exit(FIL__, __LINE__, EXIT_FAILURE); 2003 1984 } … … 2031 2012 newclt->status_arr[i] = CLT_INACTIVE; 2032 2013 sl_strlcpy(newclt->timestamp[CLT_INACTIVE], sh_unix_time(0), TIM_MAX); 2033 /* truncate */2034 2014 sl_strlcpy(newclt->hostname, &str[0], sep[0]+1); 2035 /* truncate */2036 2015 sl_strlcpy(newclt->salt, &str[sep[0]+1], sep[1]-sep[0]); 2037 2016 sl_strlcpy(newclt->verifier, &str[sep[1]+1], sl_strlen(str)-sep[1]+1); … … 2407 2386 2408 2387 #if defined(WITH_EXTERNAL) 2409 sl_snprintf(msg, sizeof(msg), _("%s %s %s"), 2410 conn->hostname, conn->timestamp[status], _(clt_stat[status])); 2388 sprintf(msg, _("%s %s %s"), /* known to fit */ 2389 conn->hostname, 2390 conn->timestamp[status], 2391 _(clt_stat[status])); 2411 2392 sh_ext_execute('s', 'r', 'v', msg, 0); 2412 2393 #endif … … 2417 2398 static time_t time_client_limit = 86400; 2418 2399 2419 int sh_forward_set_time_limit (c onst char * c)2400 int sh_forward_set_time_limit (char * c) 2420 2401 { 2421 2402 long val; … … 2467 2448 static int lookup_err = SH_ERR_SEVERE; 2468 2449 2469 int sh_forward_lookup_level (c onst char * c)2450 int sh_forward_lookup_level (char * c) 2470 2451 { 2471 2452 int ci = sh_error_convert_level (c); … … 2622 2603 static int UseSocketPeer = S_FALSE; 2623 2604 2624 int set_socket_peer (c onst char * c)2605 int set_socket_peer (char * c) 2625 2606 { 2626 2607 return sh_util_flagval(c, &UseSocketPeer); … … 2750 2731 char hash[SH_MAXMSGLEN + KEY_LEN + KEY_LEN + 1]; 2751 2732 char * buffer; 2733 long len; 2752 2734 2753 2735 int clt_sev; … … 2755 2737 2756 2738 UINT32 ticks; 2757 size_t len;2758 2739 int i; 2759 2740 char * test; … … 2840 2821 sh_error_handle((-1), FIL__, __LINE__, 0, MSG_TCP_FAUTH, 2841 2822 &(conn->buf[KEY_LEN])); 2842 len = sl_strlen(&(conn->buf[KEY_LEN])) + 1; 2843 /* &(conn->buf[KEY_LEN]) is hostname */ 2844 /* may overlap, thus only memmove is correct */ 2845 memmove(conn->buf, &(conn->buf[KEY_LEN]), len); 2823 strcpy(conn->buf, /* known to fit */ 2824 &(conn->buf[KEY_LEN])); 2846 2825 this_client->session_key[0] = '\0'; 2847 2826 this_client->session_key_timer = (time_t) 1; … … 2856 2835 conn->K = NULL; 2857 2836 } 2858 len= sl_strlen(&(conn->buf[KEY_LEN])) + KEY_LEN + 1;2859 conn->K = SH_ALLOC( len);2837 i = sl_strlen(&(conn->buf[KEY_LEN])) + KEY_LEN + 1; 2838 conn->K = SH_ALLOC(i); 2860 2839 2861 2840 sl_strlcpy (conn->K, … … 2935 2914 conn->A = SH_ALLOC(3*KEY_LEN+1); 2936 2915 sl_strlcpy (conn->A, conn->K, KEY_LEN+1); 2937 sl_strlcat(conn->A, conn->buf, /* truncate*/2916 sl_strlcat(conn->A, conn->buf, /* ignore remainder */ 2938 2917 2*KEY_LEN+1); 2939 2918 sl_strlcat(conn->A, conn->client_entry->session_key, … … 3299 3278 sh_error_handle((-1), FIL__, __LINE__, 0, MSG_TCP_FAUTH, 3300 3279 &(conn->buf[KEY_LEN])); 3301 len = sl_strlen(&(conn->buf[KEY_LEN])) + 1; 3302 /* &(conn->buf[KEY_LEN]) is hostname */ 3303 /* may overlap, thus only memmove is correct */ 3304 memmove(conn->buf, &(conn->buf[KEY_LEN]), len); 3280 strcpy(conn->buf, /* known to fit */ 3281 &(conn->buf[KEY_LEN])); 3305 3282 this_client->session_key[0] = '\0'; 3306 3283 this_client->session_key_timer = (time_t) 1; … … 3316 3293 conn->K = NULL; 3317 3294 } 3318 len= sl_strlen(&(conn->buf[KEY_LEN])) + KEY_LEN + 1;3319 conn->K = SH_ALLOC( len);3295 i = sl_strlen(&(conn->buf[KEY_LEN])) + KEY_LEN + 1; 3296 conn->K = SH_ALLOC(i); 3320 3297 3321 3298 sl_strlcpy (conn->K, … … 4623 4600 static unsigned int server_port = SH_DEFAULT_PORT; 4624 4601 4625 int sh_forward_set_port (c onst char * str)4602 int sh_forward_set_port (char * str) 4626 4603 { 4627 4604 int retval = 0; 4628 4605 unsigned long i; 4629 char * endptr ;4606 char * endptr = str; 4630 4607 4631 4608 SL_ENTER(_("sh_forward_set_port")); … … 4644 4621 static int use_server_interface = 0; 4645 4622 4646 int sh_forward_set_interface (c onst char * str)4623 int sh_forward_set_interface (char * str) 4647 4624 { 4648 4625 if (0 == strcmp(str, _("INADDR_ANY"))) … … 4837 4814 */ 4838 4815 new_act.sa_handler = SIG_IGN; 4839 sigemptyset( &new_act.sa_mask ); /* set an empty mask */4840 new_act.sa_flags = 0; /* init sa_flags */4841 4816 retry_sigaction (FIL__, __LINE__, SIGPIPE, &new_act, &old_act); 4842 4817 … … 5596 5571 } 5597 5572 5598 int set_syslog_active(c onst char * c)5573 int set_syslog_active(char * c) 5599 5574 { 5600 5575 return sh_util_flagval(c, &enable_syslog_socket);
Note:
See TracChangeset
for help on using the changeset viewer.