- 12 Jul, 2003 40 commits
-
-
Per Cederqvist authored
which were introduced in the previous commit. (isc_gethostname): Ditto. (isc_getportnum): Ditto.
-
Per Cederqvist authored
scheduling of clients, so that one client cannot starve other clients for resources. (Bug 102). Run the database save, garb, and check for killed clients from three separate liboop timer callbacks. Use liboop for signal dispatching. Use liboop. (Bug 106). Code cleanup. Renamed a few constants that have nothing to do with ISC. Make it possible to read an unsigned int from the config file. Add SA_RESTART support to liboop. (This has been sent to the liboop maintainer.) (Fixes bug 845). Add a few utility string functions.
-
Per Cederqvist authored
stuff that isn't used by lyskom-server. Move much internal stuff from isc.h to intern.h.
-
Per Cederqvist authored
the latter no longer exists.
-
Per Cederqvist authored
(check-dejagnu): New target. (check): Depend on check-dejagnu and check-nondejagnu, and move all dependencies to one of those targets.
-
Per Cederqvist authored
(garb_text): Expect the caller to wait long enough when the garb shouldn't be running. Return true when the garb is completed, instead of when the garb shouldn't be running.
-
Per Cederqvist authored
All callers updated.
-
Per Cederqvist authored
(parameters): Removed "Idle timeout". Added "Garb busy postponement", "Penalty per call", "Penalty per read", "Max penalty" and "Low penalty".
-
Per Cederqvist authored
-
Per Cederqvist authored
-
Per Cederqvist authored
(server_init): Initialize liboop. Adjusted to the new isc API:s. (sighandler_hup): Now an liboop signal callback, not a real signal handler. (sighandler_quit): Ditto. (sighandler_usr2): Ditto. (sighandler_usr1): Ditto. Do the real work here. (sighandler_winch): Ditto. Do the real work here. (setup_sighandlers): Removed. (restart_syscalls_on_intr): Removed. (intr_syscalls_on_intr): Removed. (main): Clean up liboop structures on shutdown.
-
Per Cederqvist authored
-
Per Cederqvist authored
penalty_per_call, penalty_per_read, max_penalty and low_penalty. (reread_param): Variable removed.
-
Per Cederqvist authored
(KOM_MSG_INCOMPLETE): New name for former ISC_MSG_INCOMPLETE. All users updated. (KOM_LOGOUT): New name for former ISC_LOGOUT. All users updated.
-
Per Cederqvist authored
-
Per Cederqvist authored
-
Per Cederqvist authored
default_want_async variable. Initialize penalty, penalty_generation, queue_next, queue_prev, on_queue. (kill_client): Assert that on_queue is false.
-
Per Cederqvist authored
-
Per Cederqvist authored
Adjusted to the new API of sync_part().
-
Per Cederqvist authored
queue_next, on_queue. (handle_accept_event): New function.
-
Per Cederqvist authored
(penalty_generation): New static variable. (work_done): Ditto. (is_idle): Ditto. (queue_first): Ditto. (queue_last): Ditto. (kill_pending): Ditto. (do_statistics): Variable removed. (queue_add): New static function. (queue_remove): Ditto. (set_time): Ditto. (logout_client): Remove the client from the queue of pending clients. (parse_unparsed): Add penalty points for finished calls and protocol errors. Don't delete the parsed part of unparsed. (parse_message): Function removed. (logout_request): Function removed. (parse_forgotten): Ditto. (message_request): Ditto. (add_to_kill_list): Add an oop timer event callback to check_kill_flg when a client is added to the kill list. (check_kill_flg): Changed API: this is now an oop timer callback function. (write_err_cb): New static function. (adjust_penalty): Ditto. (read_from_connection): Ditto. (setup_timer): Ditto. (enable_idle_check): Ditto. (check_idle_callback): Ditto. (garb_callback): Ditto. (saver_callback): Ditto. (data_available_callback): Ditto. (handle_accept_event): New function. (login_request): Take an isc_scb as argument instead of an isc event. Add read and write error callback functions for the new client. (toploop): Rewritten to use liboop.
-
Per Cederqvist authored
(union param_value): Unused union removed.
-
Per Cederqvist authored
-
Per Cederqvist authored
-
Per Cederqvist authored
(lyskomd_SOURCES): Added oop-malloc.h and oop-malloc.c. (lyskomd_LDADD): Link against liboop.a.
-
Per Cederqvist authored
-
Per Cederqvist authored
and msg arguments. (isc_tcp_destroy_fn): Function removed. (isc_connecttcp): Ditto. (isc_opentcp): Ditto. (isc_tcp_funs): Function table removed. (isc_createtcp): Added mcb and initial_state arguments. Removed obsolete bogus setsockopt() calls. (isc_bindtcp): Don't check the type of the session. (isc_accept_cb): New function. (isc_listentcp): Added the cb argument. Don't set the state here; that is now done by isc_create(). Add isc_accept_cb() as a read callback.
-
Per Cederqvist authored
(isc_write): Ditto.
-
Per Cederqvist authored
(isc_getraddress): Ditto. (isc_copyaddress): Function removed. (isc_getservice): Ditto.
-
Per Cederqvist authored
(isc_default_write_fn): Ditto. (isc_default_close_fn): Ditto. (isc_close): Ditto. (isc_sessions): Ditto. (isc_openfd): Ditto. (isc_file_destroy_fn): Ditto. (isc_openfile): Ditto. (isc_default_fun): Function table removed. (isc_create): Removed the "IscHandler *fun" argument, and added mcb and initial_state arguments. Initialize the currently existing fields. (isc_set_read_callback): New function. (isc_check_read_callback): Ditto. (isc_cancel_read_callback): Ditto. (isc_cancel_write_callback): Ditto. (isc_destroy): Cancel read, write and accept callbacks. Free raddr and laddr instead of calling a destroy handler. (isc_disable): Remove the read callback. (isc_enable): Maybe add the read callback.
-
Per Cederqvist authored
-
Per Cederqvist authored
-
Per Cederqvist authored
(write_cb): New function. (isc_oflush): Don't close the socket if the output queue is too big. Instead, isc_check_read_callback() refuses to read input from the client until it reads enough of the output queue. Assert that this isn't a listening session, but don't otherwise check the state. Call write instead of using the handler mechanism. Call the write_err_cb callback function if an error occurs. Don't update statistics that nobody uses. Set up a liboop write callback if we cannot send all output at once. Call isc_check_read_callback(). (isc_send): Function removed. (isc_sendto): Ditto.
-
Per Cederqvist authored
(isc_reallocmsg): Function removed. (isc_copymsg): Ditto. (isc_mkstrmsg): Ditto.
-
Per Cederqvist authored
argument. Allocate a cfg struct. (isc_cfg_fd_relocate): New function. (isc_shutdown): Free the cfg struct.
-
Per Cederqvist authored
(isc_getnextevent): Function removed. (isc_dispose): Ditto.
-
Per Cederqvist authored
-
Per Cederqvist authored
-
Per Cederqvist authored
use the real names instead: IscSessionConfig => struct isc_session_cfg IscAddress => union isc_address IscMessage => struct isc_msg IscMsgQE => struct isc_msg_q_entry IscMsgQueue => struct isc_msgqueue IscSession => struct isc_scb IscSessionList => struct isc_scb_entry IscMaster => struct isc_mcb (IscMasterConfig): Define and struct removed. (IscConfig): Ditto. (IscHandlerCache): Ditto (IscHandler): Ditto. (IscHandlerList): Ditto. (IscEvent): Ditto. (IscEventType): Define and enum removed. (IscSessionType): Ditto. (IscSessionInfo): Define and union removed. (IscSessionStats): Ditto. (enum isc_session_state): Removed the states ISC_STATE_UNKNOWN, ISC_STATE_CONNECTING and ISC_STATE_CLOSING2. (union isc_address): Don't wrap the saddr field inside a meaningless struct named ip. (isc_initialize): Removed the cfg argument, and added the oop_source argument. (struct isc_scb): Removed the following fields: type, isc_errno, rd_msg_q, info, logintime, idlesince, stats and handlers. Added the following fields: raddr, laddr, master, accept_cb, write_err_cb, data_available_callback, data_available_user, data_available_registered and write_cb_registered. (struct isc_mcb): The scfg field is now a pointer, so that we don't have to expose the struct isc_session_cfg struct in isc.h. Added the event_source field. (isc_listentcp): Added the cb argument. (isc_openfd): Function removed. (isc_openfile): Ditto. (isc_openudp): Ditto. (isc_close): Ditto. (isc_sessions): Ditto. (isc_getnextevent): Ditto. (isc_wait): Ditto. (isc_dispose): Ditto. (isc_send): Ditto. (isc_sendto): Ditto. (isc_reallocmsg): Ditto. (isc_copymsg): Ditto. (isc_mkstrmsg): Ditto. (isc_createudp): Ditto. (isc_bindudp): Ditto. (isc_connecttcp): Ditto. (isc_connectudp): Ditto. (isc_listenudp): Ditto. (isc_copyaddress): Ditto. (isc_getservice): Ditto. (isc_newhandler): Ditto. (isc_freehandler): Ditto. (isc_copyhandler): Ditto. (isc_pushhandler): Ditto. (isc_pophandler): Ditto. (ISC_HCALLFUN1): Macro removed. (ISC_HCALLFUN2): Ditto. (ISC_HCALLFUN3): Ditto. (enum isc_read_result): New enum. (isc_read_data): New function. (isc_cfg_fd_relocate): Ditto. (isc_set_read_callback): Ditto. (isc_accept_callback): New callback function. (isc_write_error_cb): Ditto Moved some constants to intern.h: (ISC_DEFAULT_MAX_MSG_SIZE): Moved. (ISC_DEFAULT_MAX_QUEUED_SIZE): Moved. (ISC_DEFAULT_MAX_DEQUEUE_LEN): Moved. (ISC_DEFAULT_MAX_OPEN_RETRIES): Moved. (ISC_DEFAULT_MAX_BACKLOG): Moved. Moved some structs to intern.h: (struct isc_msg): Was: IscMessage. (struct isc_msg_q_entry): Was: IscMsgQE. (struct isc_msgqueue): Was: IscMsgQueue. (struct isc_session_cfg): Was: IscSessionConfig. (struct isc_scb_entry): Was: IscSessionList. Moved some functions to intern.h: (isc_freemsg): Moved. (isc_create): Moved. (isc_insert): Moved. (isc_remove): Moved. (isc_createtcp): Moved. (isc_bindtcp): Moved. (isc_allocmsg): Moved. Moved some functions from intern.h: (isc_setallocfn): Moved.
-
Per Cederqvist authored
ISC_DEFAULT_MAX_MSG_SIZE: 2048 => 8176 ISC_DEFAULT_MAX_QUEUED_SIZE: 600 => 50 ISC_DEFAULT_MAX_DEQUEUE_LEN: 10 => 30 ISC_DEFAULT_MAX_OPEN_RETRIES: 10 => 10 ISC_DEFAULT_MAX_BACKLOG: 5 => 50 Moved some structs from isc.h and stopped using a defined name: (struct isc_msg): Was: IscMessage. (struct isc_msg_q_entry): Was: IscMsgQE. (struct isc_msgqueue): Was: IscMsgQueue. (struct isc_session_cfg): Was: IscSessionConfig. (struct isc_scb_entry): Was: IscSessionList. Moved some functions from isc.h: (isc_freemsg): Moved. (isc_create): Moved. (isc_insert): Moved. (isc_remove): Moved. (isc_createtcp): Moved. (isc_bindtcp): Moved. (isc_allocmsg): Moved. Moved some functions to isc.h: (isc_setallocfn): Moved. Other changes: (struct isc_msg): Removed the address field. (struct isc_session_cfg): Removed the version field. (isc_log): Function removed. (isc_create): Removed the "IscHandler *fun" argument, and added mcb and initial_state arguments. (isc_createtcp): Added mcb and initial_state arguments. (isc_strdup): Function removed. (isc_default_read_fn): Function removed. (isc_default_write_fn): Function removed. (isc_default_close_fn): Function removed. (isc_pollqueue): Removed the external function. Retain the macro. (isc_setabortfn): Place inside #if 0, since it is currently unused. (isc_check_read_callback): New function. (isc_cancel_read_callback): New function. (isc_cancel_write_callback): New function. (ISC_SCALLFUN1): Macro removed. (ISC_SCALLFUN2): Macro removed. (ISC_SCALLFUN3): Macro removed.
-