Tidy up the SERIOUS NETWORK ERROR fixes
[sgt/putty] / scp.c
diff --git a/scp.c b/scp.c
index aca1cf3..8237f90 100644 (file)
--- a/scp.c
+++ b/scp.c
@@ -1,11 +1,15 @@
 /*
- *  scp.c  -  Scp (Secure Copy) client for PuTTY.
- *  Joris van Rantwijk, Simon Tatham
+ * scp.c  -  Scp (Secure Copy) client for PuTTY.
+ * Joris van Rantwijk, Simon Tatham
  *
- *  This is mainly based on ssh-1.2.26/scp.c by Timo Rinne & Tatu Ylonen.
- *  They, in turn, used stuff from BSD rcp.
- *
- *  Adaptations to enable connecting a GUI by L. Gunnarsson - Sept 2000
+ * This is mainly based on ssh-1.2.26/scp.c by Timo Rinne & Tatu Ylonen.
+ * They, in turn, used stuff from BSD rcp.
+ * 
+ * (SGT, 2001-09-10: Joris van Rantwijk assures me that although
+ * this file as originally submitted was inspired by, and
+ * _structurally_ based on, ssh-1.2.26's scp.c, there wasn't any
+ * actual code duplicated, so the above comment shouldn't give rise
+ * to licensing issues.)
  */
 
 #include <windows.h>
@@ -87,7 +91,7 @@ void logevent(char *string)
 {
 }
 
-void ldisc_send(char *buf, int len)
+void ldisc_send(char *buf, int len, int interactive)
 {
     /*
      * This is only here because of the calls to ldisc_send(NULL,
@@ -371,8 +375,6 @@ int from_backend(int is_stderr, char *data, int datalen)
        return 0;
     }
 
-    inbuf_head = 0;
-
     /*
      * If this is before the real session begins, just return.
      */
@@ -600,6 +602,15 @@ static void do_cmd(char *host, char *user, char *cmd)
        cfg.port = portnumber;
 
     /*
+     * Disable scary things which shouldn't be enabled for simple
+     * things like SCP and SFTP: agent forwarding, port forwarding,
+     * X forwarding.
+     */
+    cfg.x11_forward = 0;
+    cfg.agentfwd = 0;
+    cfg.portfwd[0] = cfg.portfwd[1] = '\0';
+
+    /*
      * Attempt to start the SFTP subsystem as a first choice,
      * falling back to the provided scp command if that fails.
      */