ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/src/server.c
Revision 801 - (view) (annotate) - [select for diffs]
Modified Wed Aug 30 16:54:25 2006 UTC (19 years ago) by adx
File length: 56267 byte(s)
Diff to previous 777
+ only filename changes

Revision 777 - (view) (annotate) - [select for diffs]
Modified Wed Aug 23 14:55:16 2006 UTC (19 years ago) by adx
File length: 56269 byte(s)
Diff to previous 776
+ misc corrections

Revision 776 - (view) (annotate) - [select for diffs]
Modified Wed Aug 23 13:53:34 2006 UTC (19 years ago) by adx
File length: 56247 byte(s)
Diff to previous 773
+ corrections to the new code
+ first succeeded soft reboot attempts.

Revision 773 - (view) (annotate) - [select for diffs]
Modified Wed Aug 23 00:06:08 2006 UTC (19 years ago) by adx
File length: 56273 byte(s)
Diff to previous 771
+ first attempts at soft reboot

Revision 771 - (view) (annotate) - [select for diffs]
Modified Tue Aug 22 18:54:38 2006 UTC (19 years ago) by adx
File length: 56302 byte(s)
Diff to previous 764
+ after fixing a bunch of bugs, ircd is finally able to start up and /connect.
+ problems: kline/xline and such refuse to load (missing write_csv_line),
  modload & co are also not present (need to implement module-like m_ files?)

Revision 764 - (view) (annotate) - [select for diffs]
Modified Sat Aug 19 20:14:06 2006 UTC (19 years ago) by adx
File length: 56254 byte(s)
Diff to previous 751
+ restored class limits plus reworked them to be a bit more sane.


Revision 751 - (view) (annotate) - [select for diffs]
Modified Tue Jul 25 20:51:14 2006 UTC (19 years, 1 month ago) by adx
File length: 56279 byte(s)
Diff to previous 746
+ implemented RESV hashing where it's possible (i.e. no wildcards)
+ ok, all this list/hash manipulation should be moved to src/conf

Revision 746 - (view) (annotate) - [select for diffs]
Modified Mon Jul 24 18:47:50 2006 UTC (19 years, 1 month ago) by adx
File length: 56275 byte(s)
Diff to previous 744
+ make most modules compile, except a few ones which need deeper changes

Revision 744 - (view) (annotate) - [select for diffs]
Modified Mon Jul 24 07:48:55 2006 UTC (19 years, 1 month ago) by adx
File length: 56278 byte(s)
Diff to previous 743
+ fixed server.c

Revision 743 - (view) (annotate) - [select for diffs]
Modified Sun Jul 23 20:03:42 2006 UTC (19 years, 1 month ago) by adx
File length: 62472 byte(s)
Diff to previous 741
+ make ircd core compile except server.c and parse_aline.c

Revision 741 - (view) (annotate) - [select for diffs]
Modified Sun Jul 23 13:49:20 2006 UTC (19 years, 1 month ago) by adx
File length: 62508 byte(s)
Diff to previous 734
+ removed s_conf.h and superseded parts of s_conf.c

Revision 734 - (view) (annotate) - [select for diffs]
Modified Fri Jul 21 21:19:03 2006 UTC (19 years, 1 month ago) by adx
File length: 62528 byte(s)
Diff to previous 719
+ implemented resvs

Revision 719 - (view) (annotate) - [select for diffs]
Modified Sun Jul 16 16:56:58 2006 UTC (19 years, 1 month ago) by adx
File length: 62523 byte(s)
Diff to previous 702
+ reworked operator{} blocks to make them independent from oldconf
+ moved some utilities from s_conf.* to libio
+ added stub for auth{} blocks

Revision 702 - (view) (annotate) - [select for diffs]
Modified Sun Jun 25 10:27:09 2006 UTC (19 years, 2 months ago) by michael
File length: 62500 byte(s)
Copied from: ircd-hybrid/src/s_serv.c revision 687
Diff to previous 654
- Removed pointless check_class() call in main()
- Removed unused function prototypes
- Moved s_serv.c to server.c
- Renamed initialize_server_capabs() to server_init() and move it to server.c

