ViewVC Help
View File | Revision Log | Show Annotations | View Changeset | Root Listing
root/svn/ircd-hybrid/src/client.c
Revision 758 - (view) (annotate) - [select for diffs]
Modified Fri Aug 18 14:26:11 2006 UTC (17 years, 7 months ago) by michael
File length: 44121 byte(s)
Diff to previous 750 , to selected 398
- Fixed ban cache as reported by ThaPrince

Revision 750 - (view) (annotate) - [select for diffs]
Modified Tue Jul 25 19:57:38 2006 UTC (17 years, 8 months ago) by stu
File length: 44074 byte(s)
Diff to previous 748 , to selected 398
also need to check if the sockhost is '0' because thats what remote servers that hide ips send us
Revision 748 - (view) (annotate) - [select for diffs]
Modified Tue Jul 25 09:09:00 2006 UTC (17 years, 8 months ago) by stu
File length: 44034 byte(s)
Diff to previous 747 , to selected 398
If we have the remote IP, use it and dont default to masking an ip when we dont have to.
Revision 747 - (view) (annotate) - [select for diffs]
Modified Mon Jul 24 22:14:17 2006 UTC (17 years, 8 months ago) by adx
File length: 43929 byte(s)
Diff to previous 743 , to selected 398
+ fixed everything except m_gline and m_spoof.
+ still to do: ban storage, limits, iphash, parser, conf_connect_allowed

Revision 743 - (view) (annotate) - [select for diffs]
Modified Sun Jul 23 20:03:42 2006 UTC (17 years, 8 months ago) by adx
File length: 43951 byte(s)
Diff to previous 741 , to selected 398
+ 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 (17 years, 8 months ago) by adx
File length: 46783 byte(s)
Diff to previous 701 , to selected 398
+ removed s_conf.h and superseded parts of s_conf.c

Revision 701 - (view) (annotate) - [select for diffs]
Modified Sat Jun 24 19:24:39 2006 UTC (17 years, 9 months ago) by michael
File length: 46803 byte(s)
Diff to previous 688 , to selected 398
- Avoid header files including other header files
- Killed supported.h, fixed misc. compile errors

Revision 688 - (view) (annotate) - [select for diffs]
Modified Sat Jun 17 11:21:50 2006 UTC (17 years, 9 months ago) by michael
File length: 46782 byte(s)
Diff to previous 682 , to selected 398
- Merged update_client_exit_stats() into exit_one_client()

Revision 682 - (view) (annotate) - [select for diffs]
Modified Thu Jun 15 14:21:00 2006 UTC (17 years, 9 months ago) by michael
File length: 47587 byte(s)
Diff to previous 678 , to selected 398
- exit_client(): Wanna-be servers that are in connecting or handshaking state
  are not on on the serv_list, so let's clean this up a bit.
- close_connection(): Fixed some harmless bug that could result in incorrect
  sent statistics in "STATS t"


Revision 678 - (view) (annotate) - [select for diffs]
Modified Thu Jun 15 08:06:28 2006 UTC (17 years, 9 months ago) by adx
File length: 47926 byte(s)
Diff to previous 674 , to selected 398
+ rebuilt y.tab.c
+ ServerInfo -> ServerInfoX for now to avoid hidden name conflicts
+ serv_list nodes are localClient->lnode, so don't free them with balloc


Revision 674 - (view) (annotate) - [select for diffs]
Modified Tue Jun 13 08:45:01 2006 UTC (17 years, 9 months ago) by michael
File length: 47970 byte(s)
Diff to previous 655 , to selected 398
- Removed server connection scheduling leftovers.  We just periodically continue
  to check server confs in try_connections() without updating aconf->hold in
  close_connection()

Revision 655 - (view) (annotate) - [select for diffs]
Modified Fri Jun 9 13:30:21 2006 UTC (17 years, 9 months ago) by michael
File length: 49049 byte(s)
Diff to previous 654 , to selected 398
- Fixed function naming convention in some places
- Moved win32 uname() to libio

Revision 654 - (view) (annotate) - [select for diffs]
Modified Thu Jun 8 09:02:45 2006 UTC (17 years, 9 months ago) by michael
File length: 49020 byte(s)
Diff to previous 651 , to selected 398
- Got rid of Server::dep_user,dep_server and renamed Server::user and Server::servers dlink
  lists to client_list and server_list

