1
0
mirror of https://github.com/nmap/nmap.git synced 2025-12-26 17:39:03 +00:00
Commit Graph

277 Commits

Author SHA1 Message Date
henri
8e38e32df1 Run nsock tests by typing make check from nmap/ or nsock/src/ 2013-05-18 13:06:10 +00:00
henri
8ab21a452d Properly declare the proxy spec structures as extern. 2013-05-13 08:05:31 +00:00
david
6b7b428cb9 Remove COMPAT_SRCS and COMPAT_OBJS.
These appear not to have any effect any more. They were initially used
to conditionally compile and link some files with replacements for
standard library functions, but seem not to have been used after r828
("Moved to nbase system for compatability funcs").
2013-05-13 04:21:11 +00:00
henri
d9de4cc552 'const static' -> 'static const' 2013-05-12 21:02:29 +00:00
henri
e108771faa Use the portable socket_errno() & socket_strerror() functions. 2013-05-12 17:48:33 +00:00
henri
28af8f519f Consistent spacing for switch (<condition>). 2013-05-12 13:40:01 +00:00
henri
ce01e2040a Refactored code.
A switch/case reads easier than a if/else if/else block
to handle multiple cases.
2013-05-12 13:39:53 +00:00
henri
81fda37f89 New function msevent_timedout(). 2013-05-12 13:39:45 +00:00
henri
8475cef210 Return actual error code. 2013-05-11 16:00:11 +00:00
henri
34c407189b s/Little/Minimal/ 2013-05-11 16:00:01 +00:00
henri
e54df43edf Readme file. 2013-05-11 10:22:44 +00:00
henri
3776852557 Added simple TCP connect test and setup ncat listeners.
The listeners are ncat-based echo servers:
  - UDP
  - TCP
  - TCP + SSL
2013-05-10 08:26:48 +00:00
henri
1da1fce331 Fixed indentation. 2013-05-08 18:08:48 +00:00
henri
4862bbcbb9 Added a nsock test module for loglevels. 2013-05-08 18:08:38 +00:00
henri
b51a943a48 Added a minimal regression test suite for nsock. 2013-05-08 11:52:28 +00:00
henri
d383df2847 More style fixes. 2013-05-03 21:25:53 +00:00
henri
23dcad8ea4 Removed redundant code. Style fixes. 2013-05-03 20:41:56 +00:00
henri
677492f914 Added missing references to the MSVC project file.
Reported by Jaebum Shin.
Fix by Gisle Vanem.
2013-05-03 19:06:40 +00:00
henri
e623d8c9f1 Replaced strtok_r() calls by strtok().
The latter is more portable and can replace strtok_r in our case.
2013-05-02 17:32:15 +00:00
henri
6638f749d1 Added explicit pointer cast.
Reported by Jaebum Shin.
2013-05-02 16:51:46 +00:00
henri
371be36f88 Declare variables before executing any statement to follow
C standards.

Report and original patch by Gisle Vanem.
2013-05-02 08:36:08 +00:00
henri
cce3012ac4 Removed designated structure initializers that break
compilation with MSVC.

This was reported by Gisle Vanem.
2013-05-02 08:27:20 +00:00
henri
f90d107b40 Added checks to avoid including netdb.h on platforms that don't provide it. 2013-05-01 15:15:57 +00:00
henri
9b629aaec9 Express fields as uintX_t to ensure portability. 2013-04-30 18:24:50 +00:00
henri
153d3e695c Reverted r30784.
The socks4_data structure is not aligned. Sending sizeof(sock4) bytes
results in invalid requests.

Noticed and reported by David: http://seclists.org/nmap-dev/2013/q2/160
2013-04-30 18:01:24 +00:00
david
3b14d188cb Add a debug message when binding a socket. 2013-04-27 16:22:11 +00:00
david
67bc0819b4 Use get_localaddr_string in the connect bind log message.
This includes the port number, not just the address.
2013-04-27 16:22:09 +00:00
david
21077a93e1 Add get_localaddr_string. 2013-04-27 16:22:07 +00:00
david
d6d2a832db Factor out the guts of get_peeraddr_string. 2013-04-27 16:22:06 +00:00
henri
a687f70af3 Removed our copy of mkstr, which has been moved to nbase. 2013-04-22 19:37:03 +00:00
henri
b867fa4721 Fixed ID type in format string. 2013-04-22 19:36:55 +00:00
henri
c8f7d4b7ac Refactored the proxy object model to enforce speration between operations and data. 2013-04-22 19:36:47 +00:00
henri
03ff0651c7 Made proxy handlers return errors to caller when unable to handle proxy replies.
Errors are returned internally as -1 * <errno code>.
2013-04-22 19:36:38 +00:00
henri
eda720a389 Style fixes 2013-04-22 19:36:30 +00:00
henri
1780d0a655 Refactored HTTP proxy code to highlight execution flow. 2013-04-22 19:36:22 +00:00
henri
8a260bc209 Refactored code to highlight execution flow. 2013-04-22 19:36:15 +00:00
henri
7c1f9aa780 Removed a kinda brutal assert(0);
Don't abort when a socks4 proxy returns an invalid message,
just ignore it instead.
2013-04-22 19:36:07 +00:00
henri
157922dfe0 Replaced proxy_chain->specstr by node->nodestr.
The global proxy chain specification string wasn't
used anywhere, and I'd need a string to represent
each node of the chain.
2013-04-22 19:35:59 +00:00
henri
5cf3780a93 Added a nsock log message to nsock_connect_internal.
Explicitely indicates that a connection is about to be
redirected through the proxy chain.
2013-04-22 19:35:50 +00:00
henri
1455bf0624 Declare local constant string as array instead of pointer to
follow coding best practices. Also made string static.
2013-04-22 19:35:30 +00:00
henri
5be3de1477 Minor style fixes. 2013-04-22 19:35:22 +00:00
henri
9d8c84b17f Replaced hardcoded value by a sizeof() call. 2013-04-22 19:35:14 +00:00
henri
b54590c344 Don't artificially increase timeouts to establish proxy
connections. It's now up to the caller to adjust timeout
values accordingly.
2013-04-22 19:35:07 +00:00
henri
a729e0047c Reworked expression for readability. 2013-04-22 19:34:58 +00:00
henri
4998b3f20a Updated email addresses in licence terms of the new files. 2013-04-22 19:34:50 +00:00
henri
a5fee3f2b4 Updated nsock_proxy to use nsock_log_* 2013-04-22 19:34:41 +00:00
henri
11fdeed8fb Restrict proxying to TCP operations. 2013-04-22 19:34:18 +00:00
henri
ab6a7a4f9e Added SOCKS4 support
Beware socks4a extention is not supported. Target hostnames
therefore need to be resolved somehow.

Initial patch by David and sed :)
2013-04-22 19:34:11 +00:00
henri
a3fbe7d7d6 Style change, neater syntax. 2013-04-22 19:34:01 +00:00
henri
af59333757 Perform the proxy connexion hook in connect_internal().
This allows to generically handle all kinds of connexions instead of manually
providing a handler for tcp connect, ssl connect...

The drawback is that would it makes it harder to implement support of SSL
proxies. Not sure whether there's a need though, looks like regular clients
don't handle them at least.
2013-04-22 19:33:53 +00:00