70 Commits

Author SHA1 Message Date
pippijn
5ca2a6ffdb for real
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9898 e03df62e-2008-0410-955e-edbf42e46eb7
2008-06-12 21:04:37 +00:00
brain
03ef675c0d Convert CIDR matching and wildcard matching to operate on std::strings
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9681 e03df62e-2008-0410-955e-edbf42e46eb7
2008-05-09 17:24:50 +00:00
brain
18310fc8b7 We were lucky this one didnt bring down the whole devnet (see cmd_part.cpp diff)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@9400 e03df62e-2008-0410-955e-edbf42e46eb7
2008-04-07 16:18:32 +00:00
w00t
f127161467 Clear up header insanity
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8808 e03df62e-2008-0410-955e-edbf42e46eb7
2008-02-03 23:20:20 +00:00
w00t
e4acbc95b8 Header update: 2007 -> 2008
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8694 e03df62e-2008-0410-955e-edbf42e46eb7
2008-01-10 13:27:07 +00:00
w00t
b57c7f4e46 In the grand tradition of huge fucking commits:
- chanrec -> Channel
 - userrec -> User
Enjoy.

git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@8204 e03df62e-2008-0410-955e-edbf42e46eb7
2007-10-15 20:59:05 +00:00
brain
d0d36795e8 Craquity craq De-craq!
This is probably broken on windows, do not attempt to use there yet unless you like broken stuff. Cant say for sure as i havent even tried to build yet and most likely wont tonight.
--- Abstract most of the berkely socket API out into SocketEngine derived classes. SocketEngine base class implements standard berkely sockets that 'real mens systems' like linux
and freebsd have. For socketengine_iocp we implement the windows specific nonesense like the special things needed for udp and accept (ick).
All this to eliminate a bunch of ifdefs.


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7810 e03df62e-2008-0410-955e-edbf42e46eb7
2007-08-23 22:06:04 +00:00
peavey
f2acdbc382 OOPS! We try again, since I'm smoking craq. LF is 0x0a NOT CR.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7456 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16 17:30:04 +00:00
peavey
bab14f0dd2 'svn propset -R svn:eol-style CR *' Set to UNIX-style always. Binaries are auto skipped by svn.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7454 e03df62e-2008-0410-955e-edbf42e46eb7
2007-07-16 17:14:45 +00:00
brain
455d6fac2e Comments
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7382 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-17 19:29:11 +00:00
burlex
7d4edd5ac3 - Made the recvfrom wrapper a bit neater.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7314 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-14 22:00:17 +00:00
pippijn
67e055124d Some general syntax cleanups.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7304 e03df62e-2008-0410-955e-edbf42e46eb7
2007-06-14 17:22:37 +00:00
w00t
9cf56d917d Windows support. Tested and working to compile on freebsd and linux. Next step is to make sure it actually works in windows too. ;p. Add Burlex to contributors.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@7043 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-19 15:56:42 +00:00
brain
bfcaef8623 Refactor port binding, warning not yet tested fully
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6982 e03df62e-2008-0410-955e-edbf42e46eb7
2007-05-11 18:38:00 +00:00
brain
49369545e3 Stuff to make dns work protocol-independent
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6506 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-05 23:43:44 +00:00
brain
1b128373c2 Not safe for use yet
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6502 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-05 22:29:02 +00:00
brain
bcedc75173 Smart tricks to allow for ipv4 and ipv6 bindings on client ports. WARNING, NOT FINISHED YET
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6501 e03df62e-2008-0410-955e-edbf42e46eb7
2007-02-05 21:55:14 +00:00
brain
ba339f8b1c Add port type identifiers
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6196 e03df62e-2008-0410-955e-edbf42e46eb7
2007-01-01 00:16:50 +00:00
peavey
81c26039d5 Change description for insp_aton since only a positive return means convertion was a success.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6169 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-30 13:50:40 +00:00
brain
529c6acc01 Unload as many modules as we can on restart, and close listeners
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@6068 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-23 14:19:33 +00:00
w00t
696ee9ff66 And now, just to force you to recompile the *whole* ircd.. updated headers on the headers. :p
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5998 e03df62e-2008-0410-955e-edbf42e46eb7
2006-12-15 22:18:59 +00:00
brain
193b540aa7 Socket error state stuff
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@5607 e03df62e-2008-0410-955e-edbf42e46eb7
2006-10-31 20:32:01 +00:00
brain
a2d8fbc45d Document ListenSocket class
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4968 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-18 19:18:43 +00:00
brain
e381b06561 EventHandler class, an abstraction for raw i/o
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4941 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-18 01:08:14 +00:00
brain
8ef6da00a7 Document irc::socket namespace members/classes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4902 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-12 00:31:37 +00:00
brain
f9636a2eff So much stuff changed in this one, i forgot most of it.
Oh yeah, main thing is ModeHandler and ModeWatcher classes now take an InspIRCd* to their constructor