Revision 651 - (view) (annotate) - [select for diffs]
Modified Thu Jun 8 07:38:56 2006 UTC (17 years, 9 months ago) by michael
File length: 49282 byte(s)
Diff to previous 605 , to selected 398
- Backported r650 (clients are exited in check_unknowsn_list() while still
  processing auth/dns)
- Changed Client::flags to 64bit integer type to allow more flags

Revision 605 - (view) (annotate) - [select for diffs]
Modified Tue May 16 07:05:34 2006 UTC (17 years, 10 months ago) by michael
File length: 49250 byte(s)
Diff to previous 603 , to selected 398
- Made find_chasing() only take 3 arguments
- Cleaned up find_person()

Revision 603 - (view) (annotate) - [select for diffs]
Modified Sun May 14 10:32:26 2006 UTC (17 years, 10 months ago) by michael
File length: 49429 byte(s)
Diff to previous 568 , to selected 398
- Made cleanup_pending_glines() an event started off when loading
  the m_gline module
- Removed s_gline.c, s_gline.h and metadata.c

Revision 568 - (view) (annotate) - [select for diffs]
Modified Thu Apr 27 08:34:04 2006 UTC (17 years, 11 months ago) by michael
File length: 49450 byte(s)
Diff to previous 551 , to selected 398
- hash_check_watch() should be called for clients only (remote or local)

Revision 551 - (view) (annotate) - [select for diffs]
Modified Fri Apr 21 14:57:03 2006 UTC (17 years, 11 months ago) by michael
File length: 49434 byte(s)
Diff to previous 529 , to selected 398
- Fixed compile warnings

Revision 529 - (view) (annotate) - [select for diffs]
Modified Sat Mar 18 15:28:33 2006 UTC (18 years ago) by michael
File length: 49432 byte(s)
Diff to previous 515 , to selected 398
- Some small tweaks to client exit code.  99% of the time it is a client
  exiting the network, so check this case first, then see if it is a server

Revision 515 - (view) (annotate) - [select for diffs]
Modified Sun Mar 5 09:26:04 2006 UTC (18 years ago) by michael
File length: 49378 byte(s)
Diff to previous 511 , to selected 398
- 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 (18 years ago) by michael
File length: 49408 byte(s)
Diff to previous 502 , to selected 398
- Removed LL leftovers

Revision 502 - (view) (annotate) - [select for diffs]
Modified Fri Mar 3 19:49:25 2006 UTC (18 years ago) by michael
File length: 49692 byte(s)
Diff to previous 499 , to selected 398
- Implemented CAP command handler based uppon ircu's m_cap()
- Added somewhat outdated draft-mitchell-irc-capabilities-01.txt until
  I get the latest version from kev.
- Added "multi-prefix" cap so clients supporting "multi-prefix"
  may recieve multi prefixed NAMES replies, e.g. @%+nick1 @+nick2 ..
- Fixed "make clean" for src/conf/

Revision 499 - (view) (annotate) - [select for diffs]
Modified Wed Mar 1 19:32:01 2006 UTC (18 years, 1 month ago) by michael
File length: 49578 byte(s)
Diff to previous 471 , to selected 398
- exit_client(): Don't bounce a QUIT back to origin's server
  Reported by adx

Revision 471 - (view) (annotate) - [select for diffs]
Modified Fri Feb 17 10:01:53 2006 UTC (18 years, 1 month ago) by michael
File length: 49566 byte(s)
Diff to previous 460 , to selected 398
- Don't allocate new dlink_node pointer on each client creation,
  rather reuse localClient->lclient_node for linking it into
  unknown_list and move it into local_client_list after client
  registration.

Revision 460 - (view) (annotate) - [select for diffs]
Modified Sun Feb 12 22:22:50 2006 UTC (18 years, 1 month ago) by db
File length: 49547 byte(s)
Diff to previous 458 , to selected 398
- fixed typo
- fixed argument number
- removed reference to no longer used argument


Revision 458 - (view) (annotate) - [select for diffs]
Modified Sun Feb 12 20:45:14 2006 UTC (18 years, 1 month ago) by michael
File length: 49547 byte(s)
Diff to previous 457 , to selected 398
- Small changes so register_local_user() only takes 2 parameters instead of 4

Revision 457 - (view) (annotate) - [select for diffs]
Modified Sun Feb 12 20:30:27 2006 UTC (18 years, 1 month ago) by michael
File length: 49563 byte(s)
Diff to previous 452 , to selected 398
- Use set_initial_nick() if an unregistered client is changing between
  equivalent nicks which only differ in cAsE.  That way we properly keep
  the fd note about the client updated.

Revision 452 - (view) (annotate) - [select for diffs]
Modified Sun Feb 12 16:21:34 2006 UTC (18 years, 1 month ago) by michael
File length: 49651 byte(s)
Diff to previous 450 , to selected 398
- Properly close ssl clients

Revision 450 - (view) (annotate) - [select for diffs]
Modified Sun Feb 12 13:16:27 2006 UTC (18 years, 1 month ago) by michael
File length: 49510 byte(s)
Diff to previous 405 , to selected 398
- Removed unused 'nextconnect' var

Revision 405 - (view) (annotate) - [select for diffs]
Modified Tue Feb 7 19:38:35 2006 UTC (18 years, 1 month ago) by michael
File length: 49588 byte(s)
Diff to previous 398
- Removed now unused llflags parameter from sendto_server()


Revision 398 - (view) (annotate) - [selected]
Modified Tue Feb 7 12:00:21 2006 UTC (18 years, 1 month ago) by michael
File length: 49624 byte(s)
Diff to previous 385
- 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 385 - (view) (annotate) - [select for diffs]
Modified Tue Jan 31 12:24:23 2006 UTC (18 years, 2 months ago) by michael
File length: 49862 byte(s)
Diff to previous 365 , to selected 398
- Forward-port SoftCallerId fix from 7.2

Revision 365 - (view) (annotate) - [select for diffs]
Modified Sun Jan 8 20:48:35 2006 UTC (18 years, 2 months ago) by adx
File length: 49907 byte(s)
Diff to previous 362 , to selected 398
+ this should fix the bug with low ping timeouts for servers.
keep cleaning up the conf stuff.

Revision 362 - (view) (annotate) - [select for diffs]
Modified Sat Jan 7 05:06:18 2006 UTC (18 years, 2 months ago) by metalrock
File length: 49917 byte(s)
Diff to previous 316 , to selected 398
 - Fixed some compile errors and some shadowed declarations.

Revision 316 - (view) (annotate) - [select for diffs]
Modified Fri Dec 23 12:03:15 2005 UTC (18 years, 3 months ago) by michael
File length: 49884 byte(s)
Diff to previous 315 , to selected 398
- Fixed compile error caused by previous commit
- Removed outdated comment

Revision 315 - (view) (annotate) - [select for diffs]
Modified Fri Dec 23 11:56:34 2005 UTC (18 years, 3 months ago) by michael
File length: 49909 byte(s)
Diff to previous 238 , to selected 398
- Moved 'invited' dlink_list to LocalUser struct which will save
  some 1.3mb of ram on a typical efnet server.

Revision 238 - (view) (annotate) - [select for diffs]
Modified Sat Nov 5 17:00:17 2005 UTC (18 years, 4 months ago) by db
File length: 49865 byte(s)
Diff to previous 237 , to selected 398
- Fix core, don't try to remove accepts for remote clients


Revision 237 - (view) (annotate) - [select for diffs]
Modified Sat Nov 5 15:47:32 2005 UTC (18 years, 4 months ago) by michael
File length: 49795 byte(s)
Diff to previous 236 , to selected 398
- Fixed indenting in set_initial_nick

Revision 236 - (view) (annotate) - [select for diffs]
Modified Sat Nov 5 11:54:49 2005 UTC (18 years, 4 months ago) by michael
File length: 49790 byte(s)
Diff to previous 235 , to selected 398
- Fixed misc compile errors

Revision 235 - (view) (annotate) - [select for diffs]
Modified Sat Nov 5 11:31:51 2005 UTC (18 years, 4 months ago) by michael
File length: 49786 byte(s)
Diff to previous 232 , to selected 398
- Fixed and cleaned up new acceptcode, e.g fix memory leaks,
  don't allow wildcards in a mask when removing accepts, don't
  allow redundant masks etc.

Revision 232 - (view) (annotate) - [select for diffs]
Modified Sat Nov 5 06:05:06 2005 UTC (18 years, 4 months ago) by db
File length: 49292 byte(s)
Diff to previous 224 , to selected 398
- This commits the n!u@h accept code
  I'll tidy it up more later.


Revision 224 - (view) (annotate) - [select for diffs]
Modified Thu Nov 3 17:05:46 2005 UTC (18 years, 4 months ago) by adx
File length: 50904 byte(s)
Diff to previous 221 , to selected 398
+ added logging{} block. I hate to add this rusty code to new conf
  but it's the only way for now..
+ style corrections

Revision 221 - (view) (annotate) - [select for diffs]
Modified Thu Nov 3 15:36:27 2005 UTC (18 years, 4 months ago) by michael
File length: 50855 byte(s)
Diff to previous 193 , to selected 398
- Finished WATCH implementation
- Added missing 'return' after register_remote_user() call in
  nick_from_server() which would cause an extra hash_del/strcpy/hash_add
  combination.

Revision 193 - (view) (annotate) - [select for diffs]
Modified Wed Oct 26 12:07:33 2005 UTC (18 years, 5 months ago) by michael
File length: 50582 byte(s)
Diff to previous 141 , to selected 398
- Added some asserts to exit_one_client()

Revision 141 - (view) (annotate) - [select for diffs]
Modified Sun Oct 16 06:29:10 2005 UTC (18 years, 5 months ago) by db
File length: 50495 byte(s)
Diff to previous 139 , to selected 398
- 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 (18 years, 5 months ago) by db
File length: 50483 byte(s)
Diff to previous 126 , to selected 398
- 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 (18 years, 5 months ago) by db
File length: 50519 byte(s)
Diff to previous 101 , to selected 398
- 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 101 - (view) (annotate) - [select for diffs]
Modified Mon Oct 10 03:52:14 2005 UTC (18 years, 5 months ago) by db
File length: 50445 byte(s)
Diff to previous 98 , to selected 398
- 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 98 - (view) (annotate) - [select for diffs]
Modified Sun Oct 9 10:15:07 2005 UTC (18 years, 5 months ago) by michael
File length: 50465 byte(s)
Diff to previous 69 , to selected 398
- Moved llname to LocalUser struct

Revision 69 - (view) (annotate) - [select for diffs]
Modified Tue Oct 4 16:09:51 2005 UTC (18 years, 5 months ago) by adx
File length: 50452 byte(s)
Diff to previous 68 , to selected 398
- 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 68 - (view) (annotate) - [select for diffs]
Modified Tue Oct 4 00:44:29 2005 UTC (18 years, 5 months ago) by adx
File length: 50714 byte(s)
Diff to previous 65 , to selected 398
- removed last references to the ircd core, libio is independent now
- to do: split headers

Revision 65 - (view) (annotate) - [select for diffs]
Modified Mon Oct 3 23:33:16 2005 UTC (18 years, 5 months ago) by adx
File length: 46636 byte(s)
Diff to previous 33 , to selected 398
- removed external references from libio/misc
- imported s_misc.c to libio, moved CurrentTime there

Revision 33 - (view) (annotate) - [select for diffs]
Modified Sun Oct 2 20:50:00 2005 UTC (18 years, 5 months ago) by knight
File length: 42168 byte(s)
Diff to previous 32 , to selected 398
- svn:keywords

Revision 32 - (view) (annotate) - [select for diffs]
Modified Sun Oct 2 20:41:23 2005 UTC (18 years, 5 months ago) by knight
File length: 42168 byte(s)
Diff to previous 31 , to selected 398
- svn:keywords

Revision 31 - (view) (annotate) - [select for diffs]
Modified Sun Oct 2 20:34:05 2005 UTC (18 years, 5 months ago) by knight
File length: 42168 byte(s)
Diff to previous 30 , to selected 398
- Fix svn:keywords

Revision 30 - (view) (annotate) - [select for diffs]
Added Sun Oct 2 20:03:27 2005 UTC (18 years, 5 months ago) by adx
File length: 42215 byte(s)
Diff to selected 398
- 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 1586)

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