Revision 654 - (view) (annotate) - [select for diffs]
Modified Thu Jun 8 09:02:45 2006 UTC (19 years, 2 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 62183 byte(s)
Diff to previous 640
- Got rid of Server::dep_user,dep_server and renamed Server::user and Server::servers dlink
  lists to client_list and server_list

Revision 640 - (view) (annotate) - [select for diffs]
Modified Wed Jun 7 10:41:00 2006 UTC (19 years, 2 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 62222 byte(s)
Diff to previous 609
- Replaced several strchr(x, '*'), etc. with hash_wildcard()
- Removed useless collapse() call in hunt_server().  It's match()'s job
  to deal with multiple ***.  No need to re-copy the entire string again.

Revision 609 - (view) (annotate) - [select for diffs]
Modified Tue May 16 10:42:05 2006 UTC (19 years, 3 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 62307 byte(s)
Diff to previous 551
- Killed the client_p parameter of hunt_server() as suggested
  by adx some time ago.

Revision 551 - (view) (annotate) - [select for diffs]
Modified Fri Apr 21 14:57:03 2006 UTC (19 years, 4 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 62307 byte(s)
Diff to previous 515
- Fixed compile warnings

Revision 515 - (view) (annotate) - [select for diffs]
Modified Sun Mar 5 09:26:04 2006 UTC (19 years, 5 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 62301 byte(s)
Diff to previous 511
- Moved tstats() to m_stats.c and killed s_stats.(c|h)
- Got rid of extra ServerStats pointer
- Killed ms_error which was basically a duplication of m_error

Revision 511 - (view) (annotate) - [select for diffs]
Modified Sat Mar 4 08:51:36 2006 UTC (19 years, 5 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 62323 byte(s)
Diff to previous 407
- Removed LL leftovers

Revision 407 - (view) (annotate) - [select for diffs]
Modified Wed Feb 8 12:46:29 2006 UTC (19 years, 6 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 62523 byte(s)
Diff to previous 398
- Merged set_autoconn() into quote_autoconn()

Revision 398 - (view) (annotate) - [select for diffs]
Modified Tue Feb 7 12:00:21 2006 UTC (19 years, 6 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 63560 byte(s)
Diff to previous 374
- Ripped out lazylinks as discussed on irc. the main concept wasn't very well
  designed and will be done in a better way some day.  Anyways, they propably
  never worked and were considered bloat by most people.  Good bye!

Revision 374 - (view) (annotate) - [select for diffs]
Modified Sat Jan 14 17:57:18 2006 UTC (19 years, 7 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 70475 byte(s)
Diff to previous 365
- More m_connect cleanups, I also never liked the idea of temporarily modifying
  a connect item, so let's do this a bit different now.

Revision 365 - (view) (annotate) - [select for diffs]
Modified Sun Jan 8 20:48:35 2006 UTC (19 years, 7 months ago) by adx
Original Path: ircd-hybrid/src/s_serv.c
File length: 70386 byte(s)
Diff to previous 349
+ this should fix the bug with low ping timeouts for servers.
keep cleaning up the conf stuff.

Revision 349 - (view) (annotate) - [select for diffs]
Modified Sat Dec 31 18:43:28 2005 UTC (19 years, 7 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 70342 byte(s)
Diff to previous 328
- Got rid of multiple bogus_host() copies

Revision 328 - (view) (annotate) - [select for diffs]
Modified Sun Dec 25 10:42:33 2005 UTC (19 years, 8 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 69887 byte(s)
Diff to previous 320
- Fixed bug where we wouldn't send the HUB capability token when
  using cryptlinks

Revision 320 - (view) (annotate) - [select for diffs]
Modified Sat Dec 24 15:13:27 2005 UTC (19 years, 8 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 69880 byte(s)
Diff to previous 217
- Fixed core in case aconf->cipher_preference and
  ConfigFileEntry.default_cipher_preference are both NULL pointers

  Reported by opteron-hani via Joan

Revision 217 - (view) (annotate) - [select for diffs]
Modified Thu Nov 3 13:59:27 2005 UTC (19 years, 9 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 69747 byte(s)
Diff to previous 211
- Fixed compile error in m_invite.c and s_serv.c
- Added m_watch.c

Revision 211 - (view) (annotate) - [select for diffs]
Modified Tue Nov 1 21:42:01 2005 UTC (19 years, 9 months ago) by adx
Original Path: ircd-hybrid/src/s_serv.c
File length: 69746 byte(s)
Diff to previous 208
- reorganisations which aim at:
  1) moving read_conf_files() at the end of daemon bootup process,
  2) making load_*_modules a part of conf parsing, after the 1st pass

Revision 208 - (view) (annotate) - [select for diffs]
Modified Tue Nov 1 15:38:03 2005 UTC (19 years, 9 months ago) by adx
Original Path: ircd-hybrid/src/s_serv.c
File length: 69744 byte(s)
Diff to previous 146
+ an attempt to fix the HUB capability mess, we _should_ be able
  to establish an LL link now

Revision 146 - (view) (annotate) - [select for diffs]
Modified Sun Oct 16 15:45:25 2005 UTC (19 years, 10 months ago) by db
Original Path: ircd-hybrid/src/s_serv.c
File length: 69826 byte(s)
Diff to previous 141
- More conf cleanups, aconf->client count is no longer needed
  as an AccessItem can now be deleted immediately.
- Note bug in s_conf.c with flush_deleted_I_P, it was trying to
  free MatchItems using an AccessConf this bug is in 7.1.4 as well
  as 7.2 flush_deleted_I_P() is no longer needed at all in 7.3
  since AccessItems are removed immediately.
- Fixed a few cores in server establishment, notably ->serv
  has to be allocated sooner since there are no confs to attach.
  make_server() is probably called once too often now.


Revision 141 - (view) (annotate) - [select for diffs]
Modified Sun Oct 16 06:29:10 2005 UTC (19 years, 10 months ago) by db
Original Path: ircd-hybrid/src/s_serv.c
File length: 69810 byte(s)
Diff to previous 139
- Make ->conf conf_ptr to be consistent in all places.


Revision 139 - (view) (annotate) - [select for diffs]
Modified Sun Oct 16 06:01:13 2005 UTC (19 years, 10 months ago) by db
Original Path: ircd-hybrid/src/s_serv.c
File length: 69806 byte(s)
Diff to previous 126
- get rid of map_conf_item and unmap_conf_item
- Use an union in struct ConfItem, but only allocate memory needed


Revision 126 - (view) (annotate) - [select for diffs]
Modified Fri Oct 14 02:41:46 2005 UTC (19 years, 10 months ago) by db
Original Path: ircd-hybrid/src/s_serv.c
File length: 69944 byte(s)
Diff to previous 122
- attach/conf cleanup take 2
- Each client has now one AccessItem for its connect
  stored in localClient->iline
- The corresponding class is now stored in localClient->class

The ramifications of this move are, there is no conf list to traverse
to find the AccessItem, the class is instantly available from the localClient
struct without having to traverse the confs list and indirectly through the
aconf. This speeds up get_sendq etc. functions. As a bonus, at least
4 fewer bytes are used in the Client struct, since a dlink list is 4 words.
It does mean there is no longer a separate conf oper, which leads to the
kludge of patching the clients iline into an oper conf when
a client opers up. I don't think the oper flags are used after the client
is opered, so the patching operation may not be necessary.

- Server confs are stored in ->serv->sconf as before but attaching
  happens much earlier.
- server hub/leaf masks continues to be a dlink list but linked from
  the ->serv which is only allocated for servers.

- cleaned up some comments, added a comment, notably to check_server()
  which badly needed it.
- Pass ClassItem or AccessItem etc. in when it makes more sense than passing
  in struct ConfItem. This simplified and clarified rebuild_cidr_class()

And lo, there was a great rejoicing.


Revision 122 - (view) (annotate) - [select for diffs]
Modified Thu Oct 13 10:57:26 2005 UTC (19 years, 10 months ago) by adx
Original Path: ircd-hybrid/src/s_serv.c
File length: 69487 byte(s)
Diff to previous 121
- it is probably more clean to do it this way..

Revision 121 - (view) (annotate) - [select for diffs]
Modified Thu Oct 13 10:34:56 2005 UTC (19 years, 10 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 69735 byte(s)
Diff to previous 120
- Moved ms_tburst() to m_tb.c as suggested by adx
- Fixed problem where we would send both TB and TBURST to the same server

Revision 120 - (view) (annotate) - [select for diffs]
Modified Thu Oct 13 09:51:10 2005 UTC (19 years, 10 months ago) by michael
Original Path: ircd-hybrid/src/s_serv.c
File length: 69487 byte(s)
Diff to previous 101
- More TBURST changes

Revision 101 - (view) (annotate) - [select for diffs]
Modified Mon Oct 10 03:52:14 2005 UTC (19 years, 10 months ago) by db
Original Path: ircd-hybrid/src/s_serv.c
File length: 68781 byte(s)
Diff to previous 69
- First pass at s_conf.c cleanup for attach clients
- attach_conf() is gone replaced with attach_iline()
  Clients/servers have one single I line "attached", i.e. the confs
  list is gone.
- Add attach_leaf_hub()
  Add a leaf or hub mask to the given server, ->serv must exist
  since there can be a list of hub masks and leaf masks, this continues
  to be a dlink list
- Removed redundant find_conf_exact()
  This function can be replaced in all cases with find_exact_name_conf()
  notably because all find_conf_exact did differently was count whether
  an oper conf would cause an already connected client to exceed class limits.
- oper_up() now takes an extra conf pointer pointing to the found
  oper conf, the oper flags are set in the client->iline as necessary
  in oper_up()
- Cleaned up more prototypes that should have been moved from s_conf.h
  to parse_aline.h notably. find_kill() and find_gkill()
- m_stats.c needs more cleanup since memory in attached "confs" is now
  not counted. This should be replaced with iline memory count and
  hub/leaf confs memory count.
  

Revision 69 - (view) (annotate) - [select for diffs]
Modified Tue Oct 4 16:09:51 2005 UTC (19 years, 10 months ago) by adx
Original Path: ircd-hybrid/src/s_serv.c
File length: 68864 byte(s)
Diff to previous 41
- splitted ircd/libio, all headers connected with libio sources have been
  moved for internal use only. To use libio interface, include "libio.h"
  (which is already done in "stdinc.h")


Revision 41 - (view) (annotate) - [select for diffs]
Modified Sun Oct 2 23:25:13 2005 UTC (19 years, 10 months ago) by adx
Original Path: ircd-hybrid/src/s_serv.c
File length: 69138 byte(s)
Diff to previous 33
- *hopefully* this hack fixes cryptlinks+ts6 instead of breaking them ;)

Revision 33 - (view) (annotate) - [select for diffs]
Modified Sun Oct 2 20:50:00 2005 UTC (19 years, 10 months ago) by knight
Original Path: ircd-hybrid/src/s_serv.c
File length: 69057 byte(s)
Diff to previous 32
- svn:keywords

Revision 32 - (view) (annotate) - [select for diffs]
Modified Sun Oct 2 20:41:23 2005 UTC (19 years, 10 months ago) by knight
Original Path: ircd-hybrid/src/s_serv.c
File length: 69057 byte(s)
Diff to previous 31
- svn:keywords

Revision 31 - (view) (annotate) - [select for diffs]
Modified Sun Oct 2 20:34:05 2005 UTC (19 years, 10 months ago) by knight
Original Path: ircd-hybrid/src/s_serv.c
File length: 69057 byte(s)
Diff to previous 30
- Fix svn:keywords

Revision 30 - (view) (annotate) - [select for diffs]
Added Sun Oct 2 20:03:27 2005 UTC (19 years, 10 months ago) by adx
Original Path: ircd-hybrid/src/s_serv.c
File length: 69110 byte(s)
- imported sources
- can be moved later according to the directory/branching scheme,
  but we need the svn up

(Current path doesn't exist after revision 1026)

Convenience Links

Links to HEAD: (view) (annotate)

Compare Revisions

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a