brain
a361a0bbc9
IPV6 compile fixes
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4696 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 10:39:42 +00:00
brain
5847843481
IPV6 changes for userrec::ip
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4695 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 10:30:31 +00:00
brain
f25755bbe7
Change to using userrec::ip as a sockaddr to store port, ip and address family, rather than userrec::ip4 and userrec::port.
...
This allows us to handle remote ipv6 users on an ipv4 server, and vice versa.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4694 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-04 01:59:41 +00:00
brain
e5843dde4d
Add proper support for "munging" of ipv6 addresses when ::ffff:addr is used (this is temporary)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4693 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:45:39 +00:00
brain
0f5ba908f4
Change some checking
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4692 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:37:01 +00:00
brain
bbb04ecde2
More stuff
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4691 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:33:44 +00:00
brain
e5d7282652
Odd stuff with ::ffff ipv6 addresses
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4690 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:24:08 +00:00
brain
661e2cccba
Extra debug
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4689 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:19:28 +00:00
brain
8a623fbec4
Tweak
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4688 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:17:19 +00:00
brain
b276a1a055
Tweak tweak
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4687 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:15:13 +00:00
brain
5a53ae3b0a
Change to use inaddr6_any
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4686 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:12:31 +00:00
brain
90515befc6
Add more debug
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4685 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:07:06 +00:00
brain
00da6c9454
Debug output on invalid nameserver address in constructor
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4684 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 21:04:21 +00:00
brain
2e411dd9a5
Add strerror stuff
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4683 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 20:58:03 +00:00
brain
ec99b87f5b
Tidier MakeIP6Int()
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4681 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 19:06:05 +00:00
brain
b14375407c
Its ip6.arpa, not ip6.int?
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4680 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 18:55:19 +00:00
brain
062bd08863
Extra stuff for forcing a v4 or v6 lookup
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4679 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 18:46:17 +00:00
brain
ca70ad7750
Improved ip6.int builder (no more HUGE sprintf craq)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4678 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 17:14:13 +00:00
brain
f16930668a
Added test framework, so that i can work on improving MakeIP6Int
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4677 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 16:47:40 +00:00
brain
73fda5d362
*.ip6.int PTR lookups. FUGLY AS FUCK. someone please help me tidy (backported from firedns)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4676 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 16:27:16 +00:00
brain
98d0bbfbb0
AAAA lookup fixed. Theyre returned as string, without need for inet_pton with an in6_addr, so that its possible to resolve ipv6 without an ipv6 supporting kernel ;)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4675 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 16:17:54 +00:00
brain
9e0fd68e34
Fixed resolver, forward lookup of ipv6 doesnt work right yet
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4674 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 16:00:55 +00:00
brain
c5b4476874
Support CNAME, AAAA
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4673 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 15:49:22 +00:00
brain
0c1916945a
Fix sockaddr structs for ipv6
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4672 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 15:15:09 +00:00
brain
dd9112f8cb
Fix bindsocket to work in ipv6 mode
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4671 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 15:09:38 +00:00
brain
5405f7927e
Add some commenting
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4670 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 14:43:59 +00:00
brain
b7d632aa9a
add erroring if there are already 65536 id's in transit
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4669 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 14:42:18 +00:00
brain
43759fd180
Check for spoofed DNS replies where the source-port is invalid, or the ip is not that of the nameserver we're configured to use
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4668 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 14:25:49 +00:00
brain
bcc3c8566c
Properly check for duplicate dns id's from the PRNG
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4667 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 13:46:42 +00:00
brain
30911b2ae8
Improve PRNG
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4666 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 13:28:12 +00:00
brain
c6934754b0
Dynamically generate 004 numeric from the modehandler list
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4665 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-03 11:17:03 +00:00
brain
f313c36917
Pseudo-random id's again, combined with incrementing value, gettimeofday and geteuid using xor
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4661 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 22:07:43 +00:00
brain
d06e02bc30
Add back stats counters for dns total, good and bad
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4660 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 21:46:22 +00:00
brain
be9ffd2430
Allocate request id's in sequence, which means we wont get a duplicate id until 65536 id's have been given out.
...
Much safer than rand()
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4659 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 21:39:12 +00:00
brain
79da8ad27e
Change more names and types
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4657 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 21:06:44 +00:00
brain
c47d3335e7
Absolutely everything is now part of class DNS, or class Resolver.
...
This means our dns code is totally encapsulated and we know that
changing it wont effect anything else so long as the interface stays
the same.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4656 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 20:54:39 +00:00
brain
acff2ca6dc
More tidying
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4655 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 20:44:46 +00:00
brain
a4b7833073
Move more stuff into private members of class DNS
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4654 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 20:34:23 +00:00
brain
c0526f1dc2
Tidyups, rename some vars
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4653 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 20:16:25 +00:00
brain
e5ab44198d
Made MasterSocket static
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4652 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 20:06:50 +00:00
brain
4d941f1b7a
Move more stuff into class DNS
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4651 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 19:59:06 +00:00
brain
4bc3065d05
Tweak case of all classes to match those in the rest of the core
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4650 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 19:15:22 +00:00
brain
200d4f2d23
Change comment at start of the file, rename dns_connection
...
to dns_request (they no longer represent connections with
unique FD's so the old name was kind of silly)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4649 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 19:07:12 +00:00
brain
93420ae6c6
Change a message
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4648 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 19:00:15 +00:00
brain
2280358b7b
More tidying. Add comments. More comments to do :p
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4647 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 18:55:10 +00:00
brain
e65b2c70e4
Add error messages to Resolver::OnError()
...
Add exception handling to several places that use Resolver (it can throw)
Remove Resolver::ProcessResult(), its now handled within the bowels of dns.cpp
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4646 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 18:44:13 +00:00
brain
29342eb557
The great summer clean (better than a spring clean)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4645 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 18:06:04 +00:00
brain
4056b3fdc5
Tidyup var names. people who use 'l' to mean 'length' need to be shot with a brick
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4644 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 17:35:47 +00:00
brain
eb982b5ad9
More tidyups
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4643 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 17:27:07 +00:00
brain
affb908232
Tidyups (as usual)
...
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4642 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-02 17:19:55 +00:00