changeset 63:41b71c4e5076

2002-11-2333 Brian Masney <masneyb@gftp.org> * lib/local.c lib/rfc959.c lib/rfc2068.c lib/ssh.c lib/sshv2.c lib/gftp.h - added swap_socks function to gftp_request structure * lib/misc.c lib/protocols.c - move swap_socks() from misc.c to protocols.c (renamed to gftp_swap_socks) * src/gtk/misc-gtk.c src/gtk/transfer.c - removed fix_display() * src/gtk/delete_dialog.c src/gtk/transfer.c - changed all occurances of swap_socks() to gftp_swap_socks() * src/gtk/gftp-gtk.c src/gtk/gftp-gtk.h - removed gftp_is_started variable
author masneyb
date Sat, 23 Nov 2002 13:45:05 +0000
parents 1af41fb08509
children 29128554eb86
files ChangeLog lib/gftp.h lib/local.c lib/misc.c lib/protocols.c lib/rfc2068.c lib/rfc959.c lib/ssh.c lib/sshv2.c src/gtk/delete_dialog.c src/gtk/gftp-gtk.c src/gtk/gftp-gtk.h src/gtk/misc-gtk.c src/gtk/transfer.c
diffstat 14 files changed, 74 insertions(+), 62 deletions(-) [+]
line wrap: on
line diff
--- a/ChangeLog	Fri Nov 22 16:04:27 2002 +0000
+++ b/ChangeLog	Sat Nov 23 13:45:05 2002 +0000
@@ -1,3 +1,18 @@
+2002-11-2333 Brian Masney <masneyb@gftp.org>
+	* lib/local.c lib/rfc959.c lib/rfc2068.c lib/ssh.c lib/sshv2.c
+	lib/gftp.h - added swap_socks function to gftp_request structure
+
+	* lib/misc.c lib/protocols.c - move swap_socks() from misc.c to 
+	protocols.c (renamed to gftp_swap_socks)
+
+	* src/gtk/misc-gtk.c src/gtk/transfer.c - removed fix_display() 
+
+	* src/gtk/delete_dialog.c src/gtk/transfer.c - changed all occurances of
+	swap_socks() to gftp_swap_socks()
+
+	* src/gtk/gftp-gtk.c src/gtk/gftp-gtk.h - removed gftp_is_started 
+	variable
+
 2002-11-21 Brian Masney <masneyb@gftp.org>
 	* lib/local.c (local_put_file) - small fix
 
@@ -273,7 +288,7 @@
 
 	* cvsclean - added this script
 
-	* *.[ch] - added $Id: ChangeLog,v 1.37 2002/11/22 16:04:27 masneyb Exp $ tags
+	* *.[ch] - added $Id: ChangeLog,v 1.38 2002/11/23 13:45:03 masneyb Exp $ tags
 
 	* debian/* - updated files from Debian maintainer
 
--- a/lib/gftp.h	Fri Nov 22 16:04:27 2002 +0000
+++ b/lib/gftp.h	Sat Nov 23 13:45:05 2002 +0000
@@ -291,6 +291,8 @@
   int (*parse_url)			( gftp_request * request,
 					  const char *url );
   void (*set_config_options)		( gftp_request * request );
+  void (*swap_socks)			( gftp_request * dest,
+					  gftp_request * source );
 
   /* Options */
   gftp_transfer_type transfer_type;	/* Passive or non-passive (FTP only) */
@@ -562,9 +564,6 @@
 
 gftp_file * copy_fdata 			( gftp_file * fle );
 
-void swap_socks 			( gftp_request * dest, 
-					  gftp_request * source );
-
 int compare_request 			( gftp_request * request1, 
 					  gftp_request * request2, 
 					  int compare_dirs );
@@ -842,5 +841,8 @@
 					  int fd, 
 					  int non_blocking );
 
+void gftp_swap_socks 			( gftp_request * dest, 
+					  gftp_request * source );
+
 #endif
 
--- a/lib/local.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/lib/local.c	Sat Nov 23 13:45:05 2002 +0000
@@ -684,6 +684,7 @@
   request->site = NULL;
   request->parse_url = NULL;
   request->set_config_options = NULL;
+  request->swap_socks = NULL;
   request->url_prefix = "file";
   request->protocol_name = "Local";
   request->need_hostport = 0;
--- a/lib/misc.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/lib/misc.c	Sat Nov 23 13:45:05 2002 +0000
@@ -502,21 +502,6 @@
 }
 
 
-void
-swap_socks (gftp_request * dest, gftp_request * source)
-{
-  dest->sockfd = source->sockfd;
-  dest->datafd = source->datafd;
-  dest->cached = 0;
-  if (!source->always_connected)
-    {
-      source->sockfd = -1;
-      source->datafd = -1;
-      source->cached = 1;
-    }
-}
-
-
 int
 compare_request (gftp_request * request1, gftp_request * request2,
                  int compare_dirs)
--- a/lib/protocols.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/lib/protocols.c	Sat Nov 23 13:45:05 2002 +0000
@@ -2154,3 +2154,24 @@
 }
 
 
+void
+gftp_swap_socks (gftp_request * dest, gftp_request * source)
+{
+  g_return_if_fail (dest != NULL);
+  g_return_if_fail (source != NULL);
+  g_return_if_fail (dest->protonum == source->protonum);
+
+  dest->sockfd = source->sockfd;
+  dest->datafd = source->datafd;
+  dest->cached = 0;
+  if (!source->always_connected)
+    {
+      source->sockfd = -1;
+      source->datafd = -1;
+      source->cached = 1;
+    }
+
+  if (dest->swap_socks)
+    dest->swap_socks (dest, source);
+}
+
--- a/lib/rfc2068.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/lib/rfc2068.c	Sat Nov 23 13:45:05 2002 +0000
@@ -780,6 +780,7 @@
   request->chmod = NULL;
   request->site = NULL;
   request->parse_url = NULL;
+  request->swap_socks = NULL;
   request->set_config_options = rfc2068_set_config_options;
   request->url_prefix = "http";
   request->protocol_name = "HTTP";
--- a/lib/rfc959.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/lib/rfc959.c	Sat Nov 23 13:45:05 2002 +0000
@@ -1143,6 +1143,7 @@
   request->set_file_time = NULL;
   request->site = rfc959_site;
   request->parse_url = NULL;
+  request->swap_socks = NULL;
   request->set_config_options = rfc959_set_config_options;
   request->url_prefix = "ftp";
   request->protocol_name = "FTP";
--- a/lib/ssh.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/lib/ssh.c	Sat Nov 23 13:45:05 2002 +0000
@@ -1161,6 +1161,7 @@
   request->site = NULL;
   request->parse_url = NULL;
   request->set_config_options = ssh_set_config_options;
+  request->swap_socks = NULL;
   request->url_prefix = "ssh";
   request->protocol_name = "SSH";
   request->need_hostport = 1;
--- a/lib/sshv2.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/lib/sshv2.c	Sat Nov 23 13:45:05 2002 +0000
@@ -1868,6 +1868,17 @@
 }
 
 
+static void
+sshv2_swap_socks (gftp_request * dest, gftp_request * source)
+{
+  sshv2_params * sparams, * dparams;
+
+  sparams = source->protocol_data;
+  dparams = dest->protocol_data;
+  dparams->id = sparams->id;
+}
+
+
 void
 sshv2_init (gftp_request * request)
 {
@@ -1901,6 +1912,7 @@
   request->site = NULL;
   request->parse_url = NULL;
   request->set_config_options = sshv2_set_config_options;
+  request->swap_socks = sshv2_swap_socks;
   request->url_prefix = "ssh2";
   request->protocol_name = "SSH2";
   request->need_hostport = 1;
--- a/src/gtk/delete_dialog.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/src/gtk/delete_dialog.c	Sat Nov 23 13:45:05 2002 +0000
@@ -120,7 +120,7 @@
     return;
 
   gtk_clist_freeze (GTK_CLIST (wdata->listbox));
-  swap_socks (transfer->fromreq, wdata->request);
+  gftp_swap_socks (transfer->fromreq, wdata->request);
   if (wdata->request->use_threads)
     {
       wdata->request->stopable = 1;
@@ -144,7 +144,7 @@
     }
   else
     ret = do_delete_thread (transfer);
-  swap_socks (wdata->request, transfer->fromreq);
+  gftp_swap_socks (wdata->request, transfer->fromreq);
   free_tdata (transfer);
 
   if (!GFTP_IS_CONNECTED (wdata->request))
@@ -209,7 +209,7 @@
       return;
     }
 
-  swap_socks (transfer->fromreq, wdata->request);
+  gftp_swap_socks (transfer->fromreq, wdata->request);
 
   if (transfer->fromreq->use_threads)
     {
@@ -250,7 +250,7 @@
       return;
     }
 
-  swap_socks (wdata->request, transfer->fromreq);
+  gftp_swap_socks (wdata->request, transfer->fromreq);
 
   askdel (transfer);
 }
--- a/src/gtk/gftp-gtk.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/src/gtk/gftp-gtk.c	Sat Nov 23 13:45:05 2002 +0000
@@ -38,7 +38,6 @@
 pthread_mutex_t transfer_mutex = PTHREAD_MUTEX_INITIALIZER;
 pthread_mutex_t log_mutex = PTHREAD_MUTEX_INITIALIZER;
 gftp_graphic * gftp_icon;
-int gftp_is_started = 0;
 sigjmp_buf jmp_environment;
 volatile int use_jmp_environment = 0;
 pthread_t main_thread_id;
@@ -1045,7 +1044,6 @@
   sortrows (GTK_CLIST (window2.listbox), *window2.sortcol, &window2);
 
   init_gftp (argc, argv, window);
-  gftp_is_started = 1;
 
   GDK_THREADS_ENTER ();
   gtk_main ();
--- a/src/gtk/gftp-gtk.h	Fri Nov 22 16:04:27 2002 +0000
+++ b/src/gtk/gftp-gtk.h	Sat Nov 23 13:45:05 2002 +0000
@@ -148,7 +148,6 @@
 extern GtkItemFactory * factory;
 extern pthread_mutex_t transfer_mutex, log_mutex;
 extern gftp_graphic * gftp_icon;
-extern int gftp_is_started;
 extern sigjmp_buf jmp_environment;
 extern volatile int use_jmp_environment;
 extern pthread_t main_thread_id;
--- a/src/gtk/misc-gtk.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/src/gtk/misc-gtk.c	Sat Nov 23 13:45:05 2002 +0000
@@ -25,28 +25,6 @@
 
 
 void
-fix_display (void)
-{
-  int ret;
-
-  if (!gftp_is_started)
-    return;
-
-  ret = 1;
-  while (ret)
-    {
-      GDK_THREADS_LEAVE ();
-#if GTK_MAJOR_VERSION == 1
-      ret = g_main_iteration (FALSE);
-#else
-      ret = g_main_context_iteration (NULL, FALSE);
-#endif
-
-    }
-}
-
-
-void
 remove_files_window (gftp_window_data * wdata)
 {
   wdata->show_selected = 0;
--- a/src/gtk/transfer.c	Fri Nov 22 16:04:27 2002 +0000
+++ b/src/gtk/transfer.c	Sat Nov 23 13:45:05 2002 +0000
@@ -164,8 +164,6 @@
   void *success;
 
   gtk_label_set (GTK_LABEL (wdata->hoststxt), _("Receiving file names..."));
-  if (gftp_is_started)
-    fix_display ();
 
   wdata->show_selected = 0;
   if (wdata->files == NULL)
@@ -436,8 +434,8 @@
 
   if (transfer->files != NULL)
     {
-      swap_socks (transfer->fromreq, fromwdata->request);
-      swap_socks (transfer->toreq, towdata->request);
+      gftp_swap_socks (transfer->fromreq, fromwdata->request);
+      gftp_swap_socks (transfer->toreq, towdata->request);
 
       if (transfer->fromreq->use_threads || 
           (transfer->toreq && transfer->toreq->use_threads))
@@ -478,8 +476,8 @@
           return;
         } 
 
-      swap_socks (fromwdata->request, transfer->fromreq);
-      swap_socks (towdata->request, transfer->toreq);
+      gftp_swap_socks (fromwdata->request, transfer->fromreq);
+      gftp_swap_socks (towdata->request, transfer->toreq);
     }
 
   if (transfer->files != NULL)
@@ -1411,10 +1409,10 @@
            fromreq->always_connected) && tdata->fromreq->sockfd > 0 &&
           compare_request (tdata->fromreq, fromreq, 0))
 	{
-          swap_socks (((gftp_window_data *) tdata->towdata)->request, 
-                      tdata->toreq);
-          swap_socks (((gftp_window_data *) tdata->fromwdata)->request, 
-                      tdata->fromreq);
+          gftp_swap_socks (((gftp_window_data *) tdata->towdata)->request, 
+                           tdata->toreq);
+          gftp_swap_socks (((gftp_window_data *) tdata->fromwdata)->request, 
+                           tdata->fromreq);
 	}
       else
         {
@@ -1466,10 +1464,10 @@
           !((gftp_window_data *) tdata->fromwdata)->request->stopable &&
           compare_request (tdata->fromreq, ((gftp_window_data *) tdata->fromwdata)->request, 0))
 	{
-          swap_socks (tdata->toreq, 
-                      ((gftp_window_data *) tdata->towdata)->request);
-          swap_socks (tdata->fromreq, 
-                      ((gftp_window_data *) tdata->fromwdata)->request);
+          gftp_swap_socks (tdata->toreq, 
+                           ((gftp_window_data *) tdata->towdata)->request);
+          gftp_swap_socks (tdata->fromreq, 
+                           ((gftp_window_data *) tdata->fromwdata)->request);
 	  update_window_info ();
 	}
       transfer_in_progress++;