2008-03-04 Alexander Larsson * daemon/Makefile.am (gvfsd_ftp_SOURCES): Use correct case for ParseFTPList.h 2008-03-04 Alexander Larsson * client/gdaemonvfs.c: (_g_daemon_vfs_get_uri_for_mountspec): Fix crash with NULL host (like "ftp://") 2008-03-04 Alexander Larsson * client/gdaemonmount.c (g_daemon_mount_get_icon): Use fallbacks for mount icon. * NEWS: Update for release. 2008-03-04 Alexander Larsson * daemon/gvfsbackendcomputer.c: (mount_volume_from_drive): Avoid crash when mounting drive Fix leak. 2008-03-04 Alexander Larsson * hal/ghalmount.c: Fix deadlock when looking for cdrom icons. 2008-03-04 Benjamin Otte * daemon/gvfsbackendftp.c: (run_list_command): don't require \r as line ending for LIST commands. Fixes ftp.netbsd.org * hal/ghalvolumemonitor.c: (adopt_orphan_mount): unused variable 2008-03-04 Alexander Larsson * client/gdaemonmount.c: * client/gdaemonvolumemonitor.c: * hal/ghaldrive.c: * hal/ghalmount.c: * hal/ghalvolume.c: * hal/ghalvolumemonitor.[ch]: Properly lock around volume monitors and volume monitor objects. Emit all events in idles to avoid reentrancy issues. Fixed deadlock in #519599. 2008-03-04 Alexander Larsson * common/gmountsource.c: * common/gmounttracker.c: Work around problems with type registering when the common code is used in both daemon and client. 2008-03-04 Benjamin Otte * common/gmountsource.c: (ask_password_reply), (g_mount_source_ask_password_finish), (g_mount_source_ask_password), (op_ask_password_reply): * common/gmountsource.h: add an anonymous_out parameter for anonymous logins. * daemon/gvfsbackenddav.c: (soup_authenticate_interactive): * daemon/gvfsbackendsftp.c: (handle_login): * daemon/gvfsbackendsmb.c: (auth_callback): make the backends compile with the new parameter. They don't use anonymous logins. * daemon/gvfsbackendftp.c: (do_mount): make login work as users would expect it with anonymous logins. Fixes bug #520131 2008-03-04 Carlos Garcia Campos * common/gmountspec.c: (g_mount_spec_copy): * daemon/gvfsdaemon.c: (g_vfs_daemon_initiate_mount): * daemon/main.c: (main): Fix memory leaks. 2008-03-04 Alexander Larsson * client/gdaemonvfs.c: Avoid duplications in supported_uris. * daemon/smb-browse.mount.in: * daemon/smb.mount.in: Add scheme info so smb is listed in supported_uris again. 2008-03-03 Christian Kellner * daemon/gvfsbackendhttp.c: * daemon/gvfsbackendhttp.h: Remove unecessary message_new_from_xxx functions. Prefix all public utility functions that need the backend with http_backend_, i.e. rename g_vfs_backend_uri_for_filename() to http_backend_uri_for_filename(). Create http_backend_send_message(), http_backend_queue_message() convenience functions which will pick up the right SoupSession. * daemon/gvfsbackenddav.c: Port to new utility functions and http_backend_xx namespace. Clean up error handling and remove the const keyword from most SoupURI variables. 2008-03-03 David Zeuthen Add write support to gphoto2 backend. Also performance enhancements for querying, enumerating and reading. Fixes bug #519651 * daemon/gvfsbackendgphoto2.c: (monitor_proxy_free), (DEBUG), (write_handle_free), (ensure_not_dirty), (dup_for_gphoto2), (monitors_emit_internal), (monitors_emit_created), (monitors_emit_deleted), (monitors_emit_changed), (caches_invalidate_all), (caches_invalidate_free_space), (caches_invalidate_dir), (caches_invalidate_file), (get_error_from_gphoto2), (release_device), (g_vfs_backend_gphoto2_finalize), (_gphoto2_logger_func), (g_vfs_backend_gphoto2_init), (find_udi_for_device), (_hal_device_removed), (split_filename_with_ignore_prefix), (add_ignore_prefix), (file_get_info), (is_directory), (is_regular), (is_directory_empty), (ensure_ignore_prefix), (do_mount), (try_mount), (do_unmount), (free_read_handle), (do_open_for_read), (try_read), (try_seek_on_read), (do_close_read), (do_query_info), (try_query_info), (do_enumerate), (try_enumerate), (do_query_fs_info), (try_query_fs_info), (do_make_directory), (do_slow_file_rename_in_same_dir), (do_file_rename_in_same_dir), (do_dir_rename_in_same_dir), (do_set_display_name), (do_delete), (do_create_internal), (do_create), (do_replace), (do_append_to), (do_write), (do_seek_on_write), (commit_write_handle), (do_close_write), (do_move), (vfs_dir_monitor_destroyed), (do_create_dir_monitor), (vfs_file_monitor_destroyed), (do_create_file_monitor), (g_vfs_backend_gphoto2_class_init): 2008-03-03 Carlos Garcia Campos * daemon/mount.c: (read_mountable_config): Fix memory leak. 2008-03-03 Benjamin Otte * client/gdaemonvfs.c: (fill_mountable_info): properly parse aliases 2008-03-03 Benjamin Otte * client/gvfsuriutils.c: (g_vfs_decode_uri): revert yesterday's commit. It broke the obex and gphoto backends. We now parse hostnames different for internet hosts. * daemon/ftp.mount.in: Parse hostnames different. 2008-03-03 Benjamin Otte * daemon/gvfsbackendftp.c: (ftp_connection_receive), (ftp_connection_sendv), (g_vfs_backend_ftp_pop_connection), (do_mount): fix server disconnect on timeout. Side effect is that the ftp backend just spawned multiple connections support. 2008-03-03 Alexander Larsson * common/gdbusutils.[ch]: Add _g_dbus_message_iter_append_args_valist and _g_dbus_message_iter_append_args. * common/gvfsdaemonprotocol.h: Add G_VFS_DBUS_MOUNTTRACKER_OP_LIST_MOUNTABLE_INFO * client/Makefile.am: * client/gdaemonvfs.c: Use listMountableInfo to get supported uri schemes and information for default uri handling. Handle default port in uris and if host_is_inet normalize hostnames, including removing ipv6 brackets. * client/sftpuri.c: Removed, as the previous work replaces it * daemon/gvfsdaemonutils.c: (gvfs_file_info_populate_content_types): Fix uninitialized variable warning. * daemon/mount.c: Read new mountfile info and implement list_mountable_info. * daemon/sftp.mount.in: Add info for sftp 2008-03-03 Christian Kellner * daemon/gvfsjob.c: (g_vfs_job_try): Make sure the g_object_unref call is _before_ the return call. Fixes bug #519867 2008-03-03 Cosimo Cecchi * daemon/gvfsbackendtrash.c: (do_mount): Create the root monitor for trash when mounting. (#509740). 2008-03-03 Benjamin Otte * daemon/gvfsbackendftp.c: (ftp_connection_receive): dynamically resize the read buffer. This allows receiving the huge welcome messages some ftp servers think are cool. 2008-03-03 Benjamin Otte * daemon/gvfsbackendftp.c: (ftp_connection_parse_features), (ftp_connection_use), (ftp_connection_ensure_data_connection): implement EPSV. This should make IPv6 work. 2008-03-03 Bastien Nocera * daemon/gvfsbackendobexftp.c (do_mount), (do_open_for_read), (do_read), (do_query_info), (do_query_fs_info), (do_enumerate), (do_delete), (do_make_directory): Fix a crasher when mounting fails, by not freeing the error just before using it (duh!) (Closes: #519752), Fix a few error paths leaking errors 2008-03-03 Luca Ferretti * daemon/gvfsbackendftp.c: (do_query_info): Make "file don't exist" message conform to other backends; no, it isn't a string freeze break, the message yet exists elsewhere. 2008-03-02 Benjamin Otte * daemon/gvfsbackendftp.c: (ftp_filename_construct): use g_build_path() to not get excess slashes in paths 2008-03-02 Benjamin Otte * daemon/gvfsbackendftp.c: (ftp_connection_try_cd), (process_line), (do_query_info), (do_move), (g_vfs_backend_ftp_class_init): implement move vfunc 2008-03-02 Carlos Garcia Campos * common/gmountsource.c: (ask_password_reply): Treat DBus output paramaters that contain "" as NULL. It fixes the sftp backend when a username is provided by the user. 2008-03-02 Benjamin Otte * daemon/gvfsbackendftp.c: (do_open_for_read), (do_start_write), (do_make_directory): push back connection if we fail starting a read/write 2008-03-02 Benjamin Otte * client/gvfsuriutils.c: (g_vfs_decode_uri): don't pass the [] when parsing IPv6 addresses 2008-03-02 Benjamin Otte * daemon/gvfsbackendftp.c: (do_make_directory), (g_vfs_backend_ftp_class_init): implement make_directory 2008-03-02 Benjamin Otte * daemon/gvfsbackendftp.c: (do_delete), (g_vfs_backend_ftp_class_init): implement delete 2008-03-02 Benjamin Otte * daemon/gvfsbackendftp.c: redo error handling: We now store the error and the job in the FtpConnection. This way we don't have to handle errors in the outer functions and can just "if (conn->error) return FALSE;" in the inner functions. 2008-03-01 David Zeuthen * daemon/gvfsbackendcdda.c (do_mount): Avoid calling cddio_cddap_close() twice on an error path. 2008-03-01 Benjamin Otte * daemon/gvfsbackendftp.c: (run_list_command): close the data connection before trying to receive the OK. Some servers send it out only after the connection was closed properly and otherwise cause stalls. 2008-03-01 Benjamin Otte * daemon/gvfsbackendftp.c: (do_mount): use 0 as port in the keyring when it's the default ftp port. Stops the access dialog fro printing the port name. 2008-03-01 Bastien Nocera * daemon/gvfsbackendobexftp.c (_query_file_info_helper): Fix another case where the icon name was wrong for the root folder (Helps: #519369) 2008-03-01 Benjamin Otte * daemon/Makefile.am: * daemon/ParseFTPList.c: * daemon/ParseFTPList.h: * daemon/gvfsbackendftp.c: (ftp_connection_cd), (process_line), (run_list_command), (do_query_info), (do_enumerate): rewrite directory enumeration and query_info by using the LIST parsing code from Mozilla. It was the only code I could find that was LGPL licensed, even though it looks way out of date. Also, error messages are handled way better and the code even copes somewhat with symlinks. 2008-02-29 Bastien Nocera * daemon/gvfsbackendobexftp.c (_get_icon_from_type): Use better icons for the devices 2008-02-29 Bastien Nocera * daemon/gvfsbackendobexftp.c (_get_icon_from_type), (_get_type_from_class), (_get_device_properties), (do_mount): When getting the remote device's name, also get its class, so we can use device specific icons instead of the standard Bluetooth icon (Closes: #519369) 2008-02-29 Benjamin Otte * daemon/gvfsbackendftp.c: (ftp_error_set_from_response), (ftp_connection_parse_features), (ftp_filename_from_gvfs_path), (ftp_filename_to_gvfs_path), (ftp_filename_construct), (do_open_for_read), (do_create), (do_append), (do_replace), (do_set_display_name), (g_vfs_backend_ftp_class_init): introduce a differentiation between gvfs paths and ftp filenames and use it. Also implement set_display_name. 2008-02-29 Benjamin Otte * common/gdbusutils.c: (dbus_source_add_watch): * daemon/dbus-gmain.c: (connection_setup_add_watch): use the right names for dbus version macros 2008-02-29 Bastien Nocera * daemon/gvfsbackendobexftp.c (is_connected), (do_mount), (do_open_for_read), (is_busy), (do_read), (do_query_info), (do_query_fs_info), (do_enumerate), (do_delete), (do_make_directory): Don't use a temporary error to set jobs as failed, use g_vfs_job_failed instead Error out properly when trying to open a directory for read 2008-02-29 Bastien Nocera * daemon/gvfsbackendobexftp.c (g_vfs_backend_obexftp_finalize), (_retrieve_folder_listing), (_query_file_info_helper), (do_open_for_read), (do_query_info), (do_query_fs_info), (do_enumerate), (do_delete): Use a convenience function to load directory listings, implement a simple cache there that keeps folder listings for 3 seconds (should speed up folder enumeration followed by info fetching, as well as checking for non-existant files) 2008-02-29 Alexander Larsson * daemon/gvfsdaemonutils.[ch]: Rename gvfs_file_info_populate_names() to gvfs_file_info_populate_names_as_local() and add docs explaining when to use this function and when not to. 2008-02-29 Alexander Larsson * daemon/gvfsdaemonutils.c: (gvfs_file_info_populate_content_types): Use g_content_type_get_icon() for the icon mapping. Use folder, not folder-remote for icon. I don't think we should use folder-remote for things like shares, not normal folders. 2008-02-29 Cosimo Cecchi * daemon/gvfsbackendcomputer.c: (recompute_files), (mount_volume_from_drive), (report_no_media_error), (poll_for_media_cb), (try_mount_mountable): Implement media polling for Computer backend, handling the case when no media is in the drive. Also adds a new string. (#514135) 2008-02-29 Wouter Bolsterlee * daemon/gvfsbackendnetwork.c (g_vfs_network_daemon_init): Added another translator comment. 2008-02-29 Wouter Bolsterlee * daemon/gvfsbackendftp.c (do_mount): Added translator comment. 2008-02-29 Wouter Bolsterlee * daemon/gvfsbackendftp.c (g_vfs_backend_ftp_pop_connection): Reuse existing string to reduce the impact of the string freeze breaks. 2008-02-28 Benjamin Otte * daemon/gvfsbackendftp.c: (do_mount): actually translate the display name 2008-02-28 A. Walton * daemon/gvfsbackendnetwork.c: (g_vfs_network_daemon_init): * daemon/gvfsbackendnetwork.h: Set the default name for the network backend to prevent possible confusion about "NETWORK Filesystem Service". 2008-02-28 Benjamin Otte * daemon/gvfsbackendftp.c: (do_mount): really check for errors correctly. I need to go to bed. 2008-02-28 Benjamin Otte * daemon/gvfsbackendftp.c: (do_mount): check for errors correctly 2008-02-28 Benjamin Otte reviewed by: A. Walton * daemon/daemon-main-generic.c: (main): * daemon/daemon-main.c: (daemon_setup): * daemon/daemon-main.h: * daemon/gvfsbackendcdda.c: (g_vfs_cdda_daemon_init): * daemon/gvfsbackendcdda.h: * daemon/gvfsbackendsmb.c: (g_vfs_smb_daemon_init): * daemon/gvfsbackendsmb.h: * daemon/gvfsbackendsmbbrowse.c: (g_vfs_smb_browse_daemon_init): * daemon/gvfsbackendsmbbrowse.h: provide default application names for the daemons. This is necessary to avoid gnome-keyring from saying "Application" wants access to the keyring, which could sound very evil for a casual user. Adds some more strings for the poor translators, too! 2008-02-28 Benjamin Otte * daemon/gvfsbackendftp.c: (do_mount), (try_mount): rewrite login code to use the keyring if available. Also fix mount specs to be unique and display names to list the user while at it. 2008-02-28 A. Walton * daemon/Makefile.am: Really disable FTP if we don't HAVE_HTTP. 2008-02-28 A. Walton * daemon/gvfsbackendnetwork.c: (recompute_files): Fixup DNS-SD exposed links to actually link to the service provided. 2008-02-28 Christian Kellner * daemon/gvfsbackenddav.c (g_vfs_backend_dav_init): Mark the dav backend as user visible. 2008-02-28 Benjamin Otte * daemon/gvfsbackendftp.c: (ftp_connection_create), (ftp_connection_login), (ftp_connection_use), (ftp_connection_new): split out login code, so we can try multiple auths when some fail. 2008-02-28 Benjamin Otte * daemon/gvfsdaemonutils.c: (gvfs_file_info_populate_default), (gvfs_file_info_populate_names), (gvfs_file_info_populate_content_types): * daemon/gvfsdaemonutils.h: add functions that are supposed to set default values on a remote file info structure, so we don't duplicate the code across multiple backends. * daemon/gvfsbackendftp.c: (ftp_error_set_from_response), (ftp_connection_new), (file_info_get_flags), (file_info_query): use it. 2008-02-28 Alexander Larsson * client/gdaemonvolumemonitor.c: (mount_added): (mount_removed): Emit signals outside of the lock to avoid deadlocks (#519250) 2008-02-28 Bastien Nocera * daemon/gvfsbackendobexftp-fl-parser.c (fl_parser_start_node_cb): Fix the content-type of directories (inode/directory, not x-directory/normal as in gnome-vfs) Set file icons from the content-type * daemon/gvfsbackendobexftp.c (_change_directory): Add a FIXME, trying to change to a non-existant directory errors out with "permission denied", which isn't the case (_query_file_info_helper): set the right content-type and icon for the root folder (is_connected), (do_mount): Wait until we're connected to exit from do_mount() (do_open_for_read): Fix a crash when opening an inexistant file for read 2008-02-28 Benjamin Otte * daemon/gvfsbackendftp.c: (ftp_error_set_from_response), (file_info_query), (do_query_info): Set sane error messages for ftp error codes. Also remove some excessive debug messages. 2008-02-28 Benjamin Otte * daemon/gvfsbackendftp.c: (do_mount): fix typo (thanks Andre) 2008-02-28 Benjamin Otte * daemon/gvfsbackendftp.c: (ftp_connection_sendv), (ftp_connection_send), (do_start_write), (do_create), (do_append), (do_replace), (g_vfs_backend_ftp_class_init): implement append 2008-02-28 Benjamin Otte gcc warning fixes to be able to compile with -Werror: * daemon/gvfsbackendburn.c: mark virtual_node_ref as unused, because it is * test/benchmark-common.c: (benchmark_timeout): signal handlers take an int argument. 2008-02-28 Benjamin Otte * configure.ac: list FTP in configuration summary, too 2008-02-28 Benjamin Otte * daemon/Makefile.am: * daemon/gvfsbackendftp.c: * daemon/gvfsbackendftp.h: drop my current FTP code and continue development in here. Should make testing easier for adventurous people. 2008-02-28 Bastien Nocera * daemon/gvfsbackendobexftp.c (do_query_info): Add missing mutex unlock, duh! 2008-02-28 Benjamin Otte * daemon/gvfsjobenumerate.c: (g_vfs_job_enumerate_add_infos): * daemon/gvfsjobenumerate.h: constify list argument, so ownership is apparent. 2008-02-28 Bastien Nocera * daemon/gvfsbackendobexftp-fl-parser.c (fl_parser_start_node_cb): Set the content-type on files by having a good guess if we didn't get a mime-type from the folder listings 2008-02-27 Benjamin Otte * programs/gvfs-mount.c: (prompt_for): don't mess up my terminal when entering passwords 2008-02-27 Bastien Nocera * client/test-uri-utils.c: add test for obex URIs * configure.ac: Require expat for the obexftp backend * daemon/Makefile.am: * daemon/gvfsbackendobexftp-cap-parser.c: * daemon/gvfsbackendobexftp-cap-parser.h: * daemon/gvfsbackendobexftp-fl-parser.c: * daemon/gvfsbackendobexftp-fl-parser.h: Added ObexFTP folder listing and capability parser from gnome-vfs-obexftp, ported to gio * daemon/gvfsbackendobexftp.c: * daemon/gvfsbackendobexftp.h: * daemon/obexftp-marshal.list: * daemon/obexftp.mount.in: Add read-only ObexFTP backend (Closes: #509621) 2008-02-27 Luca Ferretti * daemon/gvfsbackendcdda.c: (do_query_info): Make "file don't exist" message conform to other backends; no, it isn't a string freeze break, the message yet exists elsewhere. 2008-02-27 Benjamin Otte * common/gmountsource.c: (g_mount_source_ask_question_finish): Set out parameters for questions, too. 2008-02-27 Benjamin Otte * common/gmountsource.c: (g_mount_source_ask_password_finish): Set out parameters even in error case. 2008-02-26 Christian Kellner * daemon/gvfsbackenddav.c: (do_delete): Correct error domain in case delete failed. 2008-02-26 Christian Kellner * daemon/gvfsbackenddav.c: Redo authentication and implement keyring support. Based on a patch by Carlos Garcia Campos. 2008-02-26 Alexander Larsson * programs/gvfs-bash-completion.sh: * programs/gvfs-ls.c: Better completion 2008-02-26 Alexander Larsson * daemon/gvfsjobmount.c (run): No need to ref backend specifically now, as the core refs the job and the job refs the backend. Revert that change. 2008-02-26 Alexander Larsson * daemon/gvfsjob.c: (g_vfs_job_run): (g_vfs_job_try): Ref job while calling out. * daemon/gvfsjobmount.c: Own ref to backend while job is alive. 2008-02-26 Carlos Garcia Campos * daemon/gvfsbackendsmb.c: (auth_callback): Fix parameters order in keyring lookup call. 2008-02-26 Yanko Kaneti * configure.ac: explicitly depend on libxml-2.0 for building the dav backend. 2008-02-26 Benjamin Otte * common/gmountsource.c: (ask_password_reply), (g_mount_source_ask_password_async), (ask_question_reply), (g_mount_source_ask_question_async): make errors say "Internal Error" instead of failing 2008-02-26 Benjamin Otte * daemon/gvfsjobmount.c: (run), (try): use ref/unref pair to stop backend from going away when the mount fails 2008-02-26 Benjamin Otte * daemon/gvfsjobmount.c: (mount_failed): no g_warning for failed monts, please 2008-02-26 Benjamin Otte * daemon/gvfsjob.c: (g_vfs_job_failed_from_error): * daemon/gvfsjob.h: make the error argument const 2008-02-26 Alexander Larsson * client/gdaemonvolumemonitor.c: Use standard lock instead of recursive lock. 2008-02-25 David Zeuthen * configure.ac: fix typo in AC_ARG_ENABLE for gphoto2 2008-02-25 Alexander Larsson * common/gdbusutils.c: * daemon/dbus-gmain.c: Only use dbus_watch_get_unix_fd for dbus >= 1.1.1 2008-02-25 Alexander Larsson * configure.ac: Post release version bump === gvfs 0.1.8 ===