Wed May 15 14:13:45 2002 David Helder * src/mtp/mtp_server.c (mtp_gconn_func): Initialize name. * src/jmlite/jmlite.c (open_channel): Print resource, not name. * debian.gnome/rules: Use strict poll. Tue May 14 20:36:07 2002 David Helder * src/gtkgnome/ggui_chat.c (chat_new): Initialize chat with callbacks here. * src/gtkgnome/ggui_chat.c (create): And not here. * src/gtkgnome/ggui_chat.c (join): Or here. * src/gtkgnome/ggui_search.c (search_new): Likewise. * src/gtkgnome/ggui_channels.c (channel_new): " Mon May 13 22:51:18 2002 David Helder * src/btp/*: BTP update 2002-05-12 David A Helder * src/jmmsearch/jmmsp.c (jmmsp_packet_cb): Remove debug. Sun May 12 15:03:24 2002 David Helder * src/jmchannel/jmchannel.c (jmchannel_recv): Remove debug. Sun May 12 14:09:49 2002 David Helder * src/*/* (main): Cast argv to const to avoid warning. 2002-05-12 David A Helder * src/gtkgnome/ggui_files.c (add_file_r): Delete path_new. (add_file): Delete sha. * src/gtkgnome/ggui.c: Remove debug output. (main): Initialize the RNG. * src/jmchannel/jmann.c (jmann_set_attr_sha): Remove debug output. * src/util/util.c (is_blankpathname): Use g_strfreev * src/jmchannel/jmchannel.c (jmchannel_add_path_elf): Don't look for escape character before the string. Sat May 11 21:38:17 2002 David Helder * configure.in: Remove ctp 2002-05-12 David A Helder * src/jmchannel/jmchannel.c: (remove_r): Remove announcement from index. * src/gtkgnome/ggui_search.c (on_search_entry_activate): Delete gtk_clist_insert text. (on_search_entry_activate): " (on_search_select_row): " * src/jmchannel/jmchannel.c (get_or_create): break if find directory. This way tokens get freed. 2002-05-11 David A Helder * src/gtkgnome/ggui_files.c (add_url): The file does not need to exist - it just a name. * src/gtkgnome/ggui_channels.c (create): Check pchannel, not channel. * src/gtkgnome/ggui_search.c (save_search_hfunc): Delete elf (save_search_ann_hfunc): " * src/gtkgnome/ggui_channels.c (save_channel_hfunc): " (save_channel_ann_hfunc): " * src/gtkgnome/ggui_files.c (save_file_hfunc): " * src/gtkgnome/ggui_chat.c (save_chat_hfunc): " * src/gtkgnome/ggui_channels.c (ggui_channel_load): Delete URL. Sat May 11 21:34:04 2002 David Helder * configure.in: Remove backend 2002-05-11 David A Helder * src/jmmsearch/jmmsp.c (jmmsp_delete): Delete jmmsp. * src/jmlite/jmlite.c (delete_url_to_obj_hfunc): Delete url (try_exit): Delete hashtables. (open_channel): Delete url * src/mtp/mtp_mirror.c (mtp_unmirror): Remove deleted rendezvous from local mirror's rendezvous list. * src/jmchannel/jmindex.c (jmindex_rewrite): Free buf after updating SHA. * src/mtp/mtp_client.c (mirror_gconn_func): Delete the split strings. * src/jmchannel/jmrindex.c (jmrindex_update): Delete SHA. * src/jmchannel/jmchannel.c (jmchannel_create): Clone URL. * src/jmchat/jmchat.c (jmchat_create): " * src/jmchat/jmchat.c (jmchat_delete): Delete URL properly * src/jmchannel/jmchannel.c (jmchannel_delete): Delete URLs. * src/mtp/mtpclient.c: Add exit() calls. * src/jmmsearch/jmmsp.c (jmmsp_packet_cb): Delete reply URL. * src/jmmsearch/jmmspclient.c (main): Initialize do_cache to FALSE. * src/util/sha_async_test.c (sha_cb): Memory leak fixes. * src/util/sha_cache_test.c: Memory leak fixes. * src/util/sha_cache.c (sha_cache_delete): Delete cache structure. * src/util/elf_test.c: Memory leak fixes. * src/util/elf.c (glue): Don't write over dstp until end of function. It may be equal to the src. * src/*: Cast isspace argument to int * src/jmmsearch/jmmsp.c: Fix packet_cb prototype * src/jmchat/jmchat.c: "p * src/gtkgnome/ggui.c: Predeclare show_file only for Gnome. Sat May 11 17:52:39 2002 David Helder * src/mtp/mtpmirror.c (main): Make sure there is a URL resource. * src/mtp/mtp_mirror.c (mtp_mirror): Assert on resource * README: Update popt URL * src/btp/*: Update BTP * src/util/util.h: Added G_MAXUINT16, G_MAXUINT32 Sun Feb 17 15:09:02 2002 David Helder * src/util/jmgnet.c: Include config.h Wed Feb 13 17:21:58 2002 David Helder * src/{jmlite,jm}/Makefile.am: Fix link order. * src/btp/*: Update BTP to version from last Fall. Repository no longer contains symlinks to emcast. Mon Aug 27 15:49:03 2001 David Helder * src/gtkgnome/ggui_files.c (dnd_parse): Fix for mozilla drop and drag. Thu Jul 12 12:49:43 2001 David Helder * *: Prepare for 0.1.10 Mon Jul 9 12:59:41 2001 David Helder * src/jmlite/jmutil.h: Fix glib header for BSD compile. * doc/C/*: Misc. updates. Add telephone figure. * src/util/sha_async.c: Use idle function for async sha, not IO. This wasn't working in FreeBSD, and is not portable to windows. * src/util/sha_async_test.c: Added Fri Jul 6 16:17:08 2001 David Helder * src/jmchat/jmchat.c (jmchat_rejoin): Use chat->nick. Bug fix. Fri Jul 6 15:46:35 2001 David Helder * src/gtkgnome/ggui.h (JM_DEFAULT_CHANNEL): MC on jm.net * src/gtkgnome/ggui.c: CRP server on junglemonkey.net * src/gtkgnome/ggui_search.c (ggui_search_leave): Reset search fully on leave. * src/gtkgnome/ggui_search.c (search_update): Update toolbar if selected * src/gtkgnome/ggui_chat.c (chat_update): " * src/gtkgnome/ggui.c: Added --disable-restore option. Don't save/load channels, etc if set. * src/jmchat/jmchat.c (jmchat_rejoin): Add self to member list on rejoin. Mon Jun 18 22:49:36 2001 David Helder * src/jmchannel/jmchannel.c: s/name_to_ann/path_to_ann/ * src/jmchannel/jmchannel.c (remove_old_ann): Remove from path_to_ann by path, not name. (Source of seg fault!) * src/jmchannel/jmchannel.c (get_or_create): If quick lookup succeeds, note last update. * src/gtkgnome/ggui_channels.c (ggui_channel_delete): Call ggui_file_leave, like we do in leave. Fri Jun 15 16:42:28 2001 David Helder * doc/Makefile.am (jm.1): Fix paths Thu Jun 14 15:52:55 2001 David Helder * src/jmchannel/jmchannel.c (create_index_and_update): Fix temp name range (can't read #%$%#$ ascii table) * src/gtkgnome/ggui_files.c (create_dir): Remove is ok name check. Thu Jun 14 15:34:46 2001 David Helder * src/gtkgnome/ggui_files.c (update_items): Uncomment GET_DIR, CHANNEL_FROM_DIR. * src/util/elf.c (elf_clone): NULL terminate attr value. * src/util/elf.c (elf_set_attribute_data): " * src/util/util.c (FILE_size): Check return value correctly. * src/jmchannel/jmrindex.c (file_func): Warn if rindex sha is bad, but still process. * src/gtkgnome/jmutil.c (jmutil_init): Set port on btp_iface and mtp_iface after running. * src/gtkgnome/ggui.c (ggui_check_network_config): Use bpeer directly (though above fixes old bug here). * src/crp/crpserver.c (conn_func): Good ports are less than 65k, not 16k. * src/gtkgnome/ggui.c: Move CRP to ask. Thu Jun 14 11:29:05 2001 David Helder * configure.in: Remove divert push/pop stuff. Breaks autoconf 2.5. Wed Jun 13 22:04:16 2001 David Helder * src/util/util.c (is_okfilename): Make is_okfilename more strict. * src/gtkgnome/ggui_preferences.c (apply_network2): Remove setting rvous url, which was broken AFAIK. * src/gtkgnome/jmutil.c (jmutil_init): Get/set MTP port. Set port to this. Warn if not set. * src/gtkgnome/ggui.c (on_jmw_destroy): Save MTP port * src/gtkgnome/jmutil.c (jmutil_init): Move gnome get stuff here. * src/jmchannel/jmrindex.c (jmrindex_update): Redownload if SHA changed. * src/jmchannel/*: Create multiple index files if there are more than N files. Wed Jun 13 14:37:16 2001 David Helder * src/gtkgnome/ggui_search.c (match_update): Show URL. * src/gtkgnome/ggui_search.c (search_delete): Cancel search before deleting group. And unhook vfs. * src/gtkgnome/ggui_search.c (search_delete): Clear search->jmmsp_vfs before deleting, otherwise, it gets deleted twice. * src/gtkgnome/ggui_download.c (download_update): Don't ++ basename. gnet_url_basename gets it right. * src/jmmsearch/jmmsp.h (struct _JMMSPHandler): Added a loopback option * src/jmmsearch/jmmsp.c (jmmsp_send_{query, reply}): Loopback * src/jmmsearch/jmmsp_search.c (jmmsp_search_new): Turn loopback on. We want search to reach our VFS. * src/jmmsearch/jmmsp_vfs.c (jmmsp_vfs_new): Turn on loopback. We want results to reach search. * src/jmmsearch/jmmsp.c (jmmsp_handler_init): Set loopback to FALSE by default * src/gtkgnome/ggui_files.c (ggui_file_remove): Remove files recursively * src/gtkgnome/ggui_files.c (ggui_file_leave): Added * src/gtkgnome/ggui_files.c (file_remove_r): Added * src/gtkgnome/ggui_files.c: Handle dir remove Sun Jun 10 14:36:37 2001 David Helder * src/gtkgnome/ggui_files.c (ggui_file_save): Save at name_to_file, not url_to_file * src/jmchannel/jmchannel.[hc]: Remove show_index stuff. Since the index is in the kids list, any gui that directly accessed the kids list (i.e. most) would have to check anyway. * src/jmchannel/jmrindex.c (jmrindex_delete): Delete SHA. * src/gtkgnome/ggui_files.c (load_file_func): Use apath, not path, for announcement * src/gtkgnome/ggui_files.c (load_file_func): Dir goes to curl, not url * src/gtkgnome/ggui_files.c (ggui_file_show): Freeze/thaw clist on show. Fri Jun 8 19:53:49 2001 David Helder * src/gtkgnome/ggui.c: Kill CRP check on exit * src/gtkgnome/ggui.c (ggui_activate): Do nothing if local file. * src/gtkgnome/ggui_download.h (ggui_download_have): Added * src/gtkgnome/ggui_*.[ch]: Serialization rewrite. Gnome-config doesn't support large enough values. Blah. * src/gtkgnome/ggui.c (ggui_load_elf): Added * src/gtkgnome/ggui.c (ggui_save_hashtable): Added * src/util/elf.h: Added more consts * src/util/elf.c (elf_read_list_path): Added * src/util/elf.c (elf_write_list_file): Added * src/gtkgnome/ggui_files.c (on_files_button_press): Don't download files I have. * src/util/sha_cache.[hc]: Remove get_vec, set_vec in favor of read/write * src/util/sha_cache_test.c: " * src/gtkgnome/ggui_channels.c: Set MTP server * configure.in: Poll check improvements * acconfig.h: * src/util/poll.h: Added - expose gnu_poll * src/gtkgnome/ggui.c: Set poll manually * src/jmlite/jmlite.c: " Thu Jun 7 23:08:49 2001 David Helder * configure.in: Add poll back * acconfig.h: * src/util/poll.c: * *: s/glib-1.2// * *: Update copyrights * src/gtkgnome/ggui_{channel, chat, search}.c: Show dialog if exists * src/gtkgnome/ggui_files.c (ggui_file_announce_update): Fix percent handling. * src/gtkgnome/ggui_files.c (update_items): " * src/gtkgnome/ggui_search.c (ggui_search_update): Added * src/gtkgnome/ggui_download.c (download_update): Call above. * src/jmmsp/jmmsp_cache.[hc]: Keep a set of replies in the cache. Don't add reply we already have. * src/jmmsp/jmmsp.[ch] (jmmsp_reply_hash): Added * src/gtkgnome/ggui_search.c (search_cb): Ignore matches we already have. * src/gtkgnome/ggui_search.c: Use _our_ vfs on create, etc. * src/gtkgnome/ggui_channels.c (channel_update): Call ggui_file_show as appropriate * src/gtkgnome/ggui_channels.c (on_channels_unselect_row): It's ok if get_shown is inconsistent with selected_channel. This happens when we leave a channel then unselect the channel. * src/gtkgnome/ggui_download.c (download_update): It's ok we update a download not shown. Just ignore it if we do. * src/gtkgnome/ggui_files.c: Enable leave icon if shown channel. Wed Jun 6 23:58:37 2001 David Helder * src/gtkgnome/*: Saving done. Now debugging downloads. * src/icons/icons.h: Added more tony icons * src/jmchannel/jmchannel.c (gc_cb): Don't gc root * src/jmchannel/jmchannel.c (remove_old_ann): Rename * src/jmchannel/jmchannel.c (get_or_create): Fixed another path building bug * src/jmchannel/jmann.c (jmann_make_path): Added * src/jmchat/jmchat.[hc] (jmchat_setup): Added * src/jmmsp/jmmsearch.[hc] (jmmsearch_setup_full): Added * src/jmmsp/jmmsp.[hc] (jmmsp_setup): Added Wed Jun 6 13:58:49 2001 David Helder * src/gtkgnome/*: Added Tony's icons * src/icons/*: Icon cleanup * doc/C/authors.sgml: Added Tony * src/gtkgnome/ggui_files.c: More saving work Wed Jun 6 00:09:00 2001 David Helder * src/gtkgnome: Work, work, work. * src/jmlite/jmlite.c (delete_url_to_obj_hfunc): Fix search URL * src/jmchannel/jmchannel.c (get_or_create): Check if done in dirs_only mode at top of loop. Dir may be /. * src/jmchannel/jmchannel.c (get_or_create): Add extra token if no / * src/jmchannel/jmchannel.c (get_or_create): Null-terminate tkn. * src/jmchat/jmchat.c (jmchat_rejoin): Fix fail check * src/jmchannel/jmchannel.c (jmchannel_rejoin): " * src/jmchannel/jmchannel.c (error_cb): Delete BTP * src/jmchannel/jmchannel.c (jmchannel_setup): Added * src/util/sha_async.c (gnet_sha_new_file_async): Make path const * src/util/util.c (file_exists): Use stat, not fopen. * src/util/util.c (file_size): " * src/jmchannel/jmchannel.c (jmchannel_create): Set is_local * src/util/jmgnet.c (gnet_url_is_scheme): Added * src/jmchannel/jmchannel.c (gc_r): Check kids before checking if local. * src/mtp/mtp_mirror.c (mtp_unmirror): Return if mirror NULL. * src/gtkgnome/ggui_channels.c (ggui_channel_check_path): Added * src/gtkgnome/ggui_channels.c (ggui_channel_get_ann): Added * src/gtkgnome/entry_dialog.c (entry_dialog_show): Added * src/jmmsp/jmmsp.h (jmmsp_is_up): Now btp != NULL like other modules. * src/util/util.c (strunesc): Pass esc, since not all characters are escaped. * src/jmchannel/jmchannel.c (jmchannel_delete): Renamed back * src/jmchannel/*: s/fullname/path * src/jmchannel/jmchannel.c: Create root announcement always. * src/jmchannel/jmchannel.c (send_remove_r): Added. Send removes on leave. * src/jmchannel/jmchannel.c (jmchannel_add_path_elf): Unescape name properly. Mon Jun 4 23:38:22 2001 David Helder * src/Makefile.am: Don't compile backend Mon Jun 4 23:18:09 2001 David Helder * src/gtkgnome/*: Nothing uses the backend. Still much work to do... * src/util/jmgnet.c (gnet_url_basename): Added * src/jmmsp/jmmsp.h (jmmsp_is_down): Added is_down macro * src/jmmsp/jmmsearch.h (jmmsearch_is_down): " Sun Jun 3 19:34:41 2001 David Helder * src/gtkgnome/: Chat no longer use the backend * src/gtkgnome/entry_dialog.[hc]: Added * src/jmchannel/jmchannel.c (_jmchannel_delete): Rename for easier integration Sat Jun 2 21:38:32 2001 David Helder * src/jmlite/jmlite.c: No longer uses backend. (create_dir not implemented yet.) * src/jmlite/jmutil.[ch]: Added. * src/backend/backend_directory.c: Include sys/types * src/jmchannel/jmchannel.c (jmchannel_add_elf): Fix fullname creation. * src/gtkgnome/ggui_config.c: Remove delete_vector (use GLib g_strfreev) * src/gtkgnome/*: Added notes Sat Jun 2 14:54:22 2001 David Helder * *: Remove jmsearch Sat Jun 2 14:45:50 2001 David Helder * src/jmchannel/*: Debug cleanups * *: Source reorganizing / Repository hacking (should be ok) Fri Jun 1 15:59:53 2001 David Helder * src/jmchannel/*: Work * src/mtp/mtp_server.c (mtp_server_new): Check interface before setting port. This allows NULL interface. * src/util/elf.c (elf_new_vformat): Allow name to be NULL. * src/util/elf.[hc] (elf_clone): Added Thu May 31 23:06:28 2001 David Helder * src/jmchannel/*: Moving backend stuff here * src/Makefile.am: Added jmchannel * src/util/elf.c (elf_{set, get}_name): Added * src/util/elf.[hc]: Added lots of consts * src/jmchat/jmchat.[hc]: Remove is_up (now macro). Add is_down macro. Thu May 31 16:34:42 2001 David Helder * macros/autogen.sh: Run gettextize if no intl Thu May 31 15:35:21 2001 David Helder * src/mtp/mtp_client.c (mtp_client_get_file): Added. * src/mtp/mtpclient.c: Added test * src/mtp/mtp_mirror.c (mtp_mirror_path): Added. * src/mtp/mtpmirror.c: Added test * doc/C/Makefile.am: Fixes for manual file rename. * src/backend/backend_file.c (backend_file_update_index): Don't download if we have the file and the SHA changed - assume the client will keep us up-to-date as appropriate. * src/backend/backend_announce.c (backend_announce_remove): Update the index file soon if there was a change. * src/backend/jmfile.c (jmfile_append): Don't unmirror the file. * src/backend/backend_announce.c (backend_announce_add): Unmirror the file before calling deley_send_update. * src/backend/jmp.c (jmp_read_announcement): Save index channel. * src/util/jmgnet.[hc]: Compile only if we don't have gnet_sha_clone. * configure.in, acconfig.h: Remove SA_LEN check (now in GNet). * src/backend/backend_file.c (recv_func): Use client->length on start, not length. * src/backend/backend_file.c (backend_file_create): Send announcements on sha cache hit. * src/backend/backend_file.c (have_sha): Added * src/backend/jmfile.c (read_func): Open file for append if index, read if not. Before we opened for write - oops. * src/ggui_menu.c: Added more warnings * src/ggui*: Finished up toolbars. Still need tweaking (and better icons). * src/util/elf_test.c: Added (from elf.c) * src/util/sha_cache_test.c: Added (from sha_cache.c) * src/backend/jmp.c (jmp_read_announcement): Initialize url to NULL. We may not get one. Mon May 28 20:11:00 2001 David Helder * src/ggui.c (on_jmw_notebook_switch_page): Added. * src/glade/*: Added toolbars * src/util/jmgnet.[hc]: Add. Move gnet_sha_clone here. * src/backend/backend_file.c: Use SHA cache * src/ggui.c (ggui_{save,restore}_sha_cache): Add * src/backend/backend.c: Add backend_sha_cache * src/util/sha_cache.[hc]: Add Mon May 28 15:47:03 2001 David Helder * src/ggui_menu.c: Fix url creation logic * src/ggui_channels.c: Added basic channel saving. Restored channels are not announced. * src/util/util.c (stresc, strunesc): Added * src/ggui_channels: Use hfunc and bookmared field for bookmarks. Less bookkeeping. * src/ggui.h (_GuiData): Added bookmarked field * src/backend/backend.c (backend_hfunc): Added * src/backend/jmfile.c (jmfile_open): Open read-only for safety. * src/backend/backend_announce.c: Rewrite delay code so announcements send immediately, but not at a rate greater than R. * src/jmchat/jmchat.c: " * src/jmchat/Makefile.am: Add jmchat_debug * src/ggui_search.c (ggui_search_is_down): Fix logic error. Fri May 25 16:37:20 2001 David Helder * src/jmlite.c (gui_remove): Fixed. Assumed it was always a chat. * src/backend/*: More index file work. * src/util/elf.c (elf_read_list): Advance buffer/length properly. * src/jmmsp/jmmsp_debug.h: Fixed macro * src/jmmsp/backend_debug.h: Fixed macro * src/jmchat/jmchat_debug.[hc]: Added * src/ggui.c: Rebuilt trashed file. Fri May 25 11:39:08 2001 David Helder * src/backend/jmp.c: Get/set is_index attribute on indexes Thu May 24 23:19:15 2001 David Helder * src/mtp/mtpclient.c (file_func): Clean ups * src/mtp/mtpmirror.c (read_func): Fix offset in memcpy * src/mtp/mtp_server.c (mtp_gconn_func): Allocate buffer for read. I'm not sure if this was right before - we potentially deleted memmaped space. * src/mtp/mtp_types.h: ReadFunc return guint * src/mtp/mtp_server.c: conn/timeout exchange for safty. * src/backend/backend_announce.c: Debugging.. * src/crp/crp.c (crp_check): gnet_conn_connect may destroy conn. So set timeout before connect, not after. This is a problem inherent in the inet async, sorta. * src/backend/jmp.c (jmp_write_announcement): Move jmann's asserts down. Thu May 24 17:27:07 2001 David Helder * src/ggui_channels.c (ggui_channels_init): Use direct hash, not int hash. Fixes channel selection bug. * src/jmmsp/jmmsp_debug.[hc]: Added * src/jmchat/jmchat.c (jmchat_join): Bug: Garbage collection happening too often. * src/jmchat/jmchat.c (update_cb): Bug: Updates could be sent too frequently. Assumed timer was 3 minutes, but have been much shorter. * src/jmchat/jmchat.c (set_update_timer): Added * src/jmchat/jmchat.c (hasten_update_timer): " * src/backend/jmfile.c: Move a lot of stuff here * src/backend/backend_file.c: " * src/backend/backend_announce.c: Support for index files * src/mtp/mtp_types.h: MtpLocalMirrorReadFunc now passes buffer. I'm moving away from memmaping now that files can change. * src/mtp/mtp_server.c: * src/mtp/mtp_mirror.c (mtp_mirror): Add length mismatch warning * src/mtp/mtp_mirror.c (mtp_unmirror): Delete all server conns downloading the file * src/mtp/*: s/GList/GSList * src/ggui.c: Use INT for port arg (did this work?!) * src/jmlite.c: " * src/mtp/mtpmirror.c (main): " * src/mtp/mtprendezvous.c (main): * src/jmlite.c: Exit better. * src/ggui_search.c: Hook up jmmsp_vfs * src/jmmsp/jmmsearch.[hc]: Allow create/join to specify cache, search, or vfs. Tue May 22 23:23:18 2001 David Helder * src/backend/jmobj.c (jmobj_new): Handle / in name right * src/util/util.h: Added more timer macros * src/jmchat/jmchat.[hc]: Send update on join (but don't send updates faster than a certain rate). * src/*: Integreated jmmsp. Still need to add files to VFS. * src/jmmsp/jmmsp.[hc]: Add ErrorUp function * src/jmmsp/jmmsearch.[hc]: Added * src/jmsearchserver.c, src/jmsearch: No longer used. Mon May 21 17:18:55 2001 David Helder * configure.in: Require 1.1.0 Mon May 21 17:17:30 2001 David Helder * src/jmmsp/*: Completed and debugged * src/jmchat/jmchat.c (chat_reset): Don't leave NULL btp. * src/util/util.[hc]: Remove launch, search_path, sleep, other unused functions * src/backend/*: Clean-ups * src/*: Clean-ups * COPYING: Fix copyright holder (was me, should be Regents) Mon May 14 14:12:46 2001 David Helder * *: Now compiles and runs. Not fully tested. Fri May 11 17:56:51 2001 David Helder * src/*: Major restructing. Most everything is broken. Fri May 11 17:29:27 2001 David Helder * src/*: Major restructing. Most everything is broken. Sun Mar 25 22:38:02 2001 David Helder * src/ctp*: Old CTP work. * src/mtp_server.c (mtp_server_new): Fix new Gnet issue Sat Feb 17 16:40:54 2001 David Helder * src/sha_async.[ch]: Moved from GNet. Sun Nov 19 22:36:13 2000 David Helder * src/elf.h: elf_read_node exposed, gives bytes_read. * src/*: Continue CTP work. Debugged server. Started client. Thu Nov 16 21:47:28 2000 David Helder * src/*: Continued CTP work * src/elf.c (elf_set_attribute_data): Added. * src/globals.h (DEBUGFP): Added * src/*: Updated to include debug_flags * src/util.h: Added millitime() Thu Nov 16 17:42:01 2000 David Helder * src/*: Continued CTP work Thu Nov 16 09:59:35 2000 David Helder * src/*: Continued CTP work Wed Nov 15 17:00:27 2000 David Helder * src/*: Continued CTP work Wed Nov 8 17:00:05 2000 David Helder * src/*: Continued CTP work Sat Nov 4 17:28:16 2000 David Helder * src/*: Fixed so would compile with ELF changes Sat Nov 4 17:25:34 2000 David Helder * src/ctp*: Started work on CTP. Copied BTP and are cleaning up. * src/elf.c (elf_read): elf_read -> elf_read_list, elf_read now reads one node. Thu Nov 2 15:36:13 2000 David Helder * src/*: Update to use GNet 1.0.5 * configure.in (CFLAGS): Require GNet 1.0.5 (UNRELEASED). * src/sha.[ch], md5.[ch], jmgnet.[ch]: Moved to GNet 1.0.5 * src/{b_}util.c: Move b_util_timer* to util here. Rename rand_timer* Wed Nov 1 13:49:40 2000 David Helder * src/pack.[ch], hashcheck.c: Moved to GNet * jmmspclient.c: Added. For testing, etc. * jmmsp_search.c: Added. Handles searching. * jmmsp*: More hacking Tue Oct 31 20:10:44 2000 David Helder * src/jmmsp.[hc], jmmsp_cache.[ch], jmmsp_vfs.[ch]: Added. JMMSP is the new multicast searching protocol to replace JMSP. Still need jmmsp_search. Wed Sep 27 17:04:48 2000 David Helder * src/pack.hc, packtest.c: Test cases, debugging Mon Sep 25 13:34:21 2000 David Helder * src/pack.h: Added. This will go into GNet anyway. Sat Aug 12 11:04:36 2000 David Helder * src/elf.[hc]: Added vararg-format functions, get/set type functions * src/jmchat.[hc]: Implement UPDATE, SAY-emote * src/ggui_chat.c: " Fri Aug 11 17:39:35 2000 David Helder * Makefile.am (EXTRA_DIST): Added HACKING Fri Aug 11 17:35:27 2000 David Helder * src/backend.c (garbage_collect_hrfunc): Oops. Don't call backend delete. Fri Aug 11 11:22:21 2000 David Helder * src/ggui_chat.c (chat_info_cb): Don't print time. Thu Aug 10 16:50:07 2000 David Helder * src/ggui_search.c (ggui_search_remove): Remove g_print * src/jmp.[hc]: s/jmpio/jmp * src/elf.[hc]: s/jmp/elf Thu Aug 10 13:31:51 2000 David Helder * src/backend.c (garbage_collect_hrfunc): Remove file from hashtable if times out. Wed Aug 9 17:32:16 2000 David Helder * src/jmpio.c (jmpio_read_announcement): Don't change URL if it changed. * src/util.c (strtoreadable): Added Tue Aug 8 18:47:54 2000 David Helder * src/ggui.c (ggui_clist_update_row2): Fixed another. Tue Aug 8 18:37:09 2000 David Helder * src/ggui.c (ggui_clist_update_row2): Initialize old_*. GTK won't for us if get_pixtext fails. Tue Aug 8 12:35:07 2000 David Helder * src/glade/jm*.glade: Set hpaned position to 100. Works better for libglade 0.14 Tue Aug 8 12:07:20 2000 David Helder * src/ggui_channels.c: Save selected file when changing shown channel. * src/ggui_files.c (ggui_files_get_shown): Added. * src/util.c (remove_by_value_hrfunc): Added. * src/ggui_files.c (ggui_files_show): Add back pixmap first. This will make adds look a little better. * src/ggui_search.c (ggui_search_update): Print status when downloading file. * NEWS,FAQ,AUTHORS: Generate from SGML files * macros/autogen.sh: Add NEWS, AUTHORS, FAQ files if missing. Thu Aug 3 15:13:29 2000 David Helder * configure.in: Allow for OpenSSL 0.9.4 (so now check for EGD too). * configure.in: Check for broken Linux bind. * debian[.gnome]/docs: Added hacking Wed Aug 2 23:37:12 2000 David Helder * configure.in, acconfig.h: Added tests for OpenSSL Wed Aug 2 14:20:23 2000 David Helder * src/ggui.c: Catch SIGINT and SIGPIPE. * src/jmsearchserver.c (sig_pipe_cb): Catch SIGPIPE. * src/jmlite.c (sig_pipe_cb): Catch SIGPIPE. Fri Jul 28 16:49:37 2000 David Helder * src/jmlite.c (tilde_expand): Added. Now do ~ expansion when adding files and directories.. * src/jmlite.c (readline_cb): Added "include" command * src/jmlite.c (start_backend): Fix setting rendezvous locally flag. * src/jmsearchserver.c: Don't index Monkey Central by default. * src/ggui_search.c (on_search_entry_activate): Say we're searching when we're searching. Fri Jul 28 14:31:35 2000 David Helder * src/jmsearchserver.c: Catch ctrl-C and shutdown properly. * src/backend.c (backend_shutdown_hfunc): Send remove announcements for searches too. * src/jmlite.c (readline_cb): Implemented create_chat and remove_chat * src/jmchat.c: Allow nickname to be NULL. * src/b_conn_io.c (read_cb): Make sure read watch set. Set read watch to 0 if there's an error. * src/b_conn_io.c (write_cb): Make sure write watch set. Fri Jul 28 13:13:11 2000 David Helder * src/backend_file.c: Print strerror when there's an error * src/sha.c (dispatch_sha): Set reads to low priority. Fri Jul 28 11:17:56 2000 David Helder * AUTHORS: Added Björn Ganslandt for de translation * configure.in (ALL_LINGUAS): Added de Thu Jul 27 17:06:17 2000 David Helder * src/jmlite.c: Many new commands. Catchess ctrl-c now. Thu Jul 27 10:23:19 2000 David Helder * src/jmlite.c: jmlite in process of being re-writen. Now has console interface. Can write interpreted scripts with it too. Tue Jul 25 09:55:13 2000 David Helder * NEWS, README: Clean-ups Mon Jul 24 16:43:34 2000 David Helder * src/ggui_files.c (ggui_files_remove): If the shown file is removed, then reset everything. * src/jmfile.h (_JMFile): Added announcees field. * src/backend_announce.c (backend_announce_delete): Added. Delete necessary JMAnn's. Does not send any announcements. * src/backend.c (backend_delete): Call backend_announce_delete Mon Jul 24 10:19:09 2000 David Helder * src/glade/preferences_dialog.glade: Fixed dialog title. * FAQ: Clean ups Fri Jul 21 17:21:26 2000 David Helder * HACKING: Added note on FreeBSD autogen. Fri Jul 21 13:09:00 2000 David Helder * src/jmgnet.c (jm_gnet_inetaddr_list_interfaces): Include config.h. Use ifr_name, not name. Fri Jul 21 12:54:43 2000 David Helder * src/jmgnet.c: Use new interface function. * src/ggui_preferences.c: " Fri Jul 21 12:51:39 2000 David Helder * configure.in: Include types.h before sockets.h Fri Jul 21 12:41:12 2000 David Helder * configure.in: Upped version (unreleased) * NEWS: Named next release "Magilla Gorilla" Fri Jul 21 12:08:55 2000 David Helder * src/jmgnet.c (gnet_private_inetaddr_list_interfaces): Added. Fixed for BSD. * configure.in: Added check for sockaddr.sa_len Thu Jul 20 22:06:03 2000 David Helder * src/ggui.c: Redid network config auto-detect * src/jmgnet.c (jm_gnet_inetaddr_get_interface_to): Added. Uses connected UDP socket to find proper interface. * src/jmgnet.c (jm_gnet_inetaddr_get_internet_interface): Just gets list and finds interface from that. Wed Jul 19 18:29:36 2000 David Helder * doc/C/jm.sgml: Noted that FAQ and Quickstart were out of date. * src/ggui.c (main): Improve warning messages. Trying to improve firewall and NAT detection, etc. * src/ggui.c (main): If network error, then don't try to start the backend. * src/jmgnet.c (jm_gnet_inetaddr_get_internet_interface): Use jm_gnet_inetaddr_new_nonblock. Wed Jul 19 17:10:30 2000 David Helder * src/ggui.c (ggui_check_network_config): Added. Uses CRP. * src/crp*: Check both port and hostname. * README: Rewrote quickstart * src/util.c (mkdirr): Check EEXIST when try to create second time. Problem was directories that ended with / were created, but we claimed they weren't. * src/backend_file.c (backend_file_setup_path): Don't add extra directory separator. * src/backend_channel.c (channel_packet_cb): Don't freeze GUI when we receive a packet. Less flicker now. Tue Jul 18 17:47:43 2000 David Helder * src/backend_file.c (sha_cb): Update GUI after getting SHA. * src/jmfile (JMAnn): Added new announcement type * src/backend_announce: Keep list of announcements. Send spread over time - not in bursts * src/sha.c: Only allow 8 async SHA's at once. Maybe this should be moved elsewhere... * src/backend_directory.c (backend_files_create): Added a couple missing closedir's. * src/jmfile.c (jmfile_link): Don't link directories to NULL or multiple parents. Tue Jul 18 11:21:34 2000 David Helder * src/ggui_chat.c (my_text_insert): Scroll bars now work like they used to. I don't know how to make them work like I want them too. Mon Jul 17 17:18:54 2000 David Helder * AUTHORS: Added Laurent Alacoque for French translation. * src/jmgnet.c (jm_gnet_inetaddr_is_canonical): Added. * src/sha.c (gnet_sha_new_file_async): Added. * src/util.c (filename_size): Added * src/sha.c (gnet_sha_hash): Added * src/md5.c (gnet_md5_hash): Added * src/mtp*: Clean-ups, commenting * src/backend_announce.c (backend_announce_remove): Fix typo. Were we incorrectly removing private channels? * src/mtp_mirror, etc: Call up to get each piece of file. * src/backend_file: Updated. * src/jmfile: Added munmap_timer. * src/mtp_mirror.c (mirror_gconn_func): Return FALSE after disconnecting. Fri Jul 14 18:04:01 2000 David Helder * HACKING: Added. * src/util.c (my_error): Added. Calls exit - does not dump core. * src/*: Use my_error, not g_error. Thu Jul 13 13:03:06 2000 David Helder * src/ggui_chat.c (my_text_insert): ave point before inserting text. Then it won't scroll down when someone types. * configure.in: Check for libpopt only if I don't have Gnome. Look for poptPrintUsage since people seem not to have it. * src/ggui.h, etc: Include popt-gnome if Gnome enabled, not popt.h. Wed Jul 12 18:04:52 2000 David Helder * src/ggui_chat.c (on_chat_select_row): Set point to the end of the chat when you switch. * src/ggui_files.c (ggui_files_init): Set auto-sort. * src/ggui_{prefs, properties}.c: Show a nice message if there's a libglade problem. * src/ggui_properties.c (ggui_properties_show): s/assert/return_if_fail. Tue Jul 11 19:07:39 2000 David Helder * src/crp*: s/kk/crp. File renaming. CRP = Connection Reflection Protocol. Mon Jul 10 17:17:32 2000 David Helder * src/kk*: Server now checks hostname too. Returns BAD_HOSTNAME if hostname bad, BAD_PORT if port bad. * src/jmgnet.c (jm_conn_new_inetaddr): Added. Fri Jul 7 18:12:06 2000 David Helder * src/kk*: Added. Tests listening port reachability from outside a firewall. Fri Jul 7 17:58:21 2000 David Helder * src/scheduler.c: Removed dependency on globals. * src/poll.c: Move config.h before broken poll * configure.in: Fix note on broken poll Thu Jul 6 13:36:44 2000 David Helder * src/mtp_mirror.c (mirror_gconn_func): Handle TIMEOUT case. * Makefile.am (SUBDIRS): Build doc directory last * FAQ: s/e2em/em * src/backend_file.c (file_func): Set output file to the proper length before mmaping. * src/backend_file.c (file_func): Don't mmap PRIVATE. * src/backend_file.c (file_func): Call msync after downloading. * src/b_conn_handler.c (b_conn_handler_have): Added. * src/b_conn_handler.c (b_conn_handler_get): s/guint8/gint. Should fix pinging warning. * configure.in: If poll broken, just say they're using Linux. * configure.in: Add --enable-build-docs to build docs from scratch. Wed Jul 5 19:40:00 2000 David Helder * src/backend_announce.c (backend_announce_schedule_updates): Added * src/backend_channel.c (channel_packet_cb): Schedule updates again when join channel. * src/mtp_server.c: Use jm_conn_timeout. Other files should be ok for now. * src/jmgnet.c (jm_conn_timeout): Added. Tue Jun 27 15:31:45 2000 David Helder * *: Released 0.1.7 Tue Jun 27 11:16:03 2000 David Helder * macros/autogen.sh (conf_flags): Removed --enable-maintainer-mode Thu Jun 22 18:09:13 2000 David Helder * src/ggui_preferences.c (apply_network2): Set the protocol right on the rendezvous URL. Thu Jun 22 18:01:53 2000 David Helder * src/backend.c (backend_add): Take name as param. * src/ggui_search.c (jmsearch_cb): Create jmfile using name * src/jmsearchserver.c (conn_func): Don't delete as_in twice. * src/jmsearch.c (jmsearch_conn_func): Read the name. * src/jmsearchserver.c (conn_func): Return name of file. Thu Jun 22 17:23:42 2000 David Helder * src/jmsearch.c (jmsearch_search): Call connect on the connection after creating it. * src/ggui_search.c (jmsearch_cb): Use the URL from the result, not the URL of the search server. Thu Jun 22 14:07:28 2000 David Helder * src/mtp_types.h (_MtpRendezvous): Added requests_pending field. * src/mtp_mirror.c (mirror_gconn_func): Use requests_pending to determine when to close connection. Before, we wrote a bunch of stuff and then closed the socket, but the server never got it. Now we make sure we read the responses. * src/backend_file.c (backend_file_create): Delete URL once on failure, not twice. * src/glade/preferences_dialog.glade: Updated GTK part * src/backend_file.c (backend_file_create): Fix SHA URL ('A' was missing) * src/btp_packet.c (btp_packet_new_info_reply_children): Write connections, not BtpNodes (I think the only reason this worked before we the two structure's happened to have the same fields and layout, I think). * src/b_conn_connect.c (b_conn_connect): Don't assert we are connected - we shouldn't be. Tue Jun 20 08:23:05 2000 David Helder * src/b_*: Got to compile. Moved some packet parsing to b_packet. Added const's to b_util. Fri Jun 16 19:20:12 2000 David Helder [DOES NOT COMPILE] * src/sha.c (gnet_sha_copy_string): Added * src/jmfile, jmpio.c: Added SHA * src/ggui_properties.c (ggui_properties_update): Added SHA, fixed memleak * src/jmgnet.c (jm_url_get_nice_string): Fixed bad strconcat. * src/jmgnet.c (jm_gnet_read_async): Rewrote this and associated functions... * src/ggui_preferences.c (apply_files): Save Rendezvous URL * src/mtp_types.c (mtp_troop_remove): Decrement mirror count when removing a mirror. * src/mtp_*.h: s/INFO_REQUEST/GET_INFO * src/backend.c (backend_init): mtp_server is type BOTH, but local create only. * src/jmgnet.c (jm_gconn_new): Create inetaddr from hostname. This works around issue in GNet. * src/jmgnet.c (jm_gconn_connect): Use inetaddr if available, then hostname. * src/mtp_client.c (mirror_file_conn_func): Assume upper level delete client when last part passed up. * src/jmfile.c (jmfile_get_percent_complete): Don't divide by 0. * src/ggui.c (main): Negate "Use Default MTP port" * src/mtp_server.c (mtp_server_delete): Check if tables exist before deleting. * src/backend.c (backend_shutdown): Don't shutdown url_to_file if not up. * src/ggui_config.c (ggui_config_get_int): Fix bad default. * src/ggui_config.c (ggui_config_get_bool): " * src/ggui_preferences.c (initialize_files): Fix label on port button. * src/ggui_chat.c (ggui_chat_load_bookmarks): Skip bookmarks that are empty * src/ggui_channels.c (ggui_channels_load_bookmarks): " Mon Jun 12 16:12:43 2000 David Helder * src/jmgnet.h: Changed license/header to GNet's LGPL. * src/md5,sha: s/DIGEST_SIZE/HASH_LENGTH * src/sha.h (GNET_SHA_DIGEST_SIZE): Fixed digest size. Mon Jun 12 10:40:17 2000 David Helder * src/sha.[hc]: Added * src/md5.[hc]: Added * src/hashcheck.c: Added * src/ggui*: Now uses MTP for files, other cleanups/fixes * src/backend*: " * src/mtp_server.c (mtp_server_new): Can set if troops can only be created locally. This prevents people from using your host as a rendezvous for files you aren't offering. * src/mtp_types.c (mtp_troop_update/remove): Now takes hostname as argument. * src/mtp_server.c (mtp_server_new): Now takes hostname as arg. * src/mtp_client.c (mirror_file_conn_func): Don't allow sender to send more than the length of the file. * src/jmgnet.c (jm_url_new): Cleaned up reading hostname * src/mtp_mirror: Always add/remove mirror from local server. Fri Jun 9 16:58:08 2000 David Helder [BROKEN] * src/mtp_mirror.c (mtp_mirror): Now uses GURL * src/jmgnet.c (jm_url_new): Properly parse URL if the protocol isn't specified. * src/jmgnet.c (jm_url_equal, jm_url_hash): Added * src/jmgnet.c (jm_url_new_fields): Added * src/backend.c (backend_init): Bug fix: Pass port to btp_init, not BTP_PORT, and force_port, not FALSE. * src/mtp_server.c (mtp_gconn_func): Mirrors now reply to GET_MIRRORS (but not MIRROR/UNMIRROR). * src/mtp_server.c: Set TOS to LOWCOST when tranfering file. Fri Jun 9 00:12:08 2000 David Helder * configure.in: Added big warning about poll. * src/mtp_client: Implement get_file. Some debugging of other stuff too. * src/mtp_mirror.c (mtp_mirror, unmirror): Fixed bad strcmp's. * src/mtpmirror.c: --rendezvous has mirror act as rendezvous also. * src/mtp_server,mirror.c: Always maintain rendezvous data structures - in case we want to turn it on. * src/mtp_server.c (mtp_server_set_type): Added. * src/jmgnet (jm_gconn_is_connected): Added. Thu Jun 8 16:59:29 2000 David Helder * src/mtp_*: Implemented get mirror and get file from mirror. Still buggy. * src/jmgnet.c (jm_gconn_new): Set ref count to 1. * src/jmgnet.c (gnet_read_async_read_cb): Fix bug with readinto thinking like there's an error and stuff when there really isn't, you know. * src/jmgnet.c (jm_gconn_read_cb): Yeah, and EOF might return data - this might be dumb. Thu Jun 8 00:02:43 2000 David Helder * src/mtpclient.c: Added Thu Jun 8 00:01:36 2000 David Helder * src/mtp_client: Implemented get mirrors and info request. * src/mtp_mirror.c (mirror_update_cb): Send port on updates. * src/util.c (make_url): s/snprintf/g_snprintf * src/jmgnet.c (jm_gnet_url_new): Added JMGURL. Implemented. * src/jmgnet.c (jm_gconn_new): func may be NULL. * src/jmgnet.c: Added reference count to connection. Wed Jun 7 09:30:09 2000 David Helder * src/mtp_client.[hc]: Fixing/implementing... Mon Jun 5 23:11:01 2000 David Helder * src/mtp_server.[ch], mtp_mirror.[ch]: Finished (mostly) and tested (mostly). * src/mtprendezvous.c, mtpmirror.c: Simple servers for testing - mostly useless for other purposes. * src/jmgnet.c (jm_gconn_write_cb): Check queued writes before calling callback. Mon Jun 5 16:05:09 2000 David Helder * src/mtp_*: Continued work on... * src/jmgnet.c: Moved max_length, timeout to conn IO functions parameters. Allow multiple pending writes, even if in the process of connecting. Sun Jun 4 16:45:53 2000 David Helder * src/mtp_*: Continued work on... * src/util.c (parse_url): Allow protocol to be left off. * src/jmgnet.[hc]: Added GConn and GServer, higher abstractions of client, server, and connection. Added jm_gnet_readinto_async. Tue May 30 12:40:00 2000 David Helder * src/ggui_chat.c (on_chat_select_row): Don't enable chat part if not on chat. * src/jmchat.c (jmchat_leave): Don't require the chat to be non-local. * src/ggui.c (main): Call ggui_chat_load_bookmarks. Fixes bug where bookmarks weren't shown. Mon May 29 22:03:35 2000 David Helder * src/scheduler.h: Added. * src/b_conn*.c: Almost hooked scheduler up to writing. Not sure if it will be used ultimately. * src/mtp_client.[hc]: Added. These are in progress. * src/mtp_server.[hc]: Added. Fri May 26 17:21:09 2000 David Helder * doc/C/faq-developers.sgml: Added. Update CVS repository. * src/backend_announce.c (backend_announce_r): Fix bad args to backend_announce_r - meant directories didn't work. * src/backend_file.c (backend_file_setup_path): Fix: When no parent, use jm_home as directory. Before we used the file name as the directory, which was weird. * src/ggui.c (main): Strip off trailing / on jm_home if necessary. * src/ggui_preferences.c (apply_general): " * src/ggui_search.c (ggui_search_init): Add note that you need to be on a channel to see a search server. * src/backend_channel.c (channel_packet_cb): Freeze-thaw GUI between before reading packet. * src/jmfile.c (jmfile_unlink): Unlink children. * src/ggui_channels.c (ggui_channels_shutdown): Don't sync - will call in on_jmw_destory. * src/ggui_chat.c (ggui_chat_shutdown): " * src/ggui_chat.c (chats): Added list of chats * src/ggui_chat.c (ggui_chat_shutdown): Send leave messages to all chats and delete. * src/ggui_chat.c (ggui_chat_remove): Leave the chat before deleting it. * src/ggui_config.c (ggui_config_set_vector): Fix Gnome part for compilation. * src/ggui_preferences.c (on_preferences): Fix: Use widget_name for widget name. Thu May 25 22:56:37 2000 David Helder * src/ggui.c (ggui_show_message): Makes crappy box in GTK mode. * src/ggui_preferences.c: Works for GTK now (untested for Gnome). * src/ggui_*: Other gnome only stuff now works for GTK * src/ggui_config.[hc]: Added * src/parsecfg.[hc]: Removed (didn't need) Thu May 25 17:12:11 2000 David Helder * src/parsecfg.[hc]: Added for GTK config file * AUTHORS: Added Mike Oliphant * src/ggui.c (main): Warn if the user runs JM as root. * src/ggui_preferences.c (ggui_preferences_shutdown): Added. Hide preferences when exiting. * src/ggui_properties.c (ggui_properties_shutdown): Added. Hide shown properties when exiting. Thu May 18 11:54:03 2000 David Helder * src/btp_proto.c (btp_conn_accept): Get hostname/port from conn, not node. [Seg fault fix.] * src/jmgnet.c (jmgnet_tcp_socket_set_tos): Fixed type. [FreeBSD compile fix.] Mon May 15 09:44:30 2000 David Helder * doc/C/faq-compare.sgml: Fixed Gnutella URL. Sun May 14 14:05:52 2000 David Helder * src/backend_file.c: Include sys/types for NetBSD. * src/backend.c: " * src/jmfile.c: " Fri May 12 13:45:22 2000 David Helder * debian/rules: Assume poll is broken. * debian.gnome/rules: " * configure.in: Test if poll is broken * src/poll.c: Compile only if HAVE_BROKEN_POLL is set. * src/ggui_chat.c (ggui_chat_join): Update the gui after rejoining. * src/jmchat.c (jmchat_rejoin): Return FALSE if successful. Thu May 11 18:19:15 2000 David Helder * AUTHORS: Cleaned up. Xavier is a contributor. Mukesh and Andy just credited. * src/ggui_chat.c (chat_info_cb): SAY should check if the msg is NULL, not LEAVE. Thu May 11 15:52:19 2000 David Helder * *: Release 0.1.6 * src/ggui.c (ggui_get_jm_glade_xml): Fixed error message. * doc/C/Makefile.am (install-data-local): Fixed path for stylesheet-images. Thu May 11 11:08:15 2000 David Helder * src/poll.c: Don't include poll.h Thu May 11 09:13:29 2000 David Helder * configure.in: Added stuff for poll. * src/poll.c: Added. Wed May 10 16:37:29 2000 David Helder * src/b_conn_handler.c (b_conn_handler_dispatch): Copy list of handlers. Check if handler deleted before dispatching. This is in case the handler is deleted. This isn't perfect, but should work. * src/btp_tree.c (btp_tree_delete): Remove the switch timeout. * src/btp_proto.c (find_new_parent_cb): Send the parent a switch packet. We forgot to do this. * src/glade/jm.glade: Added chat. Wed May 10 15:25:21 2000 David Helder * src/b_conn.c (b_conn_pop_packet): If we aren't connected and this is NOT a connect packet, return NULL. Wed May 10 15:13:06 2000 David Helder * src/jmsearchserver.c (server_start): Pass server name to backend_search_create. * src/backend_search.c (backend_search_create): Added 'name' parameter. Wed May 10 13:28:19 2000 David Helder * src/b_conn.c (b_conn_pop_packet): If we aren't connected and this is a data packet, return NULL. We don't want to send data yet. Tue May 9 17:19:22 2000 David Helder * src/b_conn_io.c (b_conn_watch_error): Re-enabled watching err and hup. Tue May 9 16:23:59 2000 David Helder * src/btp.c (btp_remove): Only remove if name_to_tree is there. * src/ggui_chat.c (chat_info_cb): Update chat_text. Update chat_text if shown. * src/btftp.c (btftp_delete): Delete only if non-NULL. * src/btsmp.c (btsmp_delete): Delete only if non-NULL * src/btp_proto.c (btp_conn_accept): Handle when node known, but not connected. Also handle reconnections. * src/ggui_menu.c (on_entry_dialog_clicked): Remove whitespace. * src/ggui_menu.c (on_entry_dialog_ok): Fixed deleting potentially wrong pointer. Sat May 6 18:49:27 2000 David Helder * src/b_conn_io.c (b_conn_watch_error): Not watching ERR and HUP seems to fix 100% CPU problem, but why? * src/ggui_menu.c (on_entry_dialog_ok): Strip leading and trailing whitespace from entry text. * src/ggui.c (main): Initialize backend even if no hostname or interface. * src/backend.c (backend_init): Return if no hostname or interface Fri May 5 15:41:37 2000 David Helder * src/backend.c (garbage_collect_hrfunc): Don't GC if it has a NULL parent. Fri May 5 14:17:22 2000 David Helder * src/ggui.c (gui_activate): Fixed parse error for GTK version. * src/ggui_menu.c (entry_dialog_new): Remove on_entry_dialog changed for GTK version. * src/ggui_preferences.c (initialize_network_addr_manual): Fix append vs prepend of 127.0.0.1. This may fix selection problem * src/ggui_chat.c (on_chat_button_press): Allow removal of chat's don't own from list. * src/ggui_chat.c (on_chat_remove): " * src/ggui_channels.c (on_channels_button_press): Cleaned up popup menu. * src/ggui.c (on_jm_manual): Added. Removed faq_online. * src/ggui.c (on_jm_faq): Added. Thu May 4 22:41:16 2000 David Helder * configure.in: Check for libtool * src/Makefile.am: Link using libtool Thu May 4 15:29:19 2000 David Helder * src/ggui_channels.c (ggui_channels_remove): Remove file from bookmarked channels. * src/ggui_chat.c (ggui_chat_remove): " * src/ggui.h (_GuiData): Added field to save chat text in. * src/ggui_chat.c (on_chat_select_row): Save and restore chat text. * src/ggui_chat.c (on_chat_unselect_row): Save chat text. * src/ggui_chat.c (ggui_chat_leave): Delete chat_text * src/ggui_chat.c (ggui_chat_remove): " * src/backend_file.c (backend_file_setup_path): Don't append the name of the file until the very end... * src/ggui.c (gui_activate): Don't append file: to urls. Also, call ggui_chat_join on URLs even if in GTK mode. * src/ggui_download.c (ggui_download_remove): Set in_download_list to FALSE after remove. * src/ggui_download.c (ggui_download_update): Set in_download_list to FALSE after removing. Before we set to TRUE. * src/ggui.c (main): Bookmark only the default channel. * src/util.c (is_blankpathname): Skip leading / Wed May 3 23:26:54 2000 David Helder * src/backend.c (garbage_collect_hrfunc): Call gui_remove * src/b_conn_accept.c (b_conn_init): Don't bother with B_CONN_PORT. * src/jmchat.c (jmchat_is_up): Return TRUE if btsmp is non-NULL. Not sure if this will work or not... * src/ggui.c (gui_add): Remove assertion that gui_data was NULL. * src/ggui_chat.c (ggui_chat_join): Call gui_update after joining chat. * src/ggui_chat.c (ggui_chat_leave): " * src/ggui_chat.c (chat_error_cb): " * src/jmchat.c (jmchat_join): Don't set is_local flag. * src/jmfile.c (jmfile_delete): Don't call backend_delete since we may be iterating through the hash table. Instead the backned_delete must be called before jmfile_delete. * src/backend.c (backend_shutdown): Don't create a files lists. Instead first do a hfunc to remove channels and then do a hfunc to delete everything. * src/backend.c (backend_delete_hfunc): Added * src/btp_proto.c (receive_mcast): Added * src/btp_proto.c (receive_ucast): Added Wed May 3 09:58:02 2000 David Helder * src/ggui*: Continued hacking on chat... * src/jmchat.c (jmchat_is_up): Added. * src/ggui_files.c: Popup menu cleanups. * src/jmfile.c (jmfile_get_child_by_name): Parent can be NULL. * src/backend_url.c (backend_url_create): Parent can be NULL. Tue May 2 08:58:53 2000 David Helder * src/ggui_chat.[hc]: Added. * src/ggui_properties.c (ggui_properties_update): Added case for URL. * src/ggui_channels.c (ggui_channels_load_bookmarks): Added. * src/btsmp.c (btsmp_is_up): Fix: Always returned TRUE. * src/ggui_files.c (on_files_button_press): Fix: Don't allow user to remove current channel if they don't own it. * src/backend_announce.c (backend_announce_add): Fixed potential seg fault when creating private channel. * src/jmchat.[hc]: Added. Independent of backend. * src/ggui_menu.c (ggui_menu_get_file): Fix: Now works on directories again. * src/backend.c (backend_put): s/backend_add/backend_put * src/backend.c (backend_add): Added. Other types now use this when possible. * src/ggui.c (ggui_get_pixmaps): Handles chat and url icons * src/ggui.c (main): Load chat and url icons. * src/icons.h: Added chat and url icons. s/monkey/channel * src/backend_url.[hc]: Added * src/backend.c (backend_activate): Added URL * src/jmfile.c (jmfile_is_url_proto): Added * src/jmfile.h: Added URL types * src/jmpio.c: Read and write URL Sun Apr 30 16:45:02 2000 David Helder * src/ggui_preferences.c: Added port configuration. * src/b_conn_ping.c (receive_pong): Compare size properly. * src/b_conn_ping.c (receive_ping): Send the new packet, not the old one. * src/b_conn_io.c (read_cb): memmove not so conservative. * src/b_conn_connect.c (receive_ok_connect): Do connect upcall. * src/b_conn_ping.c (send_ping): Send ping only if there isn't one already (condition was backwards). * src/btp_proto.c (btp_conn_close): Added. Just calls btp_conn_fail. * src/btp_proto.c (btp_conn_fail): Cleaned up. Fri Apr 28 21:03:14 2000 David Helder [UNTESTED] * src/btp*: Continued hacking. Compiles. Connections work. Still more to do. Wed Apr 26 13:57:58 2000 David Helder [DOES NOT COMPILE] * src/btp*: Continued hacking... * doc/C/*: Added NEWS, FAQ, and AUTHORS files Wed Apr 26 13:57:58 2000 David Helder [DOES NOT COMPILE] * src/btp*: Continued hacking... * doc/C/*: Added. Tue Apr 25 19:48:40 2000 David Helder [DOES NOT COMPILE] * src/btp*: Hookedup tree, node, packet * src/b_conn.h,*: Remove _down(). * src/b_conn_connect.c (b_conn_close): Stop pinging the node. * src/b_conn_io.c (write_cb): Reset the connection before calling b_conn_func_close. * src/b_conn_ping.c (receive_bye): Implemented. Sat Apr 22 17:21:50 2000 David Helder [DOES NOT COMPILE] * src/*: Continued restructuring of BTP. b_* compiles. Sat Apr 22 12:09:05 2000 David Helder [DOES NOT COMPILE] * src/*: Continued restructuring of BTP... Fri Apr 21 16:59:09 2000 David Helder [DOES NOT COMPILE] * src/*: Continued restructuring of BTP... Fri Apr 21 10:48:49 2000 David Helder [DOES NOT COMPILE] * src/*: Continued restructuring of BTP... Thu Apr 20 16:41:51 2000 David Helder [DOES NOT COMPILE] * src/*: Continued restructuring of BTP... Thu Apr 20 10:47:08 2000 David Helder [DOES NOT COMPILE] * src/*: Continued restructuring of BTP... Wed Apr 19 15:07:14 2000 David Helder [DOES NOT COMPILE] * src/*: Continued restructuring of BTP... Wed Apr 19 00:16:14 2000 David Helder [DOES NOT COMPILE] * src/*: Continued restructuring of BTP... Tue Apr 18 12:47:01 2000 David Helder [DOES NOT COMPILE] * src/*: Continued aggressive restructuring of BTP. * src/*: Removed jmsearchclient, jmftp-send, jmftp-receive Tue Apr 18 11:51:53 2000 David Helder [DOES NOT COMPILE] * src/*: More aggressive restructuring of BTP. Mon Apr 17 00:43:42 2000 David Helder * src/*: Continued restructuring BTP. Should be ok now, though it will probably go through additional cleanup. Fri Apr 14 15:55:13 2000 David Helder [DOES NOT COMPILE] * src/*: Restructuring btp (in progress) * src/btp.c (find_new_parent): Added. Made heuristic for switching smarter. * configure.in (JM_MICRO_VERSION): Upped version to 6pre1 * src/ggui_files.c (files_row_compare): Sort by type too. * src/ggui_files.c (ggui_files_add): Call sort after inserting * src/ggui_files.c (ggui_files_init): Don't autosort * src/*: Finished (?) restructuring/rewriting backend * src/ggui_files.c (on_files_drag_data_received): Show warning if D&D to channels only channel. * README: Added URL for popt (though there should be a newer one) Thu Apr 13 14:52:13 2000 David Helder [DOES NOT COMPILE] * src/*: Restructuring/rewriting backend (in progress) * src/jmsearchserver.c (server_start): URL is just hostname and port. Thu Apr 13 13:21:59 2000 David Helder * src/ggui_files.c (ggui_files_init): Make column titles passive. * src/ggui_search.c (ggui_search_init): " * src/ggui_download.c (ggui_download_init): " * src/ggui_files.c (on_files_button_press): Don't call files_show. channels_select will call it. * src/globals.h (DEBUGP): Surrounded by do-while(0) * src/ggui_channels.c (on_channels_button_press): Allow user to remove channels that are unjoined. * src/ggui_channels.c (on_channels_remove_channel): Just remove channel from list if non-local * src/ggui_channels.c (channels_add): Append channels, don't insert them. * src/ggui_channels.c (ggui_channels_init): Don't autosort Thu Apr 13 10:15:39 2000 David Helder * src/ggui.c (on_faq_online): Disable if GTK * debian/*: Upped version. Wed Apr 12 17:02:49 2000 David Helder * src/ggui_files.c (ggui_files_show): Reset selected_file. * src/backend.c (backend_get): Added * src/backend.c (backend_add): Added Wed Apr 12 15:46:10 2000 David Helder * src/glade/jm-gnome.glade: Added "JM Homepage" and "FAQ Online" items. * src/ggui.c (on_jm_homepage): Added * src/ggui.c (on_faq_online): Added * src/ggui_menu.c (ggui_menu_init): Added * macros/autogen.sh: Fixed bug in Create aclocal. * src/btp_packet.h: Removed comma at end of enum. * doc/btp.txt: Removed (moved to private) Tue Apr 11 22:27:48 2000 David Helder * src/jmgnet.c (jmgnet_tcp_socket_set_tos): Check if IP_TOS is defined. * src/backend.c (backend_activate_file): Set path up to first channel, not up to root channel. * src/ggui_channels.c (ggui_channels_shutdown): Call sync after setting vector. * src/ggui_files.c (on_files_drag_data_received): Updated * src/ggui_files.c (on_files_drag_motion): Updated Tue Apr 11 21:17:10 2000 David Helder * configure.in (JM_MICRO_VERSION): Upped to 0.1.5 * src/*: s/ggui_tree/ggui_files Tue Apr 11 20:49:51 2000 David Helder * src/btp.c (BTP_PORT): Increment * src/jmsearch.h (SEARCH_SERVER_PORT): Increment * src/jmpio.c (jmpio_find): Added. Not used. * src/jmpio.c (jmpio_read_name): Use jmfile_new * src/jmfile.c (jmfile_ref, jmfile_unref): Added * src/jmfile.c: Include sys/types.h. This fixes a portability issue for FreeBSD 4.0 * src/ggui_channels.c (ggui_channels_add): Add condition that the file's parent is NULL. Now it will be shown if we open it. * src/backend.c (garbage_collect_recursive): Check dont_expire field before garbage collecting. * src/jmfile.h (JMFile): Added dont_expire field * src/ggui_channels.c (ggui_channels_show): Don't expire channels channel in the channel list. * src/ggui.c (main): Load bookmarked channels. * src/ggui_channels.c (ggui_channels_shutdown): Added. Save bookmarked files. * src/ggui_channels.c (on_channels_button_press): Add or remove from bookmark list. * src/ggui_channels.c (on_channels_bookmark): Added * src/ggui_channels.c (ggui_channels_set_bookmark): Added * src/ggui.c (ggui_clist_update_row2): Fixed segfault when old and new text are NULL. * src/ggui_channels.c (on_channels_unselect_row): Show NULL if row unselected. * src/util.c (filesize_to_string): Fixed bad return_if_fail * src/util.c (filesize_fraction_to_string): Fixed bad return_if_fail * src/ggui_tree.c: s/ggui_tree/ggui_files. Show list of files. * src/ggui_*: Fixed some bad callback declarations. Not that it mattered. * src/ggui_preferences.c (on_preferences_use_dns_toggled): Fixed. Mon Apr 10 14:43:55 2000 David Helder [UNTESTED] * src/ggui.c (main): Show the root channel. * src/ggui_tree.c (tree_add_recursive): Don't show the top channel. * src/ggui_preferences.c (initialize_network_name): Try to use DNS to get hostname. * src/jmfile.c (jmfile_new): Added. * src/btp.c (btp_receive_packet): Don't print 'weird switch' warning. * src/ggui*: Cleaned up pixmaps, clist/ctree updates * src/ggui_download.c (ggui_download_update): Set icon. * src/jmfile.c (jmfile_get_bytes_received): Added * src/util.c (filesize_to_string): Added * src/util.c (filesize_fraction_to_string): Added * src/btp.c: Send tree name on connect, not URL. * src/btp.c (btp_receive_connect): Same. Sun Apr 9 15:32:31 2000 David Helder * src/jmsearchserver.c (find_matches): Increment num_results only when we find something. Sat Apr 8 23:39:25 2000 David Helder * src/ggui_preferences.c (apply_network): Try to init the backend with the new config if it's uninitialized. * src/backend.c (backend_is_initialized): Added * src/backend.c: s/_start/_init, s/_stop/_shutdown/ * src/ggui.c (ggui_disable_gui): Added * src/ggui.c (main): Call ggui_disable_gui is something fails. * src/ggui_menu.c (ggui_menu_disable_menubar): Added. * src/ggui_channels.c (ggui_channels_select): Added. * src/ggui_tree.c (on_tree_button_press): Call channels_select on double-click. * src/ggui_channels.c (ggui_channels_init): Make channels_clist sorted. * src/ggui_tree.c (ggui_tree_show): Expand the channel. Or maybe we don't even want to show it... * src/btp.c (btp_receive_pong): Take weighted average of pings. * src/ggui.c (on_jmw_destroy): Removed shutting down message. Sat Apr 8 13:58:12 2000 David Helder * src/backend.c (backend_activate): Split into _file, _channel, and _dir. * src/backend.c (backend_add_channel_url): Was _join. Now does not join, just adds. * src/ggui_preferences: Restructured some of the network part. * src/btp.c (btp_is_initialized): Added. * src/jmsearchserver.c (readline_async_cb): Return length. Don't send name. * src/jmsearch.c (jmsearch_readline_async_cb): Read length. * src/ggui_search.c: Show length, not URL. * src/jmsearchserver/jmlite: s/no-hostname/use-dns Fri Apr 7 16:47:16 2000 David Helder * src/ggui_channels.[ch]: Added * src/ggui_tree.[ch]: Brought up-to-date * src/glade/jm-gnome.glade: Changed checkbox to "Use DNS". It's off by default. * src/ggui_preferences.c (initialize_network_autodetect): Always try to autodetect hostname. * src/*.c (main): --no-hostname flag now --use-dns. DNS is off by default. Thu Apr 6 19:33:42 2000 David Helder * src/ggui_*.c: Don't assert that a menu item is there. * src/glade/master_popup.glade: Add Properties to search and download popups. * src/glade/properties.glade: Make GTK dialog invisible. * src/btp.c (btp_receive_packet): Remove sibling from sibling list before deleting. * src/jmgnet.c (jmgnet_tcp_socket_set_tos): FreeBSD 4.0 portability fixes. * src/ggui_tree.c (ggui_tree_update): Show file length * src/glade/jm*.glade: Added file length field. * src/ggui_search.c (jmsearch_cb): Freeze the GUI while adding search results (even though it looks cools :-)) * src/ggui_search.c (ggui_search_freeze): Implemented. * src/ggui_download.c (ggui_download_freeze): Implemented. * src/btftp.[hc]: Added hint for when we receive new data. * src/backend.c (receiver_hint_cb): Added * src/jmfile.c (jmfile_get_percent_complete): Added * src/ggui_download.c (ggui_download_update): Show percent complete Wed Apr 5 17:23:33 2000 David Helder * src/ggui_menu.c (entry_dialog_new): Set the default to OK. This needs more work. * src/ggui_preferences.c: Set the sensitivity of the containers in the network part based on what button is toggled. * src/jmgnet.c (jm_gnet_inetaddr_get_internet_interface): Try to find the first internet interface in the list, rather than the first interface. If that fails, just return the first interface. * src/jmgnet.h: Added inetaddr_is_{internet, private, reserved, loopback, multicast, broadcast}. is_internet is what is_internet_interface used to be. Tue Apr 4 21:06:31 2000 David Helder * *, debian*: Upped version to 0.1.4 * src/btp.c (btp_tree_delete): Set tree->children and tree->siblings to NULL after freeing. This may have been causing a seg fault. * src/btp_node.c (btp_node_new): Now takes hostname and port. * src/btp.c (btp_receive_children): Cleanups Tue Apr 4 18:03:45 2000 David Helder * src/ggui_tree.c (on_tree_drag_data_received): s/data/sel_data (missed some) Tue Apr 4 18:01:41 2000 David Helder * src/ggui_tree.c (on_tree_drag_data_received): s/data/sel_data * src/btp_packet.c (btp_packet_write_addresses): Fixed typo. We were just sending the same node over and over again. * src/btp.c: Touch ups, comments. * src/btp.c (btp_tree_join): Removed warnings about joining self. * src/btp.c (btp_receive_pong): Make sure distance is more than 0. * src/btp.c (btp_receive_connect): Use btp_node_find_by_name. Mon Apr 3 21:42:40 2000 David Helder * src/ggui_preferences: Continued hacking on. * mains: s/use-dotted-decimal/no-hostname option. Print better error messages. Mon Apr 3 13:38:10 2000 David Helder * src/ggui_preferences: Added network configuration stuff. * src/jmgnet.h: Cleaned up get_internet_hostname/addr. Now returns an enum and does not print stuff. * src/*: Moved *glade* to src/glade * src/backend.c (backend_leave): Call gui_update on the file. * src/btp.c (btp_receive_packet): Cleanups. Removed some warnings for things that may happen frequently. * src/btp.c (btp_receive_children): Ignore siblings that are my children (I may have received outdated information from my parent) * src/btp_node.c (btp_node_delete): Remove from sibling and children list if necessary (we still warn though). Also, remove multiple times if in list multiple times. Sun Apr 2 22:38:16 2000 David Helder * src/util.c (parse_url): Fixed typo? * src/ggui_properties.c: Show number of downloads. * src/btftp.c (btftp_get_num_downloads): Added. * src/ggui_properties.[hc]: Added and hooked up * src/ggui_info.[hc]: Removed * src/ggui_tree.c (on_properties): Added * src/ggui_menu.c (ggui_menu_about): Added * src/ggui_tree.c (on_tree_button_press): Cleaned up separators. * src/ggui_tree.c (ggui_tree_update): Pixmap setting moved here. * src/ggui.[hc]: Load gray pixmaps. * src/jmfile.c (jmfile_have_file): Added * src/jmfile.c (jmfile_on_channel): Added * src/backend.c (backend_add_channel): Cache entries expire at UPDATE_TIME, not 3/4 UPDATE_TIME * src/backend.c (updates_add_files, updates_cb): Lower added variance to UPDATE_TIME/16. Sun Apr 2 16:37:17 2000 David Helder * src/icons.h: Added some gray icons. Not hooked up yet. Sun Apr 2 15:05:37 2000 David Helder * src/ggui_menu.c: Implemented CCFD. * src/ggui_tree.c (on_tree_button_press): Added ccfd_mi. * src/ggui_tree.c (on_tree_button_press): Added add_directory_mi. * src/btp.c (btp_receive_packet): Properly handle ref/unref with packet_func. (Though it shouldn't have mattered.) * src/btp_packet.[ch] (btp_packet_read): Now returns a failure value. * src/btp.c (btp_read_cb): Dump the connect if it sends us garbage. * src/btp.c (btp_read_cb): Don't fail the node if btp_receive_packet returns NULL. * src/btp_packet.c (btp_packet_string_to_address): Don't allow zero-length server and ports. * src/btsmp.c (btsmp_cache_set_policy): Save the cache timeout. * src/ggui.c: Fix: thaw and freeze were backwards. * src/ggui_tree.c: s/jmctree/tree_ctree Sat Apr 1 17:50:07 2000 David Helder [UNTESTED] * src/ggui_*, *.glade: Lots of GUI restructuring. Much better modularized. Fri Mar 31 17:32:29 2000 David Helder * src/jmsearchserver.c (server_start): Don't free the hostname. Fri Mar 31 17:00:24 2000 David Helder * src/jmintl.h: Moved I18N headers here * src/jmlite, jmsearchserver: Now use I18N * configure.in (JM_MICRO_VERSION): Upped version number to 0.1.4 (unreleased) * src/master_popup.glade: Added on_add_directory and on_create_channel_from_directory. * src/btp_node.c (btp_node_delete): Warn if in nodes list multiple times or are in the siblings list. * src/btp.c (btp_tree_delete): Delete children and siblings lists. * src/btsmp.c (btsmp_hint_cb): Check the cache before sending stuff. We have stale stuff in the cache that isn't getting tossed because nothing is being added. * src/jmgnet.h: Added/changed: jm_gnet_inetaddr_get_internet_interface jm_gnet_inetaddr_get_internet_domainname jm_gnet_inetaddr_is_internet_interface jm_gnet_inetaddr_is_internet_domainname * src/PROGRAMS: Updated to use this. * src/btp.c (btp_init): Now return gboolean, not gint. Takes hostname arg. Assumes that hostname and interface are set. * src/backend.c (backend_start): Returns FALSE on success, TRUE on failure. Now takes hostname argument. * src/btftp.h: Removed include of btp.h * src/*.glade: Move master_popup to master_popup.glade * src/Makefile.am (jm_DATA): Added master_popup.glade * src/ggui.c (get_jm_glade_xml): Now takes name of glade file. * Makefile.am (WEBPATH): Changed to new website. * src/btp.c (btp_fail): Warn if "me" fails. * src/btp.c (btp_lost_connection): Warn if "me" fails. * src/btp.c (btp_write_cb): Removed MCAST_WRITE hint. * src/btsmp.h,btftp.h: Added notes about hints * src/btp.c (btp_read_cb): btp_fail a node that send's a BYE. Wed Mar 29 11:35:22 2000 David Helder * src/btp.c (btp_init): Return 0 on success. * src/backend.c (backend_start): Fail if BTP can't be initialized. * src/btp.c (btp_init): Use the canonical name if I can't get the name from the IP address. * src/jmsearch.c (jmsearchstate_delete): Call g_list_free instead of g_free on state->results. jmsearch now owns result list. * src/ggui_jmsearch.c: Don't delete results - jmsearch now owns. * src/ggui.h: Fixed I18N include problem (again...) Tue Mar 28 21:54:26 2000 David Helder * FAQ: s/Gnutilla/Gnutella. Added nerdherd homepage. Tue Mar 28 21:31:06 2000 David Helder * *: Release 0.1.3 * src/*.c: Include config.h first so I18N works right. Tue Mar 28 16:18:54 2000 David Helder * src/btp.c (btp_tree_delete): Fixed delete while iterating a list. * src/btp.c (btp_receive_packet): Same. (Though this shouldn't happen, it's a good habit. * src/btftp.c (btftp_delete): Use clear_and_unref. * src/btsmp.c (btsmp_delete): Use clear_and_unref. Tue Mar 28 13:23:42 2000 David Helder * *: Release 0.1.2 * src/ggui_base.c (gui_activate): Fixed compile bug. Tue Mar 28 12:51:17 2000 David Helder * src/btsmp.c (btsmp_cache_check): Fixed bad conversion of timeval to milliseconds. * src/jmpio.c: Pass read_name the action. If the action is remove, then don't create the file. * src/btp.c: Added ref counting. We now add a ref before making an upcall so that the tree does not get accidentally deleted. * src/btp_node.c: Added asserts around g_source_remove * src/ggui_base.c: Added debug output. * src/backend.c (backend_remove_r): If we move a node to the top, then add it to top_files. * src/btp_node.c (btp_node_delete): Remove node from tree->nodes. Tue Mar 28 09:44:23 2000 David Helder * src/Makefile.am (EXTRA_DIST): Added glade.h files. Mon Mar 27 21:42:25 2000 David Helder * src/btp.c: General clean-ups in error handling * src/btp.c (btp_tree_print): Added * src/btp_node.c (btp_node_print): Added Mon Mar 27 17:36:33 2000 David Helder * src/jmpio.c (jmpio_read_name): Fixed how we set channel. * src/backend.c: Fixed how we set channel. A channel's channel is itself. * src/ggui_menu.c (on_get_file): Fixed typo bug. * debian/control (Description): Added note to use jm-gnome if you have Gnome. * src/ggui_base.c: Converted asserts to return_if_fails * src/backend.c (updates_*_file): Fixed logic for determining who parent channel is. Mon Mar 27 12:48:10 2000 David Helder * auto*, *: First pass at I18N. * src/jmsearch.c (jmsearch_readline_async_cb): Removed warning. * src/ggui.c (on_list_button_press): Don't show "Join Channel" if you're connecting to the channel. * src/ggui_preferences.c (on_preferences): Show the widget manually after changing stuff. Set the parent. * src/jm-gnome.glade: Make the pref. widget invisible. Set the title to "Jungle Monkey". Mon Mar 27 12:03:14 2000 David Helder * src/btp.c (btp_send_packet): Bug fix. Add MCAST packet size to packets_out_size. * src/btp.[ch], btsmp.c, btftp.c: Added passive flag (was 'send_only'). Make appropriate updates. * src/ggui_menu.c (on_remove_channel): Fixed typo bug * src/ggui_menu.c (on_remove_file): Fixed typo bug Sun Mar 26 18:36:45 2000 David Helder * src/btp*: Newly connected/accepted nodes now timeout. * src/ggui*.c: Added gui_show_message. The GUI now uses this instead of g_warnings. * src/ggui.c (main): Fixed tooltips. Use gnome_config to set jm_home. * src/ggui_preferences.c: Set wmclass. Save home using gnome_config. Sun Mar 26 17:48:10 2000 David Helder * src/ggui_dnd.c (on_tree_drag_data_received): Pass selected_file to backend_add_files Sun Mar 26 17:39:33 2000 David Helder * src/ggui_preferences.c: Surround by if JM_ENABLE_GNOME Sun Mar 26 17:37:43 2000 David Helder * configure.in: AC_INIT on backend.c Sun Mar 26 17:28:28 2000 David Helder * src/*: Renaming. Some was done manually in the repo. Sun Mar 26 13:44:32 2000 David Helder * src/gui.c, jm-gnome.glade: First cut at preferences dialog for Gnome. * src/*: Broke gui.c into many smaller files. * src/{gui, backend}.c: - Moved gui/add_files to backend/backend_add_files. - Added gui_activate, which backend_activate calls if we have the file. * src/gui.c: Use GnomeDialog for entries. Sat Mar 25 15:36:35 2000 David Helder * src/jmgnet.c (jm_gnet_inetaddr_sanity_check_interface): Added test for 10. Thu Mar 23 23:27:02 2000 David Helder * src/jmsearch.c (jmsearch_readline_async_cb): Newline means done. Use MATCH and SEARCH, not match and search. * src/jmsearchserver.c (readline_async_cb): Don't delete the query. * src/jmsearchserver.c (server_accept_cb): Use client_iochannel, not iochannel. * src/jmgnet.c: Fixed bad g_return_if_fail's. Fixed bad casts. * src/jmp.c (jmp_read_attribute): Terminate attribute value with \0. Handle \\. * src/jmp.c (jmp_write_attribute): Escape \'s. * src/jmpio.c (jmpio_read_name): Only check for type change on last file. * src/backend.c (channel_packet_cb): Return TRUE if there is an error. * src/btsmp.c: Packet func now returns TRUE if there was an error. If this happens, don't forward or cache the packet. * src/util.[hc]: Added strcasestr * src/jmsearchserver.c: Use strcasestr instead of strstr. Thu Mar 23 17:55:21 2000 David Helder [UNTESTED] * src/jmgnet.[hc]: Added async read. Merged read and readline code. * src/jmsearch, jmsearchserver: Now uses jmgnet and jmp. General cleanups. Fixed bad hostname in jmsearchserver. Thu Mar 23 00:06:51 2000 David Helder * src/jmgnet.[hc]: Added async write and readline. Readline is in complete. * src/*: Continued debugging of new IO stuff. Mostly works. * src/jmfile.[hc]: Moved backend jmfile_* stuff here. Wed Mar 22 17:21:11 2000 David Helder [BROKEN] * configure.in: Removed dependence on XML (though libglade still needs it). * src/jmp.[ch], jmpio.[hc]: Added. This will replace XML. Tue Mar 21 20:42:10 2000 David Helder * src/gui.c: Load all XML and widgets in main. * src/gui.c (on_list_button_press): Show "Create Channel" if channel is local. * src/backend.c (backend_remove_r): Debugged. Tue Mar 21 18:34:11 2000 David Helder * src/gui.c: Checks btsmp_is_up before showing "Create Channel" * src/btsmp.c (btsmp_is_up): Added * src/gui.c: Join Channel now split into Open Channel and Join Channel * src/*.glade: Added "open_channel_mi" * src/gui.h (gui_move): Added * src/{gui, jmlite, jmsearchserver}.c: Implemented gui_move * src/backend.c (backend_remove_r): Recursion stops at channels we move. Now calls gui_move. Tue Mar 21 11:30:51 2000 David Helder * Makefile.am (deb-gnome): Fixed deb-gnome rule. Tue Mar 21 11:15:33 2000 David Helder * src/backend.h (JM_DEFAULT_CHANNEL): Fixed name * src/backend.c (receiver_error_cb): Only print warning if transfering. * FAQ: Fixups * debian*: Updated changelog Mon Mar 20 20:41:09 2000 David Helder * FAQ: Cleaned up FAQ (TODO: Add Xbone, Freenet) * src/btp.c (btp_receive_packet): Handle CONNECT and CONNECT_OK when received in normal state. * src/btp.c (btp_read_cb): Fixed typo. Read watches were lost. * src/btp.c (btp_receive_connect_*): Renumber packet already in queue once we know our ID. * src/btp.c (btp_write_cb): Don't send more packets after a CONNECT is sent. * src/btp_node.c (btp_node_reset_connection): Remove all packets from queue when reset. * src/btsmp.c: Added unicast callback. * src/jmsearchserver.c (find_matches): Ignore NULL or empty search queries. Mon Mar 20 17:15:19 2000 David Helder * src/btp*: Connections is mostly debugged. Still need to do some more testing. * src/backend.c: Send the XML with the \0. This saves having to copy the buffer (though it wastes a byte...). * src/{backend, util}.[hc]: Moved make_url from backend to util. * src/gui.c (on_list_button_press): Don't show "Create channel" when do channel is selected. * src/backend.c (garbage_collect_cb): Fixed bug. Somethings weren't garbage collected and a seg fault was possible. Also removed the while (list) delete (list->data) constructs. * src/{jmlite, jmsearchserver}.c: Added --interface option and a call to get_interface. Mon Mar 20 08:47:25 2000 David Helder [ BROKEN ] * src/*: Continued reworking BTP connections. Sun Mar 19 17:24:11 2000 David Helder [ BROKEN ] * src/*: Reworking BTP connections. Many other BTP cleanups too. * src/btp.c (btp_receive_packet): Don't reply to pings that send a lot of data. * src/btp_packet.c: Added btp_packet_read_string[s] (2 functions) Added btp_packet_write_strings Added btp_packet_string_to_pair Read/write addresses now use these. Sun Mar 19 12:19:51 2000 David Helder * src/btp.[hc]: - Removed 'send_only' stuff Sat Mar 18 23:42:02 2000 David Helder * src/btsmp.[hc]: Added caches * src/btp.[hc]: Added BTPHINT_NODE_JOIN hint * src/backend.c: Set cache size to 0 when joining a channel. Clear the cache before sending updates. * src/backend.[hc]: Removed slow channels * src/{gui, jmlite}.c: Updated accordingly * src/jmgnet.[hc] (jm_gnet_inetaddr_get_inet_interface): Added. This now does interface sanity checks and will use the gnet_private_inetaddr_list_interfaces function. * src/{gui, jmlite}.c: Updated to use this function Sat Mar 18 18:05:15 2000 David Helder * src/backend.c (build_update): Removed debug stuff Sat Mar 18 17:14:00 2000 David Helder * src/btp.c: Split btp_connect_root into btp_tree_create and btp_tree_join. Some other renaming too. * src/btsmp.c,btftp.c: Updated accordingly * README: Added a QuickStart section * src/jm[-gnome].glade: Added "Create root channel" menu item. Removed join channel * src/gui.c (on_list_button_press): Display "Create root channel" always. * src/gui.c: Added on_create_root_channel and associated functions. * src/backend.c (channel_packet_cb): Copy the buffer into another buffer terminated with \0. This worksaround a libxml 1.8.7 issue. * configure.in (PACKAGE): Check the version of libxml. Print an error if it is too old. Fri Mar 17 22:39:29 2000 David Helder * src/btp.c (btp_connect_root): Add a G_IO_IN watch for our incoming socket only. These seems to fix the 100% problem, but I don't know why - I should investigate this further. * src/btp.c (btp_connect_root): If I'm connecting to myself, set did_use_btp_port. This works around some problems. See BUGS and the code for more info. * src/btp.c (btp_connect_root): Set interface when creating incoming port with port = 0. * src/jmgnet.c (jmgnet_tcp_socket_set_tos): Do nothing if IPTOS_LOWDELAY is not defined (eg, on OpenBSD). Fri Mar 17 09:47:05 2000 David Helder * src/btp.c (btp_connect_cb): Moved DEBUGP. * src/gui.c (main): Added network configuration sanity checks. * configure.in (JM_MICRO_VERSION): Set version to 0.1.1 (unreleased). Look for GTK before GNet. Thu Mar 16 21:07:37 2000 David Helder * src/globals.h: Added GInetAddr interface * src/gui.c, src/jmlite.c: Set interface via --interface * src/btp.c: Use interface if set for my address and the server address * src/jmgnet.c (jm_gnet_tcp_socket_server_new): Added. * src/btp.c: Don't use BTP_PORT more than once. This works around problems in some Linux kernels. Thu Mar 16 19:03:17 2000 David Helder * src/backend.c (channel_packet_cb): Added more verbose warning output. * src/btp.c (btp_receive_packet): Added more verbose warning output. Wed Mar 15 17:27:30 2000 David Helder * auto*: Release 0.1.0 * src/backend.c (backend_join): Removed note about mofo being the default root. Wed Mar 15 13:50:24 2000 David Helder * jm[-gnome].spec.in (Requires): Require GNet 1.0.1 Tue Mar 14 22:16:30 2000 David Helder * src/jmforever: Fixed 'channels-only' typo. Tue Mar 14 20:02:03 2000 David Helder * src/backend.c (backend_leave): Remove all children and leave the BTSMP. Before we also deleted the channel. * src/backend.c (parse_node): If you receive an announcement for a file you already have and it's off a different type, ignore it. * src/backend.c (parse_node, parse_slow_url): If the URL changed and the file is marked DOWN, change the status to NONE. * src/backend.c (backend_cancel): Fixed incorrectly written g_return_if_fail's. * src/gui.c (on_jmw_destroy): Set shutting_down when shutting down. * src/gui.c (gui_update): Downloading files have status of 'Downloading' (whether they are actually downloading or not). * src/backend.h (JM_DEFAULT_CHANNEL): Default is now misc * src/backend.c (switch_to_slow_channel_cb, parse_slow_url): After joining the slow channel, send an update immediately. * src/jmsearchserver.c (print_time_cb): Now prints time every 5 minutes. Also print search strings. * src/Makefile.am: Remove btpclimber. * README: Added info on Gnome support Tue Mar 14 16:46:26 2000 David Helder * Makefile.am: Fixed package building rules * jm-gnome.spec.in: Added. Tue Mar 14 11:26:14 2000 David Helder * debian, etc: Release 0.0.19 * src/*: Changed copyright to "The Regents of the University of Michigan" * jm.spec.in, AUTHORS: Added Xavier Nicolovici's jm.spec.in Sun Mar 12 18:37:42 2000 David Helder * pixmaps/*: Added. Added pixmap to configure.in * jm.desktop: Added. Added to Makefile.in, configure.in Sat Mar 11 14:01:49 2000 David Helder * debian.gnome: Added debian files for Gnome build * src/*: Added g_assert's around g_source_remove's. * src/gui.c (main): Fixed command line options for Gnome. Fri Mar 10 16:36:15 2000 David Helder * FAQ: Added note about autogen.sh * jm-gnome.glade: Made jmw a Gnome App. * gui.c: Added on_about. Displays about window when Gnome is enabled. Thu Mar 9 17:32:12 2000 David Helder * src/gui.c: Added real basic Gnome support. * src/jm-gnome.glade: Added. * src/Makefile.am: Installs glade file determined by configure. * Makefile.am: Delete debian-temp after building debs. * configure.in: Gnome rule fixes. Thu Mar 9 11:48:27 2000 David Helder * auto*: Moved to Gnome autogen system. Wed Mar 8 17:05:59 2000 David Helder * src/btpclimber.c (main): Fixed btp_connect_root args. Wed Mar 8 09:07:13 2000 David Helder * configure.in: Set version 0.0.19 (unreleased) * FAQ: Added info on bandwidth use. Clean-ups. * src/btp.[hc]: Added 'tree type'. If tree type is bulk, then set low cost TOS bits on outgoing packets. This is passed to btp_connect_root. * src/jmgnet.[hc]: Added. Has jmgnet_tcp_socket_set_tos function. Tue Mar 7 09:59:05 2000 David Helder * src/backend.c (build_add_file): Set the slow channel timer. * src/backend.c: EXPIRE_TIME is now GARBAGE_COLLECT_TIME * 4 * src/backend.c (SWITCH_TO_SLOW_CHANNEL_TIME): Switch to slow channel now 2X update time (was 4X). * src/btp.c (btp_connect_root): Strdup the hostname (somehow I deleted this in the cleanups on Monday. It occasionally caused a seg fault). * jm.glade: "Server" -> "Search Server" Mon Mar 6 10:48:56 2000 David Helder * src/btpclimber.c: Removed debug stuff. Build a tree, then dump the tree with nice indentation when done. * src/btp.c (btp_connect_root): Set my hostname and port (to be consistent). * src/jmsearch.c (jmsearch_read_cb): Removed g_print("EOF") Sun Mar 5 13:37:52 2000 David Helder * configure.in: Now requires GNet 1.0.1. Release 0.0.18. * src/backend.c (receiver_file_cb): Save the length of the file - it may have changed (or we may never have known it). * src/util.c (parse_url): Skip whitespace at beginning of URL. * src/backend.c (backend_activate): Remove assumptions that a file has a parent. * src/gui.c (jmsearch_cb): If no matches, print search string in error message. * src/gui.c (gui_update): Set the row data for the things in the download list. * FAQ: Added info on searching, URLs. Sat Mar 4 16:00:11 2000 David Helder * src/gui.c: Hooked up download and search stuff. Did some cleanups. Still debugging... * src/jm.glade: Added download page. Redid search server selection part (now uses table). * src/gui.h: Cleaned up. Added struct _GuiData. * src/backend.h: Now have pointer to _GuiData. * src/jmsearch.c (jmsearch_connect_cb): Assert state is not NULL. Wed Mar 1 16:58:41 2000 David Helder * src/backend.c (backend_add_foreign_file): Added 'foriegners' for handling files add by searches and the GUI. There's probably a better way of doing this. * src/backend.c (backend_stop): Delete searches and foreigners. * src/backend.c (backend_start): Initialize RNG in backend_start. * src/btpclimber.c: Initialize RNG in main. * src/backend.c (backend_add_search): Servers now have names. * src/jmsearchserver.c: Added --name option * src/gui.c, jm.glade: Use option menu instead of combo for servers. Print list of search results in clist. (Still not hooked up completely.) * src/Makefile.am (bin_PROGRAMS): jmsearchserver is now always compiled. * doc/Makefile.am (man_MANS): Build jmsearchserver.1 manpage Wed Mar 1 13:39:18 2000 David Helder [BROKEN] * src/*: Continued hacking on searches. Added some more debug output trying to track down 100% CPU bug. * src/gui.c (main): Fixed bug where JMHOME would not be created correction the first time JM was run. Tue Feb 29 15:24:54 2000 David Helder [BROKEN] * src/backend.c (channel_error_cb): Remove g_warning of channel down. * src/jm.glade: Added notebook with a search tab * src/{gui, backend}.c: Added JMFILE_SEARCH type for search servers. Added backed_add_search. Made appropriate updates. * src/jmsearchserver.c, jmsearchclient.c: Added * src/jmsearch.[ch]: Added Tue Feb 29 12:00:20 2000 David Helder * src/backend.c (backend_activate): Ignore join channel if on slow channel. * src/gui.c (on_join_channel): Don't join channel if already on slow channel. Mon Feb 28 15:33:51 2000 David Helder * auto*: Release version 0.0.17 * src/backend.c: Bug fix: Set jm_home to NULL, not "". * src/backend.c (backend_cancel): Added. * src/gui.c: Hooked up "Cancel Download" * src/backend.c: Don't set port - let BTP do it. * src/{btftp,btsmp}.c (btftp_join, btsmp_join): Don't set port if not given - let BTP do it. * src/btp.c (btp_read_cb): Set BtpNode::port * configure.in: Require GNet 1.0.0 Fri Feb 25 16:25:56 2000 David Helder * src/btp_packet.c (btp_packet_write_addresses): Use hostnames, not inetaddrs. * src/btp.h: Added BTPNODE_CHILDINFO hint * src/btp.c (btp_receive_children): Hint the upper layer when we get children. * src/util.c (parse_url): Allow arguments passed to be NULL. * src/btp.c (btp_connect_root): If the port is 0, use 5656. Define BTP_PORT to 5656. * src/globals.h, etc: Remove prob_drop. Moved jm_home to backend. * src/btp.h: Add packet_func and packet_user_data to BtpTree struct. Cleaned up notes on callbacks. (It turns out I don't need this, but I'm going to leave it here anyway.) * src/btp.c (btp_receive_packet): Pass packet to upper layer if there is a packet_func * src/btp_packet.c (btp_packet_read): Removed some comments * src/gui.c (on_tree_button_press): Don't show the "Leave Channel" option if you right click on a file or directory. * src/gui.c (update_jmtext): Display slow URL too * src/jmlite.c: Print slow URL too * src/backend.c (backend_activate): Create the directory if someone downloads a file I already have. This should finally fix Andy's obscure bug. Wed Feb 23 16:14:37 2000 David Helder * src/btp.c (btp_accept_cb): Use gnet_tcp_socket_server_accept_nonblock. * src/btp.c (btp_accept_cb): Update for latest GNet * src/gui.c: Don't use ctree_fix * src/gtkctree-fix.c, Makefile.am: Removed Tue Feb 15 20:50:12 2000 David A Helder * NEWS: Fixed typo * debian/changlog: Release 0.0.16-2 with README fix Tue Feb 15 20:39:45 2000 David A Helder * README: Fixed * NEWS, debian/changelog: Release 0.0.16 * TODO: Updates and clean-ups * src/jmforever: Fixed command line * src/backend.c: Restored old value of switch time * src/btp.c (btp_connect_cb): Removed warning about connection loss. * src/btp_node.c (btp_node_reset_outgoing): Call gnet_tcp_socket_new_async_cancel, not connect_async_cancel. (Need to fix in GNet!) Tue Feb 15 11:21:52 2000 David A Helder * src/btp.c: If we call btp_node_delete_all, make sure we don't try to receive more packets. * src/btp_node.c (btp_node_new): Set hostname/port when creating * src/btp_node.c (btp_node_find_by_name): Added * src/btp_node.c (btp_node_equal): Added * src/jmforever: Added to repository. This runs the root channel forever (so if there's a crash, it will restart). * src/btp.c (btp_receive_children): No longer blocks (though this shouldn't have been a problem). * src/btp_packet.c (btp_packet_read_addresses): Now uses HostnamePortPairs. * src/btp_node.c (btp_node_find): Now uses hostname/ports Mon Feb 14 17:25:08 2000 David A Helder * src/btp.c (btp_connect_root): Remove parent stuff. Hostname and port passed instead of inetaddr to make async stuff easier (upper-levels can now assume BTP is async). * src/{btsmp,btftp}.c: No longer lookup Inetaddr. Now use new btp_connect_root. * src/btp.c: Inetaddr lookup is now asynchronous which basically means there's an additional step in connecting to something. Added btp_lookup_cb. Updated btp_ * src/btp.c (btp_connect_cb): Now check return value of gnet_tcp_socket_new_async. Fri Feb 11 10:22:17 2000 David A Helder * src/btp.c (btp_lost_connection): Be more aggressive about declaring a node down. * src/btp.c (btp_receive_packet): Close connections to old parent and old siblings when we switch. * src/btp_node.h: Added 'is_bad_parent' field. Set when a switch fails. * src/btp.c: Use and set bad parent field. * src/btp.c (tree::switch_timeout, switch_timeout_cb): Added. If we timeout on a switch, then try again. * src/gui.c (update_jmtext): Show whether JMFile is mine or note. Use strdup_printf instead of strconcat (more readable, will make I18N easier). * src/btp_packet.c (btp_packet_new): Set sender_port even if a send-only tree. * src/btp.c (btp_accept_cb): Don't assert that I am not send only. * src/btp.c (btp_connect, reconnect_cb): Don't connect if the port is 0. * configure.in: Now require GNet 0.1.9 * src/btp.c,btp_node.c: Update to GNet 0.1.9 Thu Feb 10 16:43:45 2000 David A Helder * src/btp.c (btp_write_cb): Fixed potential seg fault where we reset the write watch after deleting the node. * src/btp.c: Separated btp_connect into btp_connect and btp_reconnect * src/btp_node.c: Added btp_node_reset_outgoing() and btp_node_reset_incoming() * src/btp.c (btp_connect_root): If send_only, create an incoming channel anyway - I do need to receive pings/pongs. * src/gui.c: Got rid of root_channel global. * src/btp.c (btp_receive_packet): Print warnings if things happen and I'm send only. * src/*: Misc. debugging touches. * src/{jm, jmlite}.c: Cleaned up output so that help2man would like it more. * src/Makefile.am: Added. Added rule to generate man pages using help to man. * debian/rules: Removed addition of undocumented man pages for undocumented man pages. Fri Feb 4 17:16:47 2000 David A Helder * src/backend.c (garbage_collect_cb): Fixed typo which probably caused a seg fault. * debian/{rules, changelog}: Added jmlite as undocumented program. Thu Feb 3 10:43:33 2000 David A Helder * AUTO*: Released version 0.0.15 * src/backend.c: - Convert jm->btsmp in addresses before joining (fixes "Can't join slow bandwidth channel" warning). - Changed some asserts to return_if_fail's - When joining fast channel as send only, check to see if you succeeded. If not, remove the update timer. - Added backend_leave for leaving channels * src/gui.c: - '--root-name' now called '--create-root-channel' - Destroy widget when closing (so the user doesn't press anything - Call backend_leave when leaving channels, not backend_remove. * src/jmlite.c: Added Wed Feb 2 13:36:09 2000 David A Helder * src/Makefile.am (jmftp-test): Fixed jmftp stuff. Wed Feb 2 13:26:36 2000 David A Helder * configure.in (PACKAGE): Require GNet 0.1.8 Wed Feb 2 13:05:51 2000 David A Helder * AUTO*: Released version 0.0.14 * README: Added info about mailing lists * src/btp.c,btp_node.c: Don't close the IOChannel (GNet will close it when we delete the socket.) Tue Feb 1 21:27:49 2000 David A Helder * src/backend.c (make_url): Don't put a slash before the file - it should have one already. Tue Feb 1 21:10:13 2000 David A Helder * src/gui.c (on_remove_channel): Check if file is local first (this fixes Andy's #3 bug). Tue Feb 1 20:50:59 2000 David A Helder * src/btp.c (btp_reschedule_send_ping): Reset the number of consecutive missed pongs on receiving a pong. * src/btp.c (btp_schedule_send_ping): Cancel the receive pong timer if it has been set. Tue Feb 1 17:04:11 2000 David A Helder * src/backend.c (backend_add_channel): Make file's URL's protocol be "jm", not "btsmp". * src/gui.c (main): Fixed bug with command line parsing. * src/btp.c: Added some assertions Tue Feb 1 09:33:00 2000 David A Helder * src/gui.c (entry_dialog_new): Put entry dialog above mouse. * src/backend.c: Allow adding files without a parent channel. * src/: Rename jmftp->btftp, jmsmp->btsmp Mon Jan 31 20:23:57 2000 David A Helder * configure.in: Require popt * src/gui.c (main): Use popt. Eliminated usage(). * Makefile.am (copyweb): Added rules for setting up debian server. Mon Jan 31 13:47:47 2000 David A Helder * AUTO*: Released version 0.0.13 * src/btp.c (btp_connect_root): Use port 5656 only if I'm root. * src/backend.c (channel_error_cb): Don't delete the file, just change the state. * src/backend.c (sender_error_cb): On sender_error_cb, just warn - don't delete the file. * src/btp.[ch], btp_node.[ch]: Added btp_node.[ch]. Lots of restructuring. Now use pings to determine if a node failed. * FAQ, TODO: Updates Sun Jan 30 18:02:41 2000 David A Helder * src/btp.c: Added btp_send_WHATEVER functions. Sat Jan 29 18:53:15 2000 David A Helder * src/gui.c: Fixed some warning output (conditions were wrong). * src/gui.c (on_tree_select_row): Update only if selected file changed. Sat Jan 29 14:10:04 2000 David A Helder * src/backend.c (garbage_collect_cb, garbage_collect_recursive): Added. * src/backend.c (backend_{start, stop}: Start and stop garbage collection. * src/backend.c (backend_activate): If we downloaded the file and it got deleted, then save the file again. * src/jmftp.[ch]: Added jmftp_set_buffer * src/backend.c (receiver_file_cb): Memmap the file after saving it and use that. * src/util.c: - Added is_okfilename, is_goodfilename. - is_goodfilename skips leading blanks - is_goodpathname/is_okpathname now same function, is_blankpathname * src/backend.c (backend_activate, receiver_file_cb): Create the path in backend_activate. * src/backend.c (parse_node, etc): Make sure names are okfilenames. If not, then don't create them. * src/gui.c (on_jmw_destroy): Quit immediately if backend_stop returns TRUE. * src/backend.[ch] (backend_stop[_r]): Return TRUE if we can quit immediately. This is the case if we don't have any local files on the channel. Right now we still always return FALSE - we still need to make sure that BTP is shutdown. * configure.in (JM_MICRO_VERSION): Upped to 0.0.13 * src/gui.c (create_channel_ok): Check if channel of selected file has a JMSMP. * src/gui.c (on_tree_button_press): Don't "create channel" menu item if the selected file is a channel you are not on. Wed Jan 26 10:06:42 2000 David A Helder * configure.in, NEWS, debian/changelog: Upped version to 0.0.12. Tue Jan 25 17:39:32 2000 David A Helder * src/gui.c: File selector is shown only once when adding a file. * src/backend.c (switch_to_slow_channel_cb): Remove the update timer when switching. * configure.in: Require GNet 0.1.7 and GTK 1.2.6 Tue Jan 25 12:30:11 2000 David A Helder * src/btp.c: Unref the iochannel after closing it. Mon Jan 24 11:20:00 2000 David A Helder * configure.in, NEWS, debian/changelog: Upped version to 0.0.11. The bug is serious enough to warrant a new release. * BUGS: Noted the bug was fixed * src/gtkctree-fix.c: Added. Fix for ctree seg fault bug. * src/Makefile.am: Added gtkctree-fix.c * src/gui.c: Now uses fix. Sun Jan 23 18:31:40 2000 David A Helder * Makefile.am (copyweb): Cleaned up rule. * src/util.c (file_exists): Added * src/gui.c (get_jm_glade_xml): Added. Call to get GladeXML object. Looks in appropriate directories. * src/backend.c: Put 'normal' values for UPDATE_TIME, SLOW_UPDATE_TIME, SWITCH_TO_SLOW_CHANNEL_TIME Sun Jan 23 15:28:57 2000 David A Helder * src/btp.c (btp_delete): Delete all nodes before deleting tree. Also, delete 'me' last. This could have caused a seg fault since btp_packet_send needed 'me' to send a packet and 'me' was getting deleted then accessed. * src/btp_packet.c (btp_packet_new): Added assertion that address dereference is not NULL. * src/backend.c (parse_slow_url): Added. If the URL is new and we are on this channel, join the slow URL. This helps ensure that people on the slow channel get our updates. * src/backend.c (parse_node): Call parse_slow_url. * src/backend.c (build_add_file, build_remove_file): If a non-root channel, also send add/remove on parent channel. * src/globals.h: Provide non-Gnu version of DEBUGP * src/gui.c (on_jmw_destroy): Changed shutdown message Fri Jan 21 17:46:07 2000 David A Helder * src/btp.c (btp_node_write_cb): Push BYE packets to the back of the queue, even if there's data. * src/btp.c (btp_node_read_cb): Once we've received a BYE packet, delete the rest of the packets and return. * src/btp.c (btp_node_delete_all): Delete _everything_ * src/btp.c (btp_node_connect_cb): Check if socket is NULL on connect. Not sure why this happens. * src/btp.c (btp_node_write_cb): Set write watch to 0 if nothing to send. Fri Jan 21 13:18:51 2000 David A Helder * src/btp.c (btp_node_delete_all): Fixed deleting code. * src/Makefile.am: Install (or uninstall) jm.glade to datadir/jm * src/gui.c: Look for jm.glade in datadir/jm Thu Jan 20 17:25:47 2000 David A Helder * NEWS: Updates * configure.in: Upped version to 10 (unreleased) * doc/notes.txt: Removed * src/jm.glade: Added vertical panes * src/jmftp.c (jmftp_delete): Remove timer _only_ if not-0. * src/gui.c: Added update_jmtext() - * src/backend.c: - Send file length in announcents. - Don't call gui_update so much - If channel goes down, just mark channel as down, don't delete it. * src/btp.c: Cleaned up delete functions. Many potential bugs fixed. * src/backend.[ch]: Added low bandwidth channel. Now switch main channel to a send-only channel after a while. * src/jmsmp.[ch]: Added send-only groups * src/btp.[ch]: Added send-only trees Wed Jan 19 23:13:47 2000 David A Helder * debian/rules: Clear LD_*. configure manually specifies gnet and gtk prefixes. * debian/control: Added section, fixed description * Makefile.am: Fixed deb rule