Roxen.git
/
server
/
plugins
/
protocols
/
ftp.pike
version
»
Context lines:
10
20
40
80
file
none
3
Roxen.git/server/plugins/protocols/ftp.pike:1:
// This is a roxen protocol module. // Copyright © 1997 - 2001, Roxen IS. /* * FTP protocol mk 2 *
-
* $Id: ftp.pike,v 2.
91
2004/05/17 13:
16
:
09
mani Exp $
+
* $Id: ftp.pike,v 2.
92
2004/05/17 13:
17
:
23
mani Exp $
* * Henrik Grubbström <grubba@roxen.com> */ /* * TODO: * * How much is supposed to be logged? */
Roxen.git/server/plugins/protocols/ftp.pike:1728:
privs = 0; Stdio.File raw_connection = f; if (use_ssl) { f = (object)SSL.sslfile(f, port_obj->ctx, 1, 0); } f->set_nonblocking(lambda(mixed ignored, string data) { DWRITE("FTP: async_connect ok. Got data.\n");
-
f->set_nonblocking(0,0,0);
+
f->set_nonblocking(0,0,0
,0,0
);
fun(f, data, @args); }, lambda(mixed ignored) { DWRITE("FTP: async_connect ok.\n");
-
f->set_nonblocking(0,0,0);
+
f->set_nonblocking(0,0,0
,0,0
);
fun(f, "", @args); }, lambda(mixed ignored) { DWRITE("FTP: connect_and_send failed\n"); destruct(f); fun(0, 0, @args);
-
+
},
+
lambda(mixed ignored) {
+
DWRITE("FTP: connect_and_send failed\n");
+
destruct(f);
+
fun(0, 0, @args);
}); #ifdef FD_DEBUG mark_fd(raw_connection->query_fd(), sprintf("ftp communication: %s:%d -> %s:%d", local_addr, local_port - 1, dataport_addr, dataport_port)); #endif if(catch(raw_connection->connect(dataport_addr, dataport_port))) {
Roxen.git/server/plugins/protocols/ftp.pike:2777:
if (stringp(auth_user->homedir())) { // Check if it is possible to cd to the users home-directory. string home = auth_user->homedir(); if ((home == "") || (home[-1] != '/')) { home += "/"; } // Compatibility... master_session->misc->home = home;
-
array(int)|object st = conf->stat_file(home,
master_
session);
+
object session = RequestID2(master_session);
+
session->method = "STAT";
+
array(int)|object st = conf->stat_file(home, session);
if (st && (st[1] < 0)) { cwd = home; } } logged_in = 1; send(230, ({ sprintf("User %s logged in.", user) })); conf->log(([ "error":202 ]), master_session); }