git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4858 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 22:40:57 +00:00
brain
d7336f351d Move the socket functions like insp_ntoa into their own namespace. They arent really sensible to put into a class, but namespacing them out discourages developers from directly using them without explicitly saing 'using irc::sockets::BindPorts' or whatever first. Some functions such as insp_ntoa are already 'exposed' by headers that use them so 'using irc::sockets::inet_ntoa' isnt required.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4828 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-10 00:36:07 +00:00
brain
0f61489ddb Move Blocking/NonBlocking to socket.cpp and make inline
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4806 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-09 10:12:34 +00:00
brain
3e50e674c3 Allow nick!ident@ and ident@ portions in a CIDR mask if given, use match() without CIDR against that portion. This allows for CIDR operhosts while still matching idents (AND CIDR CHANNEL BANS)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4739 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-06 18:34:39 +00:00
brain
f4a4901fee Support CIDR, CIDR zline, /oper and CIDR <connect> tags. NOTE: With CIDR oper, ident field is not supported (yet)
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4732 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-06 16:09:29 +00:00
brain
a9621bc989 Fix CIDR functions so they work
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4731 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-06 15:26:16 +00:00
brain
4a26a36523 This might well be the last commit to this dns resolver in its current form. With a bit of luck, we can make a better (always-threaded) one
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4612 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 12:33:13 +00:00
brain
4488e47713 The IPV6 stuff compiles now, with compile-correct ipv6 code. I dont know if this works yet.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4611 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 11:46:19 +00:00
brain
4789b3f653 AF_INET -> define to AF_FAMILY, will be either AF_INET or AF_INET6
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@4610 e03df62e-2008-0410-955e-edbf42e46eb7
2006-08-01 10:42:22 +00:00
om
8403cf142a Die windows die.
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3871 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-11 22:50:27 +00:00
om
09dd16b981 Route some more stuff through socket.h and hash_map.h. Add #define protection to timer.h and remove some unneeded includes and externs from timer.cpp
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3869 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10 22:50:41 +00:00
om
9063972162 Routing more socket includes through socket.h
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3868 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-10 22:16:34 +00:00
om
aa21503f06 Shuffle some more includes around, const reference a few functions in inspircd.*
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3854 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-09 11:51:24 +00:00
om
25b4d21f47 Remove uneccessary socket includes now included in socket.h
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3851 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08 17:24:18 +00:00
om
d54fbc71e2 Split inspircd_io.* insp inspsocket.* and configreader.* with a few odd bits going into inspircd.*, doesn't look like I've broken anything... :P
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3847 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08 17:05:48 +00:00
nenolod
ab24f0dca4 - first steps towards a working IPv6 port. I'll work more on this tomorrow. :-P
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3845 e03df62e-2008-0410-955e-edbf42e46eb7
2006-04-08 01:35:02 +00:00
brain
5d942eaf95 Regression for buffering of sockets
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3760 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-26 14:20:57 +00:00
brain
572a7b503b Commented a lot of stuff that hasnt been commented since 1.0.2
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3695 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-12 18:03:02 +00:00
brain
5fa0e83de4 Complete removal of all stl stuff here
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3686 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11 20:38:15 +00:00
brain
43b4a302d4 Completely removed the deque
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3685 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11 20:08:38 +00:00
brain
57e27d97fa Fixes
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3669 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-11 18:02:11 +00:00
om
4ac0ccc06c Convert more by-values to const references, optimise ConfigReader a bit
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3606 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-09 21:58:54 +00:00
brain
85f9d57f0f Tweaks to socket engine, faster buffer flush and hopefully more stable
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3521 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-07 18:00:45 +00:00
brain
53f280ed2e Check for write errors in inspsocket (this is probably causing excessive cpu use when we have a large buffer to flush but a write error has occured (which we missed))
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3518 e03df62e-2008-0410-955e-edbf42e46eb7
2006-03-07 17:32:55 +00:00
brain
0ebea11505 Slightly more efficient write buffers
git-svn-id: http://svn.inspircd.org/repository/trunk/inspircd@3125 e03df62e-2008-0410-955e-edbf42e46eb7
2006-02-07 16:55:02 +00:00