2009-09-29 10:38:54 +0100 james * client/conc.c: client/console.c: client/log.c: client/terminal.c: common/mplex.c: common/mplex.h: configure.in: mgr/client.c: mgr/console.c: mgr/log.c: mgr/server-connection.c: mgr/server.c: svr/logquery.c: svr/main.c: TODO: version 2.0.3 - add IPMI support, try to improve reliability. 2009-04-16 12:00:16 +0100 james * client/conc.c: bumped copyright yesr to 2009 * client/conc.glade: client/groups.c: common/client-message.h: mgr/client.c: mgr/console.c: mgr/console.h: added new feature of displaying the cause for console breakage as a tooltip * client/config-users.c: g_object_set should be terminated by NULL, not FALSE 2009-04-15 17:02:15 +0100 james * client/conc.glade: client/config-consoles.c: common/ipmi.c: common/ipmi.h: common/Makefile.am: common/spec-console.c: common/spec-console.h: common/svr-message.h: configure.in: mgr/console.c: svr/console.c: add support for IPMI 2.0 SOL using libipmiconsole 2009-04-06 16:15:01 +0100 james * BUGS: fixed multiple console connection bug * client/conc.c: client/console.c: common/Makefile.am: configure.in: mgr/client.c: common/ssl.c: common/ssl.h: use SSL for client connections * common/matrix.c: fixed bugs when disconnecting and expunging connection s * common/mplex.c: don't attempt to shut down individual channels when the whole mplex is closing * mgr/console.c: close console properly * mgr/log.c: switch consoles in the _Log struct from a GList to a GHashTable, close logs properly * svr/svr.h: svr/main.c: svr/log.h: svr/log.c: switch the using a GHashTable for logs, and close them properly. 2009-03-31 14:04:14 +0100 james * common/matrix.c: maintain references on g_io_channels * common/mplex.h: common/mplex.c: svr/log.c: support closing of mplex channels * mgr/console.c: close console channels when no longer required * svr/svr.h: svr/console.h: svr/console.c: do not allow the same console to be opened multiple times, support closing of consoles 2009-03-30 16:28:08 +0100 james * BUGS: two console on the same device - bad * common/message.c: fixed bug - a message queue should reference its io channel * mgr/server-connection.c: unreference server's io channel where appropriate * mgr/server.c: rejig the server connection retrying code so that, even with after apparently successful connection, a successful ping must be sent before the connection is considered successfully connected. this is good for SSH based connections where the connection always succeeds (because the fork and exec of ssh always works), but subsequent failures would lead to constant "attempt 1" connection attempts with no backing off. 2009-03-30 12:36:48 +0100 james * client/conc.c: client/conc.glade: client/config-cgroups.c: client/config-consoles.c: client/config-logs.c: client/config-servers.c: client/config-users.c: client/error.c: client/groups.c: client/log.c: client/subscribed.c: client/terminal.c: changes to remove duplicate widget names which glade-3 "helpfully" removed 2009-03-30 11:10:01 +0100 james * mgr/cgroup.c: mgr/client.c: mgr/console.c: mgr/log.c: mgr/mgr.h: mgr/server.c: mgr/user.c: switch to using hash table rather than trees of manager objects * common/matrix.c: common/mplex.c: add some debugging for short writes * client/conc.glade: fixed client port number 2009-03-27 14:44:58 +0000 james * svr/ping.h: fixed simple bug in initial ifndef * configure.in: added --with-last-active * mgr/console.c: added support for a separate file (/tmp/conc.active by default) for recalling console last active times on concmgr startup * TODO: suggested enhancement for log view 2008-02-01 10:09:25 +0000 james * client/conc.c: bumped the copyright year to 2008 2008-02-01 09:52:41 +0000 james * BUGS: svr/logquery.c: fixed bug that caused log queries to hang indefinitely if the log was active whilst viewing. * configure.in: bumped version to 2.0.2 2008-01-29 16:06:32 +0000 james * BUGS: bug - low priority on log file reading can cause the log file not to be read until activity on it ceases. 2008-01-29 14:06:32 +0000 james * common/mplex.c: fix embarrassing overflow that must have caused lots of crashes. 2008-01-29 14:03:20 +0000 james * BUGS: INSTALL: 2006-10-30 14:27:26 +0000 james * common/svr-message.h: mgr/server.c: svr/main.c: svr/Makefile.am: svr/ping.c: svr/ping.h: implement a ping between manager and server to keep dormant servers' ssh connections alive, and to quickly discover that a server has been lost. * client/groups.c: only update status widgets is the status has actually changed. this should alleviate the worst of the memory leak problems. * configure.in: bumped version to 2.0.1 2006-10-16 12:03:26 +0100 james * this check-in actually reflects changes before 2.0.0 - my fault! * Makefile.am: added required po dir * client/conc.c: client/console.c: mgr/main.c: svr/main.c: switched from popt to goption for command line parsing. 2006-10-13 13:57:26 +0100 james * configure.in: bumped version to 2.0.0 2006-07-23 19:08:54 +0100 james * BUGS: removed bug about view log hanging. i've not seen a crash in some time, and although view log can sometimes be quite slow, it doesn't hang. * configure.in: bumped version to 1.9.4 - we'll call this the beta version. 2006-05-09 16:40:25 +0100 james * help/C/conc.xml: added more manager configuration details, added context menu in main window. 2006-05-02 17:28:15 +0100 james * client/log.c: if requesting a log for a console that is not loghged, offer all the logs instead of none. * client/conc.c: fix unnecessary focus on user name during login. 2006-05-02 16:22:53 +0100 james * common/client-message.h: added the CLIENT_MESSAGE_CONSOLE_LOGS message to get a list of logs that record output of a given log. * mgr/client.c: mgr/log.c: mgr/log.h: added code to handle CLIENT_MESSAGE_CONSOLE_LOGS * client/log.c: add code to log_view() to limit log choices to that which include the given console, where specified. 2006-05-02 11:46:23 +0100 james * client/log.c: remove unnecessary object unref in log_window_closed(). keep the current (usually most recent) lines of the log visible as older lines are added. 2006-05-01 17:52:46 +0100 james * mgr/cgroup.c: fixed bug that cause renaming a console to add that console to all groups * BUGS: removed fixed bug 2006-05-01 15:40:37 +0100 james * BUGS: added a bug - renaming a console adds it to all groups * client/conc.glade: fixed accelerator for close window so that CTRL-W deletes a word on the console, as expected. added signal handlers for right clicks and popup menus of the main window tree views. * client/groups.c: added a popup menu for viewing consoles and logs. * client/subscribed.c: added code to handle direct toggling of the subscribed checkbox. 2006-04-28 18:25:33 +0100 james * client/conc.c: client/conc.h: client/config-cgroups.c: client/config-logs.c: client/configuration.c: client/groups.c: GtkListStore implements GtkTreeModelSortable, so there's no need to wrap it in a GtkTreeModelSort. doh! 2006-04-28 14:54:16 +0100 james * client/groups.c: fixed bug that caused the wrong console to be opened when double clicking. 2006-04-27 15:57:14 +0100 james * client/groups.c: save subscribed groups in the correct order. * configure.in: bumped version to 1.9.3 2006-04-27 15:11:43 +0100 james * client/config-cgroups.c: client/config-logs.c: make members lists alphabetical 2006-04-27 12:45:31 +0100 james * client/conc.h: change lists to be sortable (with underlying normal lists) * client/conc.c: make lists sorted on name. make debug mode exit on CRITICAL and ERROR events fatal in debug mode. * client/configuration.c: changed configuration_selected_treeview() to work with sortable tree models. * client/groups.c: change group_(un)subscribe to use underlying lists rather than sortable treemodels. 2006-04-27 11:47:58 +0100 james * client/groups.c: sort groups based on console name 2006-04-25 16:26:36 +0100 james * BUGS: removed fixed bug * svr/logquery.c: fixed bug where reads larger than the buffer could be specified. * mgr/server-connection.c: fixed bug that prevented pipes from being closed after a server dies. this caused the manager to eventually run out of file descriptors. 2006-04-20 17:22:25 +0100 james * BUGS: added new bugs * client/terminal.c: downgrade failed attempts to connect to a console to warnings, rather than errors that caused conc to quit. * mgr/cgroup.c: don't write the ALL cgroup to the config file - it's superfluous and was going wrong. 2006-04-18 15:15:19 +0100 james * help/C/conc.xml: add documentation of the main window, and incomplete documentation about configuration. * help/C/figures/active.png: help/C/figures/config-cgroup.png: help/C/figures/config-console.png: help/C/figures/config-log.png: help/C/figures/config-server.png: help/C/figures/config-user.png: help/C/figures/config.png: help/C/figures/console.png: help/C/figures/failed.png: help/C/figures/main.png: help/C/figures/ok.png: help/C/figures/subscr.png: help/C/figures/viewlog.png: screen shots for documentation * svr/main.c: in main() change directory to the log directory, so that log filenames can be specified without a full pathname. * configure.in: bump version number to 1.9.2 2006-04-03 17:13:48 +0100 james * help/C/conc.xml: filled out the "Getting Started" ans "Usage" sections. 2006-04-03 17:12:44 +0100 james * client/console.c: removed unnecessary --port option. * client/conc.c: added --debug, --host, --user and --pwfile options, and altered login() to accommodate them. 2006-04-03 15:12:17 +0100 james * mgr/user.c: fixed bug in user_add() - u->manager was not being set which caused a later null pointer dereference. * mgr/log.c: fixed bug in log_reader_connect() where manager->consoles was used before it had been initialised on startup. fixed bug in log_load() - a ConfigDirective stored in a ConfigPath was being used after the ConfigPath had been freed. 2006-03-30 11:42:52 +0100 james * client/conc.png: client/conc.xcf: client/Makefile.am: added conc's icon to the package * client/conc.c: improved about box and added application icon 2006-03-29 12:15:00 +0100 james * client/conc.glade: added menu entries for about and help * client/Makefile.am: added -DDATADIR (required by help system) * client/conc.c: added about dialog and help system. fixed bug where gnome_program_init() was told that conc was called console. 2006-03-28 16:45:49 +0100 james * .: yet another chnage to svn:ignore property. 2006-03-28 16:42:38 +0100 james * .: updated svn:ignore property. 2006-03-28 16:39:32 +0100 james * .: updated svn:ignore property. 2006-03-28 16:25:56 +0100 james * autogen.sh: configure.in: help/C/Makefile.am: help/Makefile.am: Makefile.am: added help directory to the build tools * help/C/conc-C.omf: new OMF file for conc documentation. 2006-03-28 15:22:25 +0100 james * doc: doc/C: doc/C/conc.xml: doc/C/figures: doc/C/figures/overview.dia: doc/C/legal.xml: help: rename doc to help to conform with GNOME source standards. * help/C/figures/overview.png: include generated PNGs in repos. 2006-03-28 15:19:29 +0100 james * doc: doc/C: doc/C/conc.xml: doc/C/figures: doc/C/figures/overview.dia: doc/C/figures/overview.png: doc/C/legal.xml: initial documentation 2006-03-23 16:57:41 +0000 james * mgr/cgroup.c: improve handling of the "ALL" group in cgroup_load()- ignore any existing configuration and reconstruct "ALL". before, editting the config file by hand to add consoles could cause the "ALL" group to get out of sync. * mgr/user.c: added user_config_write(). in user_load(), create a password-less "admin" user if one does not already exist. 2006-03-23 16:27:38 +0000 james * mgr/config-file.c: make config file reading more resilient to non existent and empty files. 2006-03-22 10:35:02 +0000 jfc * mgr/main.c: added code to open conc.log file and write log messages to it after backgrounding daemon (unless in debug mode). 2006-03-07 16:19:44 +0000 jfc * common/message.c: workaround apparent shortcoming of g_tree_lookup - it doesn't appear to work with top-bit-set pointers. 2006-02-28 10:17:47 +0000 jfc * mgr/log.h: mgr/log.c: added log_spec() * mgr/client.c: added client code for adding/editing logs * client/config-logs.c: fixed bug is config log dialog where the name of the log was used in place of the log's filename. * mgr/server.c: fixed bug that caused all servers read from the configuration file to by "exec" servers. 2006-02-18 18:26:12 +0000 jfc * client/configuration.c: add missing include file. * client/Makefile.am: client/conc.c: move data files into a proper distributed and installed data directory. * configure.in: bump version number to 1.9.1 2006-02-18 17:16:07 +0000 jfc * Makefile.am: add intltool to distrubuted files. * client/Makefile.am: mgr/Makefile.am: add missing common/client-message.h * svr/Makefile.am: remove nonexistent common/conc.h 2006-02-18 17:08:24 +0000 jfc * client/conc.c: client/conc.glade: client/config-cgroups.c: client/config-logs.c: client/config-logs.h: client/config-servers.c: client/config-servers.h: client/configuration.c: client/Makefile.am: common/client-message.h: common/Makefile.am: common/spec-log.c: common/spec-log.h: common/spec-server.h: common/spec-server.c: mgr/client.c: mgr/config-file.h: mgr/console.c: mgr/console.h: mgr/log.c: mgr/log.h: mgr/main.c: mgr/mgr.h: mgr/server.c: mgr/server.h: added code to configure logs and servers. 2006-02-07 16:25:58 +0000 jfc * client/conc.glade: added config server dialog and confiog log dialog. 2006-02-07 15:33:31 +0000 jfc * BUGS: new file commenting on overall bugs that i shoul difx * client/config-cgroups.h: client/config-cgroups.c: new files for hadnling configuration of console groups * client/configuration.c: add in newly support cgroup functions * client/config-consoles.c: client/conc.h: client/conc.c: migrated get_combobox_text() and set_combobox_text() from config-consoles.c to conc.c as more general utility functions. * client/groups.c: client/groups.h: added groups_rename_cgroup() * client/terminal.c: client/terminal.h: added terminals_rename_cgroup() * client/Makefile.am: added new files config-cgroups.[ch] * mgr/cgroup.h: mgr/cgroup.c: added cgroup_spec(). fixed bug in remove_console() where the name used in the CGROUP_CHANGED event was often freed before use. * mgr/client.c: added client message handlers to cope with configuring console groups. 2006-02-06 17:11:42 +0000 jfc * mgr/cgroup.c: fixed bug - did not pass a name to config_path_create(). 2006-02-06 17:07:09 +0000 jfc * mgr/cgroup.c: create "cgroups" config path when necessary. fix g_tree_lookup_extended() warnings. * mgr/console.c: fix g_tree_lookup_extended() warnings. * mgr/user.c: fix bug in error report. fix g_tree_lookup_extended() warnings. 2006-02-06 16:54:55 +0000 jfc * mgr/console.c: mgr/user.c: add code to create "consoles" and "users" config paths when necessary. 2006-02-06 16:44:25 +0000 jfc * client/config-consoles.c: client/config-users.c: remove unnecessary confirmation dialogs - they just got in the way 2006-02-06 16:35:59 +0000 jfc * common/client-message.h: added messages for changing console groups. * mgr/console.c: improved condition checking in console_edit() * mgr/client.c: mgr/mgr.h: mgr/main.c: added events for handling changes to console groups * mgr/cgroup.h: mgr/cgroup.c: added code for adding/removing/editing console groups. internalised code for adding and removing consoles from groups. 2006-02-06 13:50:21 +0000 jfc * client/conc.c: client/terminal.c: client/terminal.h: added terminals_rename_console() to re-title open terminal windows if their console is renamed. * mgr/console.c: added code to reconnect consoles when edited. * common/Makefile.am: common/spec-cgroup.c: common/spec-cgroup.h: new code to hade specification of console groups. * client/conc.glade: added config cgroup dialog. 2006-02-03 17:31:12 +0000 jfc * client/configuration.c: add support for editing and removing consoles. * common/client-message.h: add messages for configuring consoles. * common/spec-console.c: silly bug fix - compared wrong string. * svr/console.c: common/terminal.h: common/terminal.c: renamed terminal_open_io_channel() to avoid name clash. added terminal_match(). * client/config-consoles.c: completed code for configuring consoles. * client/groups.h: client/groups.c: client/conc.c: added code to cope with changes to console configuration - consoles being added and remove from groups, and consoles renaming. * mgr/console.h: mgr/console.c: added code for confiuring consoles - chnages in configuration are not yet updated in concsvrs. * mgr/user.c: bug fix to avoid following NULL pointer. * mgr/mgr.h: mgr/main.c: add new event associated with editing consoles. * mgr/client.c: client code for editing consoles. * mgr/cgroup.h: mgr/cgroup.c: added cgroup_add() and cgroup_remove() to cope with changed to group membership. 2006-02-01 09:02:01 +0000 jfc * client/conc.glade: added console configuration dialog * client/Makefile.am: added config-consoles.[ch] * client/config-consoles.h: client/config-consoles.c: initial temlate for console configuration dialog code * client/configuration.c: add call to config_consoles_add() * common/Makefile.am: addedd i18n.h and spec-console.[ch] * common/spec-console.h: common/spec-console.c: new code for encapsulating console configuration data 2006-01-30 17:32:19 +0000 jfc * client/conc.c: added code to handle CLIENT_MESSAGE_CONFIG_USER_RENAMED message. * common/client-message.h: added CLIENT_MESSAGE_CONFIG_USER_RENAMED message. * mgr/main.c: mgr/mgr.h: added EVENT_USER_RENAMED event. * mgr/user.h: mgr/user.c: added user_edit() to allow edits of user configuration, and fixed a silly bug in user_remove() that caused a null pointer to be followed. * mgr/client.c: add handler for EVENT_USER_RENAMED to inform clients of change and fixed bug in client_config_edit_user() where an argument name was mistakenly reused. 2006-01-26 14:36:37 +0000 jfc * client/config-users.c: common/client-message.h: mgr/client.c: mgr/user.c: mgr/user.h: add code to handle user specifications * svr/svr.h: add i18n support 2006-01-20 16:35:28 +0000 jfc * client/conc.glade: * client/conc.h: client/console.c: mgr/mgr.h: add i18n support. * common/i18n.h: define gettext macros. 2005-06-07 14:46:54 +0100 jfc * mgr/client.c: add code to disconnect client when their users are removed from the system (still buggy). 2005-06-01 16:04:40 +0100 jfc * client/conc.h: remove glade definitions, moved to .c files where they are referenced. * client/conc.glade: change title of the config user dialog. * common/spec-user.c: common/spec-user.h: new code for handling the specification of a user. * common/Makefile.am: add spec-user.[ch] * client/error.c: client/groups.c: client/log.c: client/subscribed.c: client/terminal.c: add glade widgets and handlers (removed from conc.h) * client/conc.c: add glade widgets and handlers, move magges handler registration into register_handlers(), add code to maintain all_users list store. * client/configuration.c: add glade widgets and handlers, add calls to configu_users_* functions for maintaining users. * client/Makefile.am: add config-users.[ch] * client/config-users.c: client/config-users.h: add code to handle user configuration dialogs. * common/client-message.h: add messages to deal with maintaing the configuration of users. * mgr/config-file.c: mgr/config-file.h: add config_path_create(), fixed bug in delete_node() . * mgr/main.c: mgr/mgr.h: add events for adding and removing users. add a GError domain for manager errors. * mgr/client.c: add code to handle messages for adding and removing users. * mgr/user.c: mgr/user.h: add user_add() and user_remove(). 2005-05-27 12:17:23 +0100 jfc * client/conc.glade: expanded configuration dialog * client/configuration.c: client/configuration.h: new code to handle configuration dialog * client/Makefile.am: added configuration.[ch] * common/client-message.h: mgr/client.c: added a list of consoles, servers and users to the login response * mgr/server.c: mgr/server.h: added server_list() * mgr/user.c: mgr/user.h: added user_list() * client/conc.c: client/conc.h: added new list stores for consoles, servers and users, and code to populate then from the login response. added code to handle launching the configuration dialog 2005-05-26 13:02:32 +0100 jfc * client/error.h, client/error.c: add info_dialog() function * common/client-message.h: add a change password message * mgr/client.c, client/conc.c, mgr/user.h, mgr/user.c: added code to cope with changing user passwords * mgr/config-file.h, mgr/config-file.c: added cope to actually write the configaration file to disc, added config_unset() * client/conc.h, client/conc.glade: added a configuration dialog 2005-05-25 14:49:57 +0100 jfc * client/conc.glade, client/conc.h: add a change password dialog and menu entry * client/conc.c: add code for handling password change dialog. 2005-05-25 12:01:58 +0100 jfc * mgr/client.c: fix bug where console groups where returned to client instead of logs * client/log.c: add code to add list of logs to the log view dialog, change the error when a log query fails to a warning * client/conc.h, client/conc.c: add code to save manager and user in gconf to save time at login 2005-05-25 10:56:07 +0100 jfc * mgr/client.c: add a list of logs to the response to the login message * client/conc.h: add columns for the all_logs list * client/conc.c: modify the login code to accept a list of logs as well as a list of console groups 2005-05-25 10:20:55 +0100 jfc * client/conc.glade: remove unused window widget, set a default size of log window and make text non-editable * client/conc.h: add a liststore for all logs to the main conc object, add macros for log window widgets * common/date.h, common/date.c: new code for managing dates in a standard format * client/groups.c: switch to using date.c * client/log.c: switch to using datre.c, add code for opening log window and filling it with log data from the manager * common/client-message.h: modify the definition of the response to a login message * common/log-query.c, common/log-query.h: make logquery static in log_query_message_arg() * common/Makefile.am: add dependencies for date.[ch] * common/svr-message.h: add SERVER_MESSAGE_QUERY_LOG message to initiate a query in a server * mgr/client.c, mgr/log.h,m mgr/log.c: add code for managing log queries * svr/log.c: fix bug where a message arg was not freed * svr/Makefile.am: add dependencied on logquery.[ch] * svr/svr.h, svr/main.c: add code to manage a tree of logqueries and to manager lgo query messages * svr/logquery.h, svr/logquery.c: new code to find data in a log file given parameters in a log query 2005-05-17 17:38:45 +0100 jfc * mgr/log.h: remove header for currently non existent function * common/log-query.c: add missing log_query_free() and fix memory allocation bug in log_query_new() * common/client-message.h: change CLIENT_MESSAGE_LOG to use log-query.c format * client/log.c: switch to using log-query.c * mgr/client.c: switch to using log-query.c, maintain a list of log sessions for each client 2005-05-16 16:49:27 +0100 jfc * client/conc.glade: name some input widgets * client/conc.h: add extra input widgets in the view log dialog * common/client-message.h: correct log message definition * client/log.c: add code to initiate log inspection from log view dialog 2005-05-13 17:52:11 +0100 jfc * client/conc.glade: added a date and time dialog * client/conc.h: added macros for date and time dialog * client/log.c: added code to allow setting of start and end times for log inspection. 2005-05-13 15:27:42 +0100 jfc * client/conc.h: add start and end buttons for log view dialog * client/log.c: add code to fill in sensible values for start and end times on the log view dialog. * mgr/log.c: prevent log writing when io channel closed. * common/client-message.h: add message to initiate log inspection. 2004-11-04 17:14:59 +0000 jfc * common/Makefile.am: added log-query.[ch] to libconc's dependencies. * common/log-query.[ch]: new files for a structure representing a query on a log file. 2004-10-27 16:58:02 +0100 jfc * client/conc.glade: added a log window and a log view dialog. * client/conc.h: added macros for the new widgets and signal handlers. * client/Makefile.am: added log.[ch] to conc's dependencies. * client/log.[ch]: new files for dealing with displaying the contents of log files. * client/conc.c: added code to call the log code when view->log is selected. 2004-10-24 17:19:41 +0100 jfc * client/groups.c: if, after deletign a group in group_delete(), ensure that no console is set as current. 2004-10-24 17:07:51 +0100 jfc * mgr/client.c: implemented unsubscribing from groups. 2004-10-24 17:00:48 +0100 jfc * client/groups.c: implemented group_delete(). 2004-10-24 16:35:13 +0100 jfc * client/conc.glade: added the warning dialog * client/conc.h: added macros for the warning dialog widgets and signal handlers. * client/error.[ch]: added the warning_dialog() function, for non fatal errors. * client/subscribed.c: switch from g_printerr() to warning_dialog() for error display. 2004-10-23 18:30:34 +0100 jfc * client/conc.glade: stop using "activate" signal in favour of "clicked" for buttons. * client/conc.h: added gconf stuff. * client/conc.c: add code to subscribe to groups on startup. * client/groups.[ch]: added group_delete (currently just a stub) and groups_save to save gconf key for subscribed groups. * client/subscribed.c: added code to subscribe and unsubscribe from groups. 2004-10-21 16:05:40 +0100 jfc * client/conc.glade: renamed a couple of widgets * client/conc.h: ditto * client/Makefile.am: added subscribed.[ch] to conc's dependencies. * client/subscribed.[ch]: new files that deal with the subscribed groups dialog. * client/conc.c: added code to populate all_groups list store. * client/groups.c: added code to keep all_groups list store up to date as groups are subscribed to. * client/terminal.c: shift vte.h to end of includes - it seems to be a big buggy and causes warning or errors elsewhere. * common/client-message.h: add a list of cgroups to the response to a login message. * mgr/cgroup.[ch]: replace c_group_list with cgroup_list_consoles, adding a new c_group_list which returns a list of all cgroups. * mgr/client.c: return a list of cgroups in response to a login message. 2004-10-20 17:05:21 +0100 jfc * client/conc.glade: added a dialog to edit subscribed groups. * client/conc.h: added widget macros for extra glade widgets. * client/groups.c: adde code to detect selection changes in the main groups treeview and update sesitivity of various widgets accordingly. * client/conc.c: added code to open the subscribed groups dialog. 2004-10-14 16:38:52 +0100 jfc * common/client-message.h: change last_active values to be 64 bits (we build software to last). * mgr/console.[ch]: added console_get_last_active() and changed last_active to be 64 bit. * mgr/client.c: changed last_active to be 64 bit and send the correct value for in in status reports for consoles. * mgr/mgr.h: add a current time filed to the main Manager structure. * mgr/main.c: initialise the time in the Manager structure. * client/conc.h,client/conc.c: change last_active to be 64 bits. * client/groups.c: display the last_active time, if it is not 0. 2004-10-14 15:20:29 +0100 jfc * common/client-message.h: added last activity time to status message. * common/message.c: don't return FALSE from message_send() unless an error has been set. * mgr/cgroup[ch]: added cgroup_get_status(). * mgr/console.c: send the status to clients after it's been calculated. * mgr/client.[ch]: added client_send_status() to pass status messages to interested clients. * client/terminal.[ch]: added terminal_detach() to remove any terminal windows on a console that has been detached. * client/console.c: fixed typo. * client/groups.[ch]: added group_status() to update the displayed status information based on a received status message. * client/conc.h: added a ConcStatus type represent that status of a console or group. * client/conc.c: added message handlers for CLIENT_MESSAGE_STATUS and CLIENT_MESSAGE_DETACH. 2004-10-13 23:56:04 +0100 jfc * common/client-message.h: added commands CLIENT_MESSAGE_CURRSUB and CLIENT_MESSAGE_STATUS. * mgr/client.c: add code to maintain a list of subscribed groups and the current group. * client/groups.[ch]: added group_select() to tell the manager when the current group changes. * client/conc.glade: added handler to manage changes to the current notebook page. * client/conc.h: added macro for above. * client/conc.c: added code to handle changes to the notebook selection and call group_select(). 2004-10-13 22:58:45 +0100 jfc * mgr/cgroup.[ch]: added cgroup_check_status() to calculate each cgroup's status bases on its consoles' statuses. * mgr/console.[ch]: added console_get_status() so taht group statuses can be calculated. call cgroup_check_status() after calculated all the consoles' statuses. 2004-10-13 17:31:29 +0100 jfc * common/mplex.[ch]: added mplex_notify() for setting a flag when there is activity on an mplex channel. * common/Makefile.am: added status.[ch] to libconc's dependencies. * common/status.[ch]: new files for handling status/activity flags for consoles and console groups. * mgr/console.c: added check_activity() which runs every five seconds to update each consoles Status. 2004-10-13 12:09:04 +0100 jfc * client/conc.glade: added handlers for closing the terminal window * client/conc.h: added macros for additions signal handlers. * client/terminal.c: added code for closing the terminal window and setting its title. 2004-10-13 09:58:01 +0100 jfc * client/conc.h: added consoles and terminals lists, and a io matrix, to the main Conc structure. * client/conc.c: initialise the lists and io matrix in the Conc structure. * client/groups.c: adjust terminal_open() syntax. * client/terminal.h: adjust terminal_open() syntax. * client/terminal.c: added code to attach consoles to their terminal windows. 2004-10-12 18:08:51 +0100 jfc * configure.in: added vte to conc's requirements. * client/conc.glade: added a window for terminals and a signal when a line the the console groups list widget is activated. * client/conc.h: added macros for the new glade widgets and signals. * client/groups.c: added a callback when a row is activated to launch the appropriate terminal. * client/Makefile.am: added terminal.[ch] to conc's dependencies. * client/terminal.[ch]: new files for managing terminal windows. 2004-10-12 17:12:04 +0100 jfc * client/Makefile.am: added groups.[ch] to conc's dependencies. * client/conc.[ch]: removed groups specific stuff into groups.c. * client/groups.[ch]: new files responsible for handling the display of console groups in conc's main window. 2004-10-12 14:45:39 +0100 jfc * client/conc.h: added the three status images to the main Conc structure. * client/conc.c: load status images, and display the OK image in the status column. 2004-10-11 17:38:51 +0100 jfc * client/active.png, client/failed.png, client/ok.png: added images for status flag. * client/conc.glade: added widgets for the console group tab and its label. * client/conc.h: added structures for storing data related to a console group. * common/client-message.h: added the CLIENT_MESSAGE_SUBSCRIBE message. * mgr/client.c: added a handler for CLIENT_MESSAGE_SUBSCRIBE. * mgr/console.[ch]: added console_list() to list all available consoles. * mgr/cgroup.[ch]: added cgroup_list() to lsit all console within a given group. add all consoles to the ALL group. * common/message.c: don't insist on MESSAGE_ARG_LIST arguments having a non NULL list. there is probably some tidying up that can be done elsewhere to reflect this change. * client/conc.c: added code to subscribe to the ALL cgroup and populate a tab of the notebook accordingly. 2004-09-27 17:52:38 +0100 jfc * mgr/cgroup.[ch]: new files to manage groups on consoles. only loads the configuration so far. * mgr/mgr.h: add a tree of consoles to the main Manager structure. * mgr/main.c: load console groups. * mgr/Makefile.am: added cgroup.[ch] to concmgr's dependencies. 2004-09-27 16:37:08 +0100 jfc * mgr/console.c: replace console_key_compare() with strcmp() and fixed bug when configuration file empty. * mgr/log.c: replace log_key_compare with strcmp() and fixed bug when configuration file empty. * mgr/server.c: replace server_key_compare with strcmp() and fixed bug when configuration file empty. * mgr/user.c: fixed bug when configuration file empty. 2004-09-24 17:38:26 +0100 jfc * client/conc.glade: added error dialog. * client/error.[ch]: new file for displaying error dialogs. * client/Makefile.am: added error.[ch] to conc's dependencies. * client/conc.h: added macros for glade widgets and handlers. added various bits to the main Conc structure. * client/conc.c: added code to handle logging in. 2004-09-24 11:48:16 +0100 jfc * mgr/client.c: fixed bug in client_quits() - don't modify a list whilst traversing it! 2004-09-23 17:55:41 +0100 jfc * common/conc.h: removed to allow a conc.h in the client directory. the one macro it defined has been moved to common/message.h. * common/message.h: add definition of COMC_MSG_CHANNEL from common/conc.h . * mgr/client.c, mgr/server-connection.c, svr/main.c, client/console.c: remove include of old common/conc.h. * client/conc.glade: added main window widget. * client/conc.h: new file - containing root structure for conc client. * client/Makefile.am: added conc.h to conc's dependencies. * client/conc.c: create a Conc structure and place the GnomeProgram object in it. * configure.in: added glade to the packages to be included for CONC. 2004-09-23 16:12:42 +0100 jfc 2004-09-23 16:10:34 +0100 jfc * changed svn:ignore property * client/console.c: capitalised command line help text, to match the rest of GTK/GNOME output. * client/conc.gladep, client/conc.glade: new file - glade projecto for conc. only the login dialog currently. 2004-09-22 16:04:26 +0100 jfc * common/mplex.[ch]: added mplex_close(), and replace g_io_add_watch with g_io_add_watch_full, so that the deallocation happens correctly. * common/client-message.h: added the CLIENT_MESSAGE_DETACH message. * mgr/client.c: added code to handle incoming CLIENT_MESSAGE_DETACH messages. added code to clean up after a EVENT_CONSOLE_DISCONNECTS event, sending detach messages to the appropriate clients. * client/console.c: added code to handle CLIENT_MESSAGE_DETACH messages. 2004-09-21 17:02:48 +0100 jfc * common/client-message.h: added CLIENT_MESSAGE_ATTACH message for attaching a client to a given console. * mgr/client.c: added client_attach() to handle the CLIENT_MESSAGE_ATTACH message. * client/console.c: added code to attach to the console and manage IO. 2004-09-21 14:27:05 +0100 jfc * mgr/client.c: added code to handle client logins. * mgr/user.[ch]: new files to handle users. * mgr/mgr.h: added a tree of users to the Manager structure. * mgr/Makefile.am: added user.[ch] to concmgr's dependencies. * mgr/main.c: added code to initialise users. 2004-09-20 17:17:24 +0100 jfc * client/console.c: added code to read password from stdin. 2004-09-20 16:51:24 +0100 jfc * configure.in: added code to specify port number and default manager server. * mgr/server-connection.c, mgr/client.c: include config.h to find port numbers. * common/conc.h: remove port numbers now in config.h. * common/message.c: fixed bug in message_arg_error_check(). added code to send nack an error if no handler is registered for a command. * common/client-message.h: bew file for specifying messages between clients and managers. * client/console.c: added incomplete code to connect to the manager and log in. 2004-09-18 18:32:44 +0100 root 2004-09-18 18:27:11 +0100 jfc * setting svn:ignore property. * added client directory and stubs for conc and console programs. 2004-09-18 18:05:41 +0100 jfc * mgr/server.c, svr/main.c: replace g_error_free() with g_clear_error() where appropriate (ie. almost everywhere). 2004-09-18 18:01:25 +0100 jfc * mgr/Makefile.am: add client.[ch] to concmgr's dependencies. * mgr/client.[ch]: new files for handling client connections. only deals with accepting connections and clearing up after they quit at the moment. * mgr/mgr.h: add a list of clients and the client connection socket to the main Manager structure. * mgr/main.c: start the client management code. 2004-09-18 15:00:39 +0100 jfc * common/matrix.[ch]: added matrix_expunge() function. also, added code to avoid memory leaks. * mgr/console.c: remove all references to a console from the matrix when it disconnects. * mgr/log.c: remove all references to a log from the matrix when the log disconnects. add code to strip control code from a console's output before adding it to the log. 2004-09-17 17:35:35 +0100 jfc * common/mplex.c: add checks before freeing resources in mplex_free(). 2004-09-17 17:11:07 +0100 jfc * common/mplex.c: added some error checkinc to mplex_encoder(). check that the channel is readable before starting the reader source in mplex_connect(). * mgr/console.h: added console_get_io_channel(). * mgr/console.c: added console_get_io_channel(). added code to open the correct mplex channel in console_opened(). * mgr/log.c: added console_get_io_channel(). fixed off by one error in log_process(). added code to add a matrix connection to a console in console_connected_fe(). added code to open the correct mplex channel in log_opened(). * mgr/mgr.h: added a Matrix to the Manager structure. * mgr/main.c: initialise the manager's matrix. * mgr/server-connection.[ch]: added server_connection_mplex and renamed the server_msgq tot he more truthful server_connection_mess age_queue(). * mgr/server.[ch]: added server_mplex(). * svr/main.c: initialise the logs tree. 2004-09-17 14:07:32 +0100 jfc * svr/log.c: removed attempts to parse data for logging - this must be done in the manager because the server has no idea which consoles are logging. * mgr/log.c: added code to parse the output from consoles and pass them onto the logs on the servers. 2004-09-16 16:28:30 +0100 jfc * common/svr-message.h: add SERVER_MESSAGE_OPEN_LOG message. * mgr/console.c: check for errors after a SERVER_MESSAGE_OPEN_CONSOLE message. * mgr/log.c: add code for connecting to logs once their servers are available. * svr/console.c: tidy up GError handling. * svr/Makefile.am: add log.[ch] to concsvr's dependencies. * svr/log.[ch]: new files for handling log files. only handles opening the file, so far. * svr/svr.h: add a tree of logs to the main Server structure. * svr/main.c: register message handlers dealt with in log.c. 2004-09-16 11:13:36 +0100 jfc * mgr/console.h: fixed comment typos. * mgr/Makefile.am: added log.[ch] to concmgr's dependencies. * mgr/mgr.h: added events for consoles and logs connecting and disconnect ing * mgr/main.c: added new events and load log configuration. * mgr/console.c: raise events when consoles connect and disconnect. fixed memory leak. * mgr/log.[ch]: new files for handling logs. only loads config data currently. 2004-09-15 11:25:33 +0100 jfc * svr/console.c: fixed debugging output - missing newlines. 2004-09-15 11:21:40 +0100 jfc * mgr/console.c: add code to manage connection of consoles during a EVENT_SERVER_CONNECTS event (and removing this during an EVENT_SERVER_DISCONNECTS event). * mgr/main.c: reverse order of console_load and server_load, connection of consoles is now managed by events so the servers should be loaded last. * mgr/server.c: raise EVENT_SERVER_CONNECTS and EVENT_SERVER_DISCONNECTS where appropriate. * svr/main.c: fixed bug where the manager could not reconnect to the server. 2004-09-14 17:58:58 +0100 jfc * mgr/main.c, mgr/mgr.h: added event management functions associated with a Manager. 2004-09-14 12:37:14 +0100 jfc * common/mplex.c: fixed bug - we wanted bytes not chars. * common/terminal.c: fixed bug in get_bspeed() * svr/main.c: fixed bug in command line parsing that prevented daemon mode from starting. 2004-09-13 17:53:09 +0100 jfc * TODO: added to-do list. * common/message.h: another function prototype that should have has a const argument. * mgr/console.c: add code to connect consoles (incomplete). * mgr/server.[ch]: add server_message_queue() function to retrieve a server's message queue (if available). * svr/console.c: add debugging message. 2004-09-13 15:22:34 +0100 jfc * common/terminal.[ch]: added terminal_open() to deal with opening and configuring terminal lines. * svr/console.c: modified to use terminal_open() above. 2004-09-11 00:31:47 +0100 jfc * common/svr-message.h: updated to result Terminal structure. * common/terminal.c: check arg is a list in terminal_new_from_arg()/ * mgr/console.c, svr/console.c: refactor to use Terminal structure. * mgr/main.c: add missing console.h header. 2004-09-11 00:01:18 +0100 jfc * common/message.h: fixed typo in comment. * common/Makefile.am: added terminal.[ch] to libconc's dependencies. * common/terminal.[ch]: new file - manages terminals - only the data structre and message passing tools at the moment. * mgr/mgr.h: add consoles tree to Manager. * mgr/main.c: load consoles. * mgr/server.c: retry server connection if it fails on connection as well as subsequent failures. * mgr/Makefile.am: added console.[ch] to concmgr's dependencies. * mgr/console.[ch]: new file for managing consoles - only loads config so far. 2004-09-10 16:52:00 +0100 jfc * common/Makefile.am: add retry.c[h] to libconc's dependencies. * common/retry.[ch]: new file for manager retries. this looks good, but perhaps is not very useful in practice. RetryCB should not have to report success for failure immediately, but by later function calls. * mgr/config-file.c: valgrind suggest's i shouldn't call g_markup_parse_c ontext_free(). * mgr/server.c: attempt to reconnect servers if they unexpectedly disconnect. * common/mplex.c: the Mplex should have kept a reference in the IO channel it uses. (this caused segfaults in completely unrelated code - watch out!) 2004-09-10 13:39:16 +0100 jfc * svr/svr.h: added a operation mode to the Server structure * svr/main.c: the concsvr can now run in one of two modes (and not a strange combination of both as before). it eith runs as a daemon, listening on a port. or communicates over std/out. 2004-09-10 12:41:23 +0100 jfc * mgr/config-file.c: improved formatting of output config files, and strip leading and trailing whitespace from values when reading. 2004-09-10 12:19:37 +0100 jfc * mgr/server-connection.[ch]: added server_ssh() to create a connection to a concsvr over an ssh connection. * mgr/server.c: added functionality to deal with the the SERVER_TYPE_SSH server type. 2004-09-09 17:49:03 +0100 jfc * svr/console.[ch]: add console_tree_init() function. 2004-09-09 17:24:06 +0100 jfc * mgr/server-connection.[ch]: remove the name field from a ServerConnecti on. * mgr/server.c: remove the name argument to ServerConnection creation functions. 2004-09-09 17:15:10 +0100 jfc * mgr/server-connection.[ch]: add a callback for when a connection closes. * mgr/server.c: handle callback when a server closes its connection. 2004-09-09 15:28:36 +0100 jfc * common/message.c: rework error quark generation code. * common/message.h: fix typo * mgr/Makefile.am: add server.[ch] to concmgr's dependencies. * mgr/mgr.h: add the config file and change the meaning of servers. * mgr/server.[ch]: new file for handling conc server. the previous code for managing server connections has been moved into server-con nection.[ch] and each Server object now contains a connection. * mgr/server-connection.[ch]: re-factored previous server.[ch] to move certain functionality up into server.[ch]. * mgr/main.c: added coad to load the configuration file and servers. 2004-09-09 02:02:54 +0100 jfc * mgr/Makefile.am: added config-file.[ch] to concmgr's dependencies. * mgr/config-file.[ch]: new file for reading and writing configuration files. 2004-09-08 22:05:25 +0100 jfc * renamed server.[ch] to server-connection.[ch] to reflect that fact that it deal with a connection to a server rather than information about the server itself. 2004-09-08 17:48:44 +0100 jfc * common/svr-message.h: (should have been checked in at the last commit) new file describing messages passed between the manager and servers. 2004-09-08 17:47:21 +0100 jfc 2004-09-08 17:44:43 +0100 jfc * setting svn:ignore property * common/message.h: indicate that the arg passed to MessageHandlerCB function belongs to the caller by making it const. * svr/svr.h: add a tree of consoles to teh main Server structure. * svr/main.c: register console message handlers when service starts. * svr/Makefile.am: added console.[ch] to concsvr's dependencies. * svr/console.[ch]: new files for handling connections to consoles. 2004-09-08 15:26:51 +0100 jfc * common/message.[ch]: added some error handling code, and functions for passing errors as messages. 2004-09-07 18:27:40 +0100 jfc * setting svn:ignore property 2004-09-07 18:24:25 +0100 jfc * setting svn:ignore property. 2004-09-07 16:57:46 +0100 jfc * common/message.[ch]: added message_queue_free function. * common/mplex.[ch]: added a callback to the initialisation function that is called when the mplex is closed. * mgr/main.c: create the server connections tree * mgr/server.[ch]: added server_tree_new() function to create the server connections tree. extended server_build() so that it sets a callback function server_quits (which is currently only a stub). * svr/main.c: extend server_service() to set a callback function for when the manager connection closes. the end_service() function deals with this. 2004-09-07 12:45:12 +0100 jfc * common/message.c: fixed bug where the length of the message was not transmitted. * mgr/server.c, mgr/server.h: added a server_connect function to connect to an already running concsvr. 2004-09-07 11:09:24 +0100 jfc * mgr/main.c, mgr/mgr.h, mgr/server.c, mgr/server.h: make ServerConnectio n structure opaque and move the server related declarations into a separate server.h. 2004-09-06 18:21:06 +0100 jfc * mgr/Makefile.am: added server.c to concmgr's dependencies. * mgr/mgr.h: added headers for server.c (although this should go into a separate server.h - and Server should be an opaque type). * mgr/main.c: added test code to start a local concsvr. * mgr/server.c: new file for managing connections to concsvrs. only does locally exec'ed servers currently. * svr/svr.h: add an explicit GIOChannel to Server type (rather than pulling it out og accept_sock), so that not socket based connection s can work. * svr/main.c: add code to allow --pipe option for communicating over stdin/stdout rather than listening on a socket. should we stop listening to the socket in this case? 2004-09-06 18:15:31 +0100 jfc * AUTHORS, NEWS, README: added as empty files to stop autogen.sh complaining for now. * COPYING, INSTALL: add standard files. 2004-09-06 18:11:16 +0100 jfc * common/mplex.c: add error checking to write during mplex encoding. * common/stdinout.c: g_io_channel_from_errno produces g_warning's that we don't want - encapsulted its functionality in error_from_er rno(); 2004-09-06 14:44:03 +0100 jfc * common/serialize.c: add missing header file. * common/Makefile.am: add stdinout.[ch] to libconc's dependencies. * common/stdinout.c, common/stdinout.h: new files - conver a pair of unix fd's into a GIOChannel (useful for unix pipes). 2004-09-05 19:02:00 +0100 jfc * common/message.c, common/mplex.c, svr/main.c: fixed debugging output. 2004-09-05 18:16:18 +0100 jfc * svr/main.c: add a debug mode * mgr/main.c: ditto 2004-09-05 17:48:18 +0100 jfc * svr/svr.h, svr/main.c: moe from using GConn to GTcpSockets. i'm just not sure what i can use the GCon's GIOChannel for, and the API documentation implies that you can only read and write (not add a watch etc). 2004-09-05 17:20:34 +0100 jfc * common/mplex.[ch]: added an mplex_free function. 2004-09-05 15:55:12 +0100 jfc * common/conc.h: new file for system wide constants. * Makefile.am: add svr subdirectory. * configure.in: add concsvr * svr: new directory - for concsvr. 2004-09-04 14:45:07 +0100 jfc * autogen.sh: gnome-autogen defaults to ludicrously early version of automake, so tell it to use a more modern version. 1.5chosen because the script will accept the widest range of versions with this minimum. * common/gi.h: fix header file path. 2004-09-04 14:23:03 +0100 jfc * mgr/mgr.h: new file defining Manager type for holding the manager's state. * mgr/Makefile.am: adding mgr.h dependency. * mgr/main.c: initial outline of main(). * configure.in: added some magic from gedit's configure.in in the hope that it'll work on gnome-2.6. 2004-09-04 12:12:29 +0100 jfc 2004-09-04 11:58:45 +0100 jfc * initial check in