david
e18b25bccd
Use tempfile in place of tempnam.
...
To avoid new GCC warnings about tempnam:
ncat_connect.c:789: warning: the use of `tempnam' is dangerous, better use `mkstemp'
Doing things this way has the same race condition as tempnam did,
because we are unlinking the file before binding it. (The race window is
smaller now.) The file must not exist before binding the Unix socket, or
else you get an "address already in use" error. Unlinking before binding
is the same thing that netcat-openbsd does. See this earlier thread:
http://seclists.org/nmap-dev/2012/q4/336 .
2013-09-26 07:17:08 +00:00
henri
4fd3cc2f10
Allow NSE_TYPE_CONNECT_SSL to be canceled.
...
This fixes a really bad bug that seems to have been there for a while. Canceling
a nsock connect SSL operation fails with fatal(). I have never seen it in real
life though.
Added a corresponding unit test.
2013-09-15 10:52:07 +00:00
d33tah
4993befdb4
Fix a typo in nsock documentation.
2013-08-21 20:06:38 +00:00
henri
456430c676
Windows compatibility fix.
...
Initialize winsock before starting nsock test suite.
Initial patch from Gisle Vanem.
2013-08-13 12:36:28 +00:00
henri
64c706c260
Proper code alignment.
2013-08-13 12:36:08 +00:00
d33tah
6805376faf
Fix an nsock build error under MSVC.
2013-08-11 20:52:15 +00:00
henri
b0abceec37
Make nsock test suite listeners listen on IPv4
...
Do everything explicitely to avoid unexpected behaviors. IPv6 will be added
separately at some point.
2013-08-11 08:31:39 +00:00
henri
ea8995ebf7
Use a parameter to invoke `ncat' in run_tests.sh
...
Run: `NCAT=/opt/something/ncat ./run_tests.sh' to invoke a specific binary.
2013-08-11 00:11:21 +00:00
henri
853aaff586
Manage expiration times via a heap queue.
...
This prevents nsock from iterating over the whole list of events at
each runloop, thus improving performance.
It made it necessary to have pointers from the msevents to the event
lists they belong to. The patch therefore also changes gh_list from
autonomous containers to embedded structures.
Added unit tests accordingly and cosmetic changes to make things look
more consistent.
2013-08-10 23:59:30 +00:00
henri
170a85f677
Don't use ANSI color sequences on windows.
...
Pointed out by Gisle Vanem. Fixed it in a way that makes it easy to disable on
other systems as well.
2013-08-10 20:19:38 +00:00
henri
822d3e1da2
Fixed non-portable perror() statement.
...
Replaced perror() by printf + socket_strerror(socket_errno()).
Reported by Gisle Vanem.
2013-08-10 20:19:09 +00:00
henri
23ad881d6b
Removed superfluous includes.
...
Report and patch by Gisle Vanem.
2013-08-06 20:10:57 +00:00
henri
40b11064e4
Use socket_strerror() for error reporting.
...
Report and patch by Gisle Vanem.
2013-08-06 20:10:49 +00:00
henri
3a8607d65c
Restore headers in nsock error.h
...
These includes seem useless and nsock and nmap happily compile w/o them but the
nsock test suite doesn't. Temporarily restore them to their pre-r36100 state
until I can clean and streamline the inclusion tree.
2013-08-06 19:39:39 +00:00
henri
3b6a09954b
Build fix [brown-paper-bag bug]
...
Space inserted between the 'i' and the 'f' in a 'if'.
Reported and fixed by Robert Snyder.
2013-08-06 17:37:16 +00:00
david
61bbe88307
Include "nbase.h" for __attribute__ define on Windows.
...
I needed this on Visual C++ 2010 on Windows XP.
2013-08-06 01:35:33 +00:00
henri
ec55767734
Removed dead code
2013-07-31 19:11:21 +00:00
henri
694a8fe825
Nsock-pcap cleanup
...
Make the API follow the general nsock style. Report errors properly using the
nsock logging facilities.
2013-07-31 19:11:16 +00:00
henri
8352b28e55
Rewrapped and rephrased comments.
2013-07-31 19:11:09 +00:00
henri
23a58a1bc8
Minor style fixes.
2013-07-31 19:01:25 +00:00
henri
76a5565519
Spacing.
2013-07-31 19:01:21 +00:00
henri
105ea877b2
Update error message.
...
Report errors to dev@nmap.org .
2013-07-31 19:01:17 +00:00
henri
5d8fdc74a6
Cleanup conditionally compiled expressions.
2013-07-31 19:01:12 +00:00
henri
098c64a1de
Removed occurences of `assert(0);'
...
Replaced them with `fatal()' so that nsock can compile w/ NDEBUG.
2013-07-31 18:46:57 +00:00
fyodor
83fb10ec56
Update the Nmap copyright/license files. This isn't the new Nmap Public Source License we've been discussing on the list, but rather just a 'quick patch' to hopefully prevent some of the abuse we've been seeing from companies lately. More details on the changes will be posted to the dev list. Also, the copyright year was updated to 2013 (which is the only change to Nsock license statements).
2013-07-28 22:05:05 +00:00
henri
c12b2e4370
Fixed indentation.
2013-06-17 19:23:41 +00:00
henri
9bfe6e46cc
Display the test name before running it.
...
This makes it easier to identify a test that hangs.
2013-06-15 12:33:31 +00:00
henri
a493296c54
Code cleanup.
...
Made get_peeraddr_string() return "peer unspecified" if peerlen <= 0.
This saves a handful duplicate lines that did the check externally.
2013-06-15 12:33:27 +00:00
henri
8b7f91cd0f
Moved gh_lists tests from nsock/src/ to nsock/tests/
2013-05-22 14:35:24 +00:00
david
b6ca01d295
Use /bin/bash in run_tests.sh.
...
I got this error:
./run_tests.sh: 42: ./run_tests.sh: Syntax error: "(" unexpected
2013-05-18 19:18:07 +00:00
henri
192cd3657d
Don't set SO_BROADCAST on SOCK_STREAM sockets.
...
This doesn't make sense and raise verbose errors, at least on Windows.
See: http://seclists.org/nmap-dev/2013/q2/313
2013-05-18 13:24:03 +00:00
henri
3534dfa3b8
Display actual error codes in the nsock messages.
...
Refactored the code a bit too.
2013-05-18 13:23:55 +00:00
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