Commit Graph

52 Commits

Author SHA1 Message Date
77509ceb56 No more Clang bullshit 2014-09-26 21:32:16 +02:00
4810b37b29 -Wpedantic/scan-build stuff 2014-09-26 21:32:16 +02:00
3ecf06ba46 Fix subnet targets 2014-09-26 21:32:16 +02:00
31bb98c995 The targets are not always hostnames
If a target specified on the command line equals its IP address string,
don't put the string as a hostname in the results.
2014-09-26 21:32:16 +02:00
fcf21ca4cf Fix a memory leak 2014-09-25 22:39:17 +02:00
88d92c87ce Fix the optimization
It wasn't all that easy.
2014-09-25 22:38:52 +02:00
9f6a98d540 Fix the indicator 2014-09-25 22:37:20 +02:00
55648e3f3b Fix hiding the indicator 2014-09-25 00:33:03 +02:00
0e51b37411 Optimize and simplify the epoll poller
On my own machine (4096 max FD's), scanning localhost for all services,
there was no change to speak of.  On another one, though, with 65536
max FD's scanning localhost and another machine simultaneously for
a specific service, there was a dramatic speedup allowing much faster
scans, with userspace load dropping to about a quarter of a second.

As a bonus, it makes the code simpler.
2014-09-24 21:39:17 +02:00
49e7f1798e Get rid of some memory holes on x86_64 2014-09-24 20:28:18 +02:00
21cab71e75 Fix the epoll poller
Setting the fd to -1 broke poller_remove_from_dispatch().
2014-09-24 19:03:45 +02:00
89edba14f0 Sort epoll_wait() output earlier 2014-09-24 19:00:09 +02:00
50e27cf3d8 Order the results by port 2014-09-24 18:59:55 +02:00
734931d84f Fix the hotspot
Valgrind seems to be quite happy with it now.
2014-09-24 01:02:09 +02:00
bdb3b9b959 Identified a hot-spot 2014-09-24 00:20:20 +02:00
9df79e3637 Update the README 2014-09-24 00:11:44 +02:00
53b717c454 Avoid spinning in a loop
This also helps reduce a lot of noice in strace.
2014-09-24 00:11:44 +02:00
eee873e373 Implement idle events 2014-09-24 00:11:44 +02:00
19491375f3 Formatting
No idea how this happened.
2014-09-24 00:11:40 +02:00
1f9f9b9a39 Simplify the plugin API 2014-09-23 22:59:01 +02:00
f9d6627456 Don't initialize the service before connecting 2014-09-23 21:12:40 +02:00
0da95bf1c8 Fix str_append_data()
`void *' is more appropriate here.
2014-09-23 20:41:47 +02:00
7ee3bbc86b Fix on_unit_ready()
Got it wrong and lighttpd doesn't have any mercy.
2014-09-23 20:41:47 +02:00
903f7d128a Show some stats at the end 2014-09-21 03:55:58 +02:00
fa2780a40d Fix the TLS/SSL transport 2014-09-21 03:43:14 +02:00
aeb1012997 Group the output properly
Somehow I must have forgotten about transports at some point.
2014-09-21 03:29:36 +02:00
d18224cc65 Fix terminal output for multiple ports per service 2014-09-21 03:29:36 +02:00
6542353dae Fix output of results for multiple services 2014-09-21 03:29:35 +02:00
6c90cc85db Fix the IRC plugin, and not only that 2014-09-21 03:29:35 +02:00
e7d8b244a9 TLS transport: output some certificate information 2014-09-21 03:29:27 +02:00
d453a1226c HTTP: initialize `http_settings' statically 2014-09-21 01:12:15 +02:00
82a125a3c3 Fix error message 2014-09-21 01:08:20 +02:00
7a7c32aec0 Add a header guard
I've nearly forgotten what those are.
2014-09-21 01:06:47 +02:00
49aceb664e Update the README 2014-09-21 01:02:22 +02:00
47aaedd26a Implement the HTTP plugin
Ended up including Joyent's http-parser library.
2014-09-21 01:02:16 +02:00
2b74a18833 Implement more of the services
- SSH: ready for action
 - IRC: ready for action
 - HTTP: needs some work
2014-09-20 22:03:55 +02:00
b9571ec01f Filter out any garbage in the scan output 2014-09-20 18:28:08 +02:00
38a0077033 Generate a manpage
help2man should be enough so far.
2014-09-20 18:12:55 +02:00
01c2bfa5a4 Fix timers
Fucking hell.  We're still having some event scheduling issues.
2014-09-20 01:59:41 +02:00
97bcad8a03 Save a syscall per connection 2014-09-20 00:08:23 +02:00
457eff90e3 Rework the poller
It's about time we stopped fucking ourselves in the butt.

The scanning should be much faster now.

Thanks to libuv for inspiration.
2014-09-19 23:44:00 +02:00
6f1bc52711 Raise the file descriptor limit to the maximum 2014-09-19 09:20:14 +02:00
4662e84995 First set of fixes
There are still some problems but at least it does something now.
2014-09-19 01:02:26 +02:00
64fa986cd0 Implement the indicator etc. 2014-09-18 21:01:42 +02:00
0a7ff1d638 Add regular tree-like output
This ended up rather nice.
2014-09-17 23:27:00 +02:00
06785ea4e1 JSON output support
This was rather simple.
2014-09-17 23:22:02 +02:00
7d3f0ca4c8 Even more stuff
Some reorganisation has taken place.
2014-09-14 22:45:12 +02:00
215891a8ee More stuff
- renamed *_func to *_fn
 - some initial code for the indicator (needs curses)
 - moved option handler to utils
 - more work on unit generation & processing
2014-09-14 00:28:50 +02:00
1bc2e22167 Stuff 2014-09-12 23:28:33 +02:00
a133946688 Write stubs for the plugins
Make them compile.
2014-09-11 08:10:33 +02:00