@@ -353,7 +353,7 @@ server_handshake(EV_P_ ev_io *w, buffer_t *buf)
353
353
}
354
354
return server_handshake_reply (EV_A_ w , 1 , & response );
355
355
} else if (request -> cmd != SOCKS5_CMD_CONNECT ) {
356
- LOGE ("unsupported cmd : %d" , request -> cmd );
356
+ LOGE ("unsupported command : %d" , request -> cmd );
357
357
response .rep = SOCKS5_REP_CMD_NOT_SUPPORTED ;
358
358
char * send_buf = (char * )& response ;
359
359
send (server -> fd , send_buf , 4 , 0 );
@@ -876,6 +876,13 @@ server_recv_cb(EV_P_ ev_io *w, int revents)
876
876
// all processed
877
877
return ;
878
878
} else if (server -> stage == STAGE_INIT ) {
879
+ if (verbose ) {
880
+ struct sockaddr_in peer_addr ;
881
+ socklen_t peer_addr_len = sizeof peer_addr ;
882
+ if (getpeername (server -> fd , (struct sockaddr * )& peer_addr , & peer_addr_len ) == 0 ) {
883
+ LOGI ("connection from %s:%hu" , inet_ntoa (peer_addr .sin_addr ), ntohs (peer_addr .sin_port ));
884
+ }
885
+ }
879
886
if (buf -> len < 1 )
880
887
return ;
881
888
if (buf -> data [0 ] != SVERSION ) {
@@ -1359,6 +1366,11 @@ create_remote(listen_ctx_t *listener,
1359
1366
memcpy (& (remote -> addr ), remote_addr , remote -> addr_len );
1360
1367
remote -> direct = direct ;
1361
1368
1369
+ if (verbose ) {
1370
+ struct sockaddr_in * sockaddr = (struct sockaddr_in * )& remote -> addr ;
1371
+ LOGI ("remote: %s:%hu" , inet_ntoa (sockaddr -> sin_addr ), ntohs (sockaddr -> sin_port ));
1372
+ }
1373
+
1362
1374
return remote ;
1363
1375
}
1364
1376
@@ -1685,12 +1697,22 @@ main(int argc, char **argv)
1685
1697
}
1686
1698
}
1687
1699
1688
- if (remote_num == 0 || remote_port == NULL ||
1700
+ if (remote_num == 0 ) {
1701
+ fprintf (stderr , "remote_num is 0\n" );
1702
+ exit (EXIT_FAILURE );
1703
+ }
1704
+ if (!remote_port ) {
1705
+ fprintf (stderr , "remote_port is NULL\n" );
1706
+ exit (EXIT_FAILURE );
1707
+ }
1689
1708
#ifndef HAVE_LAUNCHD
1690
- local_port == NULL ||
1709
+ if (!local_port ) {
1710
+ fprintf (stderr , "local_port is NULL\n" );
1711
+ exit (EXIT_FAILURE );
1712
+ }
1691
1713
#endif
1692
- ( password == NULL && key == NULL ) ) {
1693
- usage ( );
1714
+ if (! password && ! key ) {
1715
+ fprintf ( stderr , "both password and key are NULL\n" );
1694
1716
exit (EXIT_FAILURE );
1695
1717
}
1696
1718
0 commit comments