[prev in list] [next in list] [prev in thread] [next in thread]
List: proftpd-committers
Subject: [ProFTPD-committers] CVS: proftpd/modules mod_auth.c,1.212,1.213 mod_core.c,1.281,1.282 mod_ls.c,1.1
From: TJ Saunders <castaglia () users ! sourceforge ! net>
Date: 2006-05-25 16:55:36
Message-ID: E1FjJ7Y-0001TG-LL () sc8-pr-cvs1 ! sourceforge ! net
[Download RAW message or body]
Update of /cvsroot/proftp/proftpd/modules
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4276/modules
Modified Files:
mod_auth.c mod_core.c mod_ls.c mod_site.c mod_xfer.c
Log Message:
Adding UTF8 encoding/decoding functions. Marking source, preparing it
for use with the gettext utilities.
Part of the work towards making the proftpd source i18n/l10n ready.
Index: mod_auth.c
===================================================================
RCS file: /cvsroot/proftp/proftpd/modules/mod_auth.c,v
retrieving revision 1.212
retrieving revision 1.213
diff -u -r1.212 -r1.213
--- mod_auth.c 20 Apr 2006 02:01:14 -0000 1.212
+++ mod_auth.c 25 May 2006 16:55:34 -0000 1.213
@@ -368,9 +368,9 @@
/* Append the final greeting lines. */
if (session.sf_flags & SF_ANON)
pr_response_add(auth_pass_resp_code,
- "Anonymous access granted, restrictions apply.");
+ _("Anonymous access granted, restrictions apply"));
else
- pr_response_add(auth_pass_resp_code, "User %s logged in.", user);
+ pr_response_add(auth_pass_resp_code, _("User %s logged in"), user);
} else {
/* Handle any AccessGrantMsg directive. */
@@ -1833,8 +1833,8 @@
session.group = NULL;
if (nopass) {
- pr_response_add(R_331, "Anonymous login ok, send your complete email "
- "address as your password.");
+ pr_response_add(R_331, _("Anonymous login ok, send your complete email "
+ "address as your password"));
/* Check to see if a password from the client is required. In the
* vast majority of cases, a password will be required.
@@ -1862,7 +1862,7 @@
pr_cmd_dispatch(fakecmd);
} else
- pr_response_add(R_331, "Password required for %s.", cmd->argv[1]);
+ pr_response_add(R_331, _("Password required for %s"), cmd->argv[1]);
return HANDLED(cmd);
}
@@ -1952,12 +1952,12 @@
}
MODRET auth_acct(cmd_rec *cmd) {
- pr_response_add(R_502, "ACCT command not implemented.");
+ pr_response_add(R_502, _("ACCT command not implemented"));
return HANDLED(cmd);
}
MODRET auth_rein(cmd_rec *cmd) {
- pr_response_add(R_502, "REIN command not implemented.");
+ pr_response_add(R_502, _("REIN command not implemented"));
return HANDLED(cmd);
}
Index: mod_core.c
===================================================================
RCS file: /cvsroot/proftp/proftpd/modules/mod_core.c,v
retrieving revision 1.281
retrieving revision 1.282
diff -u -r1.281 -r1.282
--- mod_core.c 18 May 2006 15:38:44 -0000 1.281
+++ mod_core.c 25 May 2006 16:55:34 -0000 1.282
@@ -2927,7 +2927,7 @@
regexec(allow_regex, cmd->arg, 0, NULL, 0) != 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by AllowFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden command argument", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden command argument"), cmd->arg);
return ERROR(cmd);
}
@@ -2938,7 +2938,7 @@
regexec(deny_regex, cmd->arg, 0, NULL, 0) == 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by DenyFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden command argument", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden command argument"), cmd->arg);
return ERROR(cmd);
}
@@ -3006,7 +3006,7 @@
return ERROR(cmd);
}
- pr_response_add(R_257,"\"%s\" is current directory.",
+ pr_response_add(R_257, _("\"%s\" is the current directory"),
quote_dir(cmd, session.vwd));
return HANDLED(cmd);
@@ -3018,7 +3018,7 @@
config_rec *c = NULL;
if (session.sf_flags & SF_EPSV_ALL) {
- pr_response_add_err(R_500, "Illegal PASV command, EPSV ALL in effect");
+ pr_response_add_err(R_500, _("Illegal PASV command, EPSV ALL in effect"));
return ERROR(cmd);
}
@@ -3063,8 +3063,8 @@
session.c->local_addr, INPORT_ANY, FALSE);
if (!session.d) {
- pr_response_add_err(R_425, "Unable to build data connection: "
- "Internal error");
+ pr_response_add_err(R_425, _("Unable to build data connection: "
+ "Internal error"));
return ERROR(cmd);
}
@@ -3099,6 +3099,9 @@
pr_log_debug(DEBUG1, "Entering Passive Mode (%s,%u,%u).", addrstr,
(port >> 8) & 255, port & 255);
+ /* Note: this response is specifically NOT localised because clients
+ * assume this particular text. Nice, huh?
+ */
pr_response_add(R_227, "Entering Passive Mode (%s,%u,%u).", addrstr,
(port >> 8) & 255, port & 255);
@@ -3117,7 +3120,7 @@
unsigned char *allow_foreign_addr = NULL, *privsdrop = NULL;
if (session.sf_flags & SF_EPSV_ALL) {
- pr_response_add_err(R_500, "Illegal PORT command, EPSV ALL in effect");
+ pr_response_add_err(R_500, _("Illegal PORT command, EPSV ALL in effect"));
return ERROR(cmd);
}
@@ -3142,7 +3145,7 @@
session.c->local_port < 1025) {
pr_log_debug(DEBUG0, "RootRevoke in effect, unable to bind to local "
"port %d for active transfer", session.c->local_port);
- pr_response_add_err(R_500, "Unable to service PORT commands");
+ pr_response_add_err(R_500, _("Unable to service PORT commands"));
return ERROR(cmd);
}
@@ -3150,14 +3153,14 @@
if (sscanf(cmd->argv[1], "%u,%u,%u,%u,%u,%u", &h1, &h2, &h3, &h4, &p1,
&p2) != 6) {
pr_log_debug(DEBUG2, "PORT '%s' is not syntactically valid", cmd->argv[1]);
- pr_response_add_err(R_501, "Illegal PORT command");
+ pr_response_add_err(R_501, _("Illegal PORT command"));
return ERROR(cmd);
}
if (h1 > 255 || h2 > 255 || h3 > 255 || h4 > 255 || p1 > 255 || p2 > 255 ||
(h1|h2|h3|h4) == 0 || (p1|p2) == 0) {
pr_log_debug(DEBUG2, "PORT '%s' has invalid value(s)", cmd->arg);
- pr_response_add_err(R_501, "Illegal PORT command");
+ pr_response_add_err(R_501, _("Illegal PORT command"));
return ERROR(cmd);
}
port = ((p1 << 8) | p2);
@@ -3174,7 +3177,7 @@
if (port_addr == NULL) {
pr_log_debug(DEBUG1, "error getting sockaddr for '%s': %s", buf,
strerror(errno));
- pr_response_add_err(R_501, "Illegal PORT command");
+ pr_response_add_err(R_501, _("Illegal PORT command"));
return ERROR(cmd);
}
@@ -3199,7 +3202,7 @@
pr_netaddr_is_v4mappedv6(remote_addr) != TRUE) {
pr_log_pri(PR_LOG_WARNING, "Refused PORT %s (IPv4/IPv6 address mismatch)",
cmd->arg);
- pr_response_add_err(R_500, "Illegal PORT command");
+ pr_response_add_err(R_500, _("Illegal PORT command"));
return ERROR(cmd);
}
#endif /* PR_USE_IPV6 */
@@ -3207,7 +3210,7 @@
if (pr_netaddr_cmp(port_addr, remote_addr) != 0) {
pr_log_pri(PR_LOG_WARNING, "Refused PORT %s (address mismatch)",
cmd->arg);
- pr_response_add_err(R_500, "Illegal PORT command");
+ pr_response_add_err(R_500, _("Illegal PORT command"));
return ERROR(cmd);
}
}
@@ -3220,7 +3223,7 @@
if (port < 1024) {
pr_log_pri(PR_LOG_WARNING, "Refused PORT %s (bounce attack)", cmd->arg);
- pr_response_add_err(R_500, "Illegal PORT command");
+ pr_response_add_err(R_500, _("Illegal PORT command"));
return ERROR(cmd);
}
@@ -3235,7 +3238,7 @@
}
session.sf_flags |= SF_PORT;
- pr_response_add(R_200, "PORT command successful");
+ pr_response_add(R_200, _("PORT command successful"));
return HANDLED(cmd);
}
@@ -3249,7 +3252,7 @@
char *tmp = NULL;
if (session.sf_flags & SF_EPSV_ALL) {
- pr_response_add_err(R_500, "Illegal PORT command, EPSV ALL in effect");
+ pr_response_add_err(R_500, _("Illegal PORT command, EPSV ALL in effect"));
return ERROR(cmd);
}
@@ -3277,7 +3280,7 @@
session.c->local_port < 1025) {
pr_log_debug(DEBUG0, "RootRevoke in effect, unable to bind to local "
"port %d for active transfer", session.c->local_port);
- pr_response_add_err(R_500, "Unable to service EPRT commands");
+ pr_response_add_err(R_500, _("Unable to service EPRT commands"));
return ERROR(cmd);
}
@@ -3302,9 +3305,9 @@
default:
#ifdef PR_USE_IPV6
- pr_response_add_err(R_522, "Network protocol not supported, use (1,2)");
+ pr_response_add_err(R_522, _("Network protocol not supported, use (1,2)"));
#else
- pr_response_add_err(R_522, "Network protocol not supported, use (1)");
+ pr_response_add_err(R_522, _("Network protocol not supported, use (1)"));
#endif /* PR_USE_IPV6 */
return ERROR(cmd);
}
@@ -3320,13 +3323,13 @@
argstr++;
else {
- pr_response_add_err(R_501, "Illegal EPRT command");
+ pr_response_add_err(R_501, _("Illegal EPRT command"));
return ERROR(cmd);
}
if ((tmp = strchr(argstr, delim)) == NULL) {
pr_log_debug(DEBUG3, "badly formatted EPRT argument: '%s'", cmd->argv[1]);
- pr_response_add_err(R_501, "Illegal EPRT command");
+ pr_response_add_err(R_501, _("Illegal EPRT command"));
return ERROR(cmd);
}
@@ -3347,7 +3350,7 @@
if (pr_inet_pton(AF_INET, argstr, pr_netaddr_get_inaddr(&na)) <= 0) {
pr_log_debug(DEBUG2, "error converting IPv4 address '%s': %s",
argstr, strerror(errno));
- pr_response_add_err(R_501, "Illegal EPRT command");
+ pr_response_add_err(R_501, _("Illegal EPRT command"));
return ERROR(cmd);
}
break;
@@ -3359,7 +3362,7 @@
if (pr_inet_pton(AF_INET6, argstr, pr_netaddr_get_inaddr(&na)) <= 0) {
pr_log_debug(DEBUG2, "error converting IPv6 address '%s': %s",
argstr, strerror(errno));
- pr_response_add_err(R_501, "Illegal EPRT command");
+ pr_response_add_err(R_501, _("Illegal EPRT command"));
return ERROR(cmd);
}
break;
@@ -3379,7 +3382,7 @@
*/
if (*argstr != delim) {
pr_log_debug(DEBUG3, "badly formatted EPRT argument: '%s'", cmd->argv[1]);
- pr_response_add_err(R_501, "Illegal EPRT command");
+ pr_response_add_err(R_501, _("Illegal EPRT command"));
return ERROR(cmd);
}
@@ -3394,7 +3397,7 @@
if (pr_netaddr_cmp(&na, session.c->remote_addr) != 0 || !port) {
pr_log_pri(PR_LOG_WARNING, "Refused EPRT %s (address mismatch)",
cmd->arg);
- pr_response_add_err(R_500, "Illegal EPRT command");
+ pr_response_add_err(R_500, _("Illegal EPRT command"));
return ERROR(cmd);
}
}
@@ -3407,7 +3410,7 @@
if (port < 1024) {
pr_log_pri(PR_LOG_WARNING, "Refused EPRT %s (bounce attack)", cmd->arg);
- pr_response_add_err(R_500, "Illegal EPRT command");
+ pr_response_add_err(R_500, _("Illegal EPRT command"));
return ERROR(cmd);
}
@@ -3436,7 +3439,7 @@
}
session.sf_flags |= SF_PORT;
- pr_response_add(R_200, "EPRT command successful");
+ pr_response_add(R_200, _("EPRT command successful"));
return HANDLED(cmd);
}
@@ -3463,7 +3466,7 @@
if (arg && strcasecmp(arg, "all") == 0) {
session.sf_flags |= SF_EPSV_ALL;
- pr_response_add(R_200, "EPSV ALL command successful");
+ pr_response_add(R_200, _("EPSV ALL command successful"));
return HANDLED(cmd);
}
@@ -3475,7 +3478,8 @@
family = strtol(arg, &endp, 10);
if (endp && *endp) {
- pr_response_add_err(R_501, "%s: unknown network protocol", cmd->argv[0]);
+ pr_response_add_err(R_501, _("%s: unknown network protocol"),
+ cmd->argv[0]);
return ERROR(cmd);
}
@@ -3509,9 +3513,9 @@
default:
#ifdef PR_USE_IPV6
- pr_response_add_err(R_522, "Network protocol not supported, use (1,2)");
+ pr_response_add_err(R_522, _("Network protocol not supported, use (1,2)"));
#else
- pr_response_add_err(R_522, "Network protocol not supported, use (1)");
+ pr_response_add_err(R_522, _("Network protocol not supported, use (1)"));
#endif /* PR_USE_IPV6 */
return ERROR(cmd);
}
@@ -3541,7 +3545,7 @@
if (!session.d) {
pr_response_add_err(R_425,
- "Unable to build data connection: Internal error");
+ _("Unable to build data connection: Internal error"));
return ERROR(cmd);
}
@@ -3597,7 +3601,7 @@
if (pr_help_add_response(cmd, cmd->argv[1]) == 0)
return HANDLED(cmd);
- pr_response_add_err(R_502, "Unknown command '%s'.", cmd->argv[1]);
+ pr_response_add_err(R_502, _("Unknown command '%s'"), cmd->argv[1]);
return ERROR(cmd);
}
@@ -3764,7 +3768,7 @@
}
}
- pr_response_add(R_250, "%s command successful", cmd->argv[0]);
+ pr_response_add(R_250, _("%s command successful"), cmd->argv[0]);
return HANDLED(cmd);
}
@@ -3782,7 +3786,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) != 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathAllowFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550,"%s: Forbidden filename",cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
@@ -3791,7 +3795,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) == 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathDenyFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
#endif
@@ -3808,7 +3812,7 @@
return ERROR(cmd);
} else
- pr_response_add(R_250, "%s command successful", cmd->argv[0]);
+ pr_response_add(R_250, _("%s command successful"), cmd->argv[0]);
return HANDLED(cmd);
}
@@ -3823,7 +3827,7 @@
CHECK_CMD_MIN_ARGS(cmd, 2);
if (strchr(cmd->arg, '*')) {
- pr_response_add_err(R_550, "%s: Invalid directory name", cmd->argv[1]);
+ pr_response_add_err(R_550, _("%s: Invalid directory name"), cmd->argv[1]);
return ERROR(cmd);
}
@@ -3833,7 +3837,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) != 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathAllowFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
@@ -3842,7 +3846,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) == 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathDenyFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
#endif
@@ -3895,7 +3899,7 @@
(unsigned long) session.fsgid);
}
- pr_response_add(R_257, "\"%s\" - Directory successfully created",
+ pr_response_add(R_257, _("\"%s\" - Directory successfully created"),
quote_dir(cmd, dir));
return HANDLED(cmd);
@@ -3934,13 +3938,13 @@
if (!path ||
!dir_check(cmd->tmp_pool, cmd->argv[0], cmd->group, path, NULL) ||
pr_fsio_stat(path, &sbuf) == -1) {
- pr_response_add_err(R_550,"%s: %s", cmd->arg, strerror(errno));
+ pr_response_add_err(R_550, "%s: %s", cmd->arg, strerror(errno));
return ERROR(cmd);
} else {
if (!S_ISREG(sbuf.st_mode)) {
- pr_response_add_err(R_550,"%s: not a plain file.",cmd->argv[1]);
+ pr_response_add_err(R_550, _("%s: not a plain file"), cmd->argv[1]);
return ERROR(cmd);
} else {
@@ -3989,7 +3993,7 @@
} else {
if (!S_ISREG(sbuf.st_mode)) {
- pr_response_add_err(R_550, "%s: not a regular file", cmd->arg);
+ pr_response_add_err(R_550, _("%s: not a regular file"), cmd->arg);
return ERROR(cmd);
} else
@@ -4015,7 +4019,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) != 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathAllowFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
@@ -4024,7 +4028,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) == 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathDenyFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
#endif
@@ -4057,7 +4061,7 @@
(session.sf_flags & SF_ASCII ? 'a' : 'b'), 'd', 'r', session.user, 'c');
}
- pr_response_add(R_250, "%s command successful", cmd->argv[0]);
+ pr_response_add(R_250, _("%s command successful"), cmd->argv[0]);
return HANDLED(cmd);
}
@@ -4078,7 +4082,7 @@
memset(&session.xfer, '\0', sizeof(session.xfer));
}
- pr_response_add_err(R_503, "Bad sequence of commands");
+ pr_response_add_err(R_503, _("Bad sequence of commands"));
return ERROR(cmd);
}
@@ -4088,7 +4092,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) != 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathAllowFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
@@ -4097,7 +4101,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) == 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathDenyFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
#endif
@@ -4113,7 +4117,7 @@
if ((!allow_overwrite || *allow_overwrite == FALSE) &&
pr_fsio_stat(path, &st) == 0) {
pr_log_debug(DEBUG6, "AllowOverwrite denied permission for %s", path);
- pr_response_add_err(R_550, "%s: Rename permission denied", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Rename permission denied"), cmd->arg);
return ERROR(cmd);
}
@@ -4122,7 +4126,7 @@
pr_fsio_rename(session.xfer.path, path) == -1) {
if (errno != EXDEV) {
- pr_response_add_err(R_550, "Rename %s: %s", cmd->arg, strerror(errno));
+ pr_response_add_err(R_550, _("Rename %s: %s"), cmd->arg, strerror(errno));
return ERROR(cmd);
}
@@ -4130,7 +4134,7 @@
* to the destination paths.
*/
if (pr_fs_copy_file(session.xfer.path, path) < 0) {
- pr_response_add_err(R_550, "Rename %s: %s", cmd->arg, strerror(errno));
+ pr_response_add_err(R_550, _("Rename %s: %s"), cmd->arg, strerror(errno));
return ERROR(cmd);
}
@@ -4140,7 +4144,7 @@
strerror(errno));
}
- pr_response_add(R_250, "Rename successful");
+ pr_response_add(R_250, _("Rename successful"));
return HANDLED(cmd);
}
@@ -4166,7 +4170,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) != 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathAllowFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
@@ -4175,7 +4179,7 @@
if (preg && regexec(preg, cmd->arg, 0, NULL, 0) == 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathDenyFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
}
#endif
@@ -4200,14 +4204,14 @@
pr_pool_tag(session.xfer.p, "session xfer pool");
session.xfer.path = pstrdup(session.xfer.p, path);
- pr_response_add(R_350, "File or directory exists, ready for "
- "destination name.");
+ pr_response_add(R_350, _("File or directory exists, ready for "
+ "destination name"));
return HANDLED(cmd);
}
MODRET core_noop(cmd_rec *cmd) {
- pr_response_add(R_200, "NOOP command successful");
+ pr_response_add(R_200, _("NOOP command successful"));
return HANDLED(cmd);
}
@@ -4224,7 +4228,7 @@
feat = pr_feat_get();
if (feat) {
- feat = pstrcat(cmd->tmp_pool, "Features:\n ", feat, NULL);
+ feat = pstrcat(cmd->tmp_pool, _("Features:\n "), feat, NULL);
while (TRUE) {
const char *next;
@@ -4239,10 +4243,10 @@
}
pr_response_add(R_211, "%s", feat);
- pr_response_add(R_DUP, "End");
+ pr_response_add(R_DUP, _("End"));
} else {
- pr_response_add(R_211, "No features supported");
+ pr_response_add(R_211, _("No features supported"));
}
return HANDLED(cmd);
@@ -4267,7 +4271,7 @@
*cp = toupper(*cp);
if (!command_exists(opts_cmd)) {
- pr_response_add_err(R_501, "%s: %s not understood", cmd->argv[0],
+ pr_response_add_err(R_501, _("%s: %s not understood"), cmd->argv[0],
cmd->argv[1]);
return ERROR(cmd);
}
@@ -4285,12 +4289,12 @@
*/
if (cmd->argc == 3) {
- pr_response_add_err(R_501, "%s: %s options '%s' not understood",
+ pr_response_add_err(R_501, _("%s: %s options '%s' not understood"),
cmd->argv[0], cmd->argv[1], cmd->argv[2]);
return ERROR(cmd);
}
- pr_response_add(R_200, "%s command successful", cmd->argv[0]);
+ pr_response_add(R_200, _("%s command successful"), cmd->argv[0]);
return HANDLED(cmd);
}
@@ -4412,6 +4416,9 @@
pr_feat_add("MDTM");
pr_feat_add("REST STREAM");
pr_feat_add("SIZE");
+#ifdef PR_USE_NLS
+ pr_feat_add("UTF8");
+#endif /* PR_USE_NLS */
/* Register a startup handler. */
pr_event_register(&core_module, "core.startup", core_startup_ev, NULL);
Index: mod_ls.c
===================================================================
RCS file: /cvsroot/proftp/proftpd/modules/mod_ls.c,v
retrieving revision 1.128
retrieving revision 1.129
diff -u -r1.128 -r1.129
--- mod_ls.c 24 Aug 2005 16:10:30 -0000 1.128
+++ mod_ls.c 25 May 2006 16:55:34 -0000 1.129
@@ -2,7 +2,7 @@
* ProFTPD - FTP server daemon
* Copyright (c) 1997, 1998 Public Flood Software
* Copyright (c) 1999, 2000 MacGyver aka Habeeb J. Dihu <macgyver@tos.net>
- * Copyright (c) 2001-2004 The ProFTPD Project team
+ * Copyright (c) 2001-2006 The ProFTPD Project team
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
@@ -375,11 +375,6 @@
else
t = pr_localtime(p, (time_t *) &mtime);
- if (!t) {
- pr_response_add_err(R_421, "Fatal error (localtime() returned NULL?!?)");
- return -1;
- }
-
if (opt_F) {
if (S_ISLNK(st.st_mode))
suffix[0] = '@';
@@ -953,15 +948,6 @@
int d = 0;
-#if 0
- if (opt_l) {
- if (opt_STAT)
- pr_response_add(R_211, "total 0");
- else if (sendline("total 0\n") < 0)
- return -1;
- }
-#endif
-
s = dir;
while (*s) {
if (**s == '.') {
@@ -1134,7 +1120,7 @@
ls_errno = 0;
} else if (ls_errno) {
- pr_response_add(R_211, "ERROR: %s", strerror(ls_errno));
+ pr_response_add(R_211, _("ERROR: %s"), strerror(ls_errno));
ls_errno = 0;
}
}
@@ -1523,13 +1509,13 @@
} else if (!skiparg) {
if (a == GLOB_NOSPACE)
- pr_response_add(R_226, "Out of memory during globbing of %s", arg);
+ pr_response_add(R_226, _("Out of memory during globbing of %s"), arg);
else if (a == GLOB_ABORTED)
- pr_response_add(R_226, "Read error during globbing of %s", arg);
+ pr_response_add(R_226, _("Read error during globbing of %s"), arg);
else if (a != GLOB_NOMATCH)
- pr_response_add(R_226, "Unknown error during globbing of %s", arg);
+ pr_response_add(R_226, _("Unknown error during globbing of %s"), arg);
}
if (!skiparg && use_globbing && globbed)
@@ -1878,25 +1864,24 @@
return ERROR(cmd);
}
- pr_response_add(R_211, "Status of '%s'", main_server->ServerName);
- pr_response_add(R_DUP, "Connected from %s (%s)", session.c->remote_name,
+ pr_response_add(R_211, _("Status of '%s'"), main_server->ServerName);
+ pr_response_add(R_DUP, _("Connected from %s (%s)"), session.c->remote_name,
pr_netaddr_get_ipstr(session.c->remote_addr));
- pr_response_add(R_DUP, "Logged in as %s", session.user);
- pr_response_add(R_DUP, "TYPE: %s, STRUcture: File, Mode: Stream",
+ pr_response_add(R_DUP, _("Logged in as %s"), session.user);
+ pr_response_add(R_DUP, _("TYPE: %s, STRUcture: File, Mode: Stream"),
(session.sf_flags & SF_ASCII) ? "ASCII" : "BINARY");
if (session.total_bytes)
- pr_response_add(R_DUP, "Total bytes transferred for session: %" PR_LU,
+ pr_response_add(R_DUP, _("Total bytes transferred for session: %" PR_LU),
(pr_off_t) session.total_bytes);
if (session.sf_flags & SF_XFER) {
-
/* Report on the data transfer attributes.
*/
- pr_response_add(R_DUP, "%s from %s port %u",
+ pr_response_add(R_DUP, _("%s from %s port %u"),
(session.sf_flags & SF_PASSIVE) ?
- "Passive data transfer from" : "Active data transfer to",
+ _("Passive data transfer from") : _("Active data transfer to"),
pr_netaddr_get_ipstr(session.d->remote_addr), session.d->remote_port);
if (session.xfer.file_size)
@@ -1911,9 +1896,9 @@
session.xfer.path, (pr_off_t) session.xfer.total_bytes);
} else
- pr_response_add(R_DUP, "No data connection");
+ pr_response_add(R_DUP, _("No data connection"));
- pr_response_add(R_DUP, "End of status");
+ pr_response_add(R_DUP, _("End of status"));
return HANDLED(cmd);
}
@@ -1978,9 +1963,9 @@
opt_C = opt_d = opt_F = opt_R = 0;
opt_a = opt_l = opt_STAT = 1;
- pr_response_add(R_211, "Status of %s:", arg && *arg ? arg : ".");
+ pr_response_add(R_211, _("Status of %s:"), arg && *arg ? arg : ".");
res = dolist(cmd, arg && *arg ? arg : ".", FALSE);
- pr_response_add(R_211, "End of Status");
+ pr_response_add(R_211, _("End of status"));
return (res == -1 ? ERROR(cmd) : HANDLED(cmd));
}
@@ -2126,7 +2111,7 @@
memset(&g, '\0', sizeof(glob_t));
if (pr_fs_glob(target, GLOB_PERIOD, NULL, &g) != 0) {
- pr_response_add_err(R_450, "No files found");
+ pr_response_add_err(R_450, _("No files found"));
return ERROR(cmd);
}
@@ -2214,7 +2199,7 @@
res = nlstdir(cmd, target);
} else {
- pr_response_add_err(R_450, "%s: Not a regular file", cmd->arg);
+ pr_response_add_err(R_450, _("%s: Not a regular file"), cmd->arg);
return ERROR(cmd);
}
Index: mod_site.c
===================================================================
RCS file: /cvsroot/proftp/proftpd/modules/mod_site.c,v
retrieving revision 1.44
retrieving revision 1.45
diff -u -r1.44 -r1.45
--- mod_site.c 12 Dec 2004 05:59:27 -0000 1.44
+++ mod_site.c 25 May 2006 16:55:34 -0000 1.45
@@ -72,7 +72,8 @@
#endif
if (cmd->argc < 3) {
- pr_response_add_err(R_500, "'SITE %s' not understood", _get_full_cmd(cmd));
+ pr_response_add_err(R_500, _("'SITE %s' not understood"),
+ _get_full_cmd(cmd));
return NULL;
}
@@ -88,7 +89,7 @@
if (preg && regexec(preg, arg, 0, NULL, 0) != 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathAllowFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), arg);
return ERROR(cmd);
}
@@ -97,7 +98,7 @@
if (preg && regexec(preg, arg, 0, NULL, 0) == 0) {
pr_log_debug(DEBUG2, "'%s %s' denied by PathDenyFilter", cmd->argv[0],
cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), arg);
return ERROR(cmd);
}
#endif
@@ -129,7 +130,7 @@
return ERROR(cmd);
} else
- pr_response_add(R_200, "SITE %s command successful", cmd->argv[0]);
+ pr_response_add(R_200, _("SITE %s command successful"), cmd->argv[0]);
return HANDLED(cmd);
}
@@ -143,7 +144,8 @@
#endif
if (cmd->argc < 3) {
- pr_response_add_err(R_500, "'SITE %s' not understood", _get_full_cmd(cmd));
+ pr_response_add_err(R_500, _("'SITE %s' not understood"),
+ _get_full_cmd(cmd));
return NULL;
}
@@ -159,7 +161,7 @@
if (preg && regexec(preg, arg, 0, NULL, 0) != 0) {
pr_log_debug(DEBUG2, "'%s %s %s' denied by PathAllowFilter", cmd->argv[0],
cmd->argv[1], arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), arg);
return ERROR(cmd);
}
@@ -168,7 +170,7 @@
if (preg && regexec(preg, arg, 0, NULL, 0) == 0) {
pr_log_debug(DEBUG2, "'%s %s %s' denied by PathDenyFilter", cmd->argv[0],
cmd->argv[1], arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), arg);
return ERROR(cmd);
}
#endif
@@ -327,7 +329,7 @@
}
if (invalid) {
- pr_response_add_err(R_550, "'%s': invalid mode.", cmd->argv[1]);
+ pr_response_add_err(R_550, _("'%s': invalid mode"), cmd->argv[1]);
return ERROR(cmd);
}
}
@@ -337,7 +339,7 @@
return ERROR(cmd);
} else
- pr_response_add(R_200, "SITE %s command successful", cmd->argv[0]);
+ pr_response_add(R_200, _("SITE %s command successful"), cmd->argv[0]);
return HANDLED(cmd);
}
@@ -371,13 +373,13 @@
*cp = toupper(*cp);
for (i = 0; _help[i].cmd; i++)
- if (!strcasecmp(cmd->argv[1], _help[i].cmd)) {
- pr_response_add(R_214, "Syntax: SITE %s %s",
+ if (strcasecmp(cmd->argv[1], _help[i].cmd) == 0) {
+ pr_response_add(R_214, _("Syntax: SITE %s %s"),
cmd->argv[1], _help[i].syntax);
return HANDLED(cmd);
}
- pr_response_add_err(R_502, "Unknown command 'SITE %s'", cmd->arg);
+ pr_response_add_err(R_502, _("Unknown command 'SITE %s'"), cmd->arg);
return ERROR(cmd);
}
@@ -399,22 +401,22 @@
register unsigned int i = 0;
if (!cmd->argc) {
- pr_response_add_err(R_500, "'SITE' requires parameters");
+ pr_response_add_err(R_500, _("'SITE' requires parameters"));
return ERROR(cmd);
}
for (i = 0; site_commands[i].command; i++)
- if (!strcmp(cmd->argv[0], site_commands[i].command)) {
+ if (strcmp(cmd->argv[0], site_commands[i].command) == 0) {
if (site_commands[i].requires_auth && cmd_auth_chk &&
!cmd_auth_chk(cmd)) {
- pr_response_send(R_530, "Please login with " C_USER " and " C_PASS);
+ pr_response_send(R_530, _("Please login with " C_USER " and " C_PASS));
return ERROR(cmd);
} else
return site_commands[i].handler(cmd);
}
- pr_response_add_err(R_500, "'SITE %s' not understood", cmd->argv[0]);
+ pr_response_add_err(R_500, _("'SITE %s' not understood"), cmd->argv[0]);
return ERROR(cmd);
}
@@ -424,7 +426,7 @@
MODRET site_pre_cmd(cmd_rec *cmd) {
if (cmd->argc > 1 && !strcasecmp(cmd->argv[1], "help"))
pr_response_add(R_214,
- "The following SITE commands are recognized (* =>'s unimplemented).");
+ _("The following SITE commands are recognized (* =>'s unimplemented)"));
return DECLINED(cmd);
}
@@ -449,8 +451,9 @@
}
MODRET site_post_cmd(cmd_rec *cmd) {
- if (cmd->argc > 1 && !strcasecmp(cmd->argv[1], "help"))
- pr_response_add(R_214, "Direct comments to %s.",
+ if (cmd->argc > 1 &&
+ strcasecmp(cmd->argv[1], "help") == 0)
+ pr_response_add(R_214, _("Direct comments to %s"),
(cmd->server->ServerAdmin ? cmd->server->ServerAdmin : "ftp-admin"));
return DECLINED(cmd);
}
Index: mod_xfer.c
===================================================================
RCS file: /cvsroot/proftp/proftpd/modules/mod_xfer.c,v
retrieving revision 1.200
retrieving revision 1.201
diff -u -r1.200 -r1.201
--- mod_xfer.c 25 May 2006 15:44:14 -0000 1.200
+++ mod_xfer.c 25 May 2006 16:55:34 -0000 1.201
@@ -916,7 +916,7 @@
if (!basenamestart) {
/* This probably shouldn't happen */
- pr_response_add_err(R_451, "%s: Bad file name", path);
+ pr_response_add_err(R_451, _("%s: Bad file name"), path);
return -1;
}
@@ -928,7 +928,7 @@
if (maxlen > PR_TUNABLE_PATH_MAX) {
/* This probably shouldn't happen */
- pr_response_add_err(R_451, "%s: File name too long", path);
+ pr_response_add_err(R_451, _("%s: File name too long"), path);
return -1;
}
@@ -962,7 +962,7 @@
pr_log_debug(DEBUG3, "HiddenStore path '%s' already exists",
hidden_path);
- pr_response_add_err(R_550, "%s: Temporary hidden file %s already exists",
+ pr_response_add_err(R_550, _("%s: Temporary hidden file %s already exists"),
cmd->arg, hidden_path);
return -1;
@@ -1012,7 +1012,7 @@
*allow_restart = NULL;
if (cmd->argc < 2) {
- pr_response_add_err(R_500, "'%s' not understood", get_full_cmd(cmd));
+ pr_response_add_err(R_500, _("'%s' not understood"), get_full_cmd(cmd));
return ERROR(cmd);
}
@@ -1030,12 +1030,12 @@
if (fmode && (session.xfer.xfer_type != STOR_APPEND) &&
(!allow_overwrite || *allow_overwrite == FALSE)) {
pr_log_debug(DEBUG6, "AllowOverwrite denied permission for %s", cmd->arg);
- pr_response_add_err(R_550, "%s: Overwrite permission denied", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Overwrite permission denied"), cmd->arg);
return ERROR(cmd);
}
if (fmode && !S_ISREG(fmode) && !S_ISFIFO(fmode)) {
- pr_response_add_err(R_550, "%s: Not a regular file", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Not a regular file"), cmd->arg);
return ERROR(cmd);
}
@@ -1048,7 +1048,7 @@
(session.restart_pos || (session.xfer.xfer_type == STOR_APPEND)) &&
(!allow_restart || *allow_restart == FALSE)) {
- pr_response_add_err(R_451, "%s: Append/Restart not permitted, try again",
+ pr_response_add_err(R_451, _("%s: Append/Restart not permitted, try again"),
cmd->arg);
session.restart_pos = 0L;
session.xfer.xfer_type = STOR_DEFAULT;
@@ -1088,7 +1088,7 @@
*/
if (cmd->argc > 2) {
- pr_response_add_err(R_500, "'%s' not understood.", get_full_cmd(cmd));
+ pr_response_add_err(R_500, _("'%s' not understood"), get_full_cmd(cmd));
return ERROR(cmd);
}
@@ -1097,7 +1097,7 @@
* REST: session.restart_pos > 0
*/
if (session.restart_pos) {
- pr_response_add_err(R_550, "STOU incompatible with REST");
+ pr_response_add_err(R_550, _("STOU incompatible with REST"));
return ERROR(cmd);
}
@@ -1119,7 +1119,7 @@
strerror(errno));
/* If we can't guarantee a unique filename, refuse the command. */
- pr_response_add_err(R_450, "%s: unable to generate unique filename",
+ pr_response_add_err(R_450, _("%s: unable to generate unique filename"),
cmd->argv[0]);
return ERROR(cmd);
@@ -1159,14 +1159,14 @@
if (mode && session.xfer.xfer_type != STOR_APPEND &&
(!allow_overwrite || *allow_overwrite == FALSE)) {
pr_log_debug(DEBUG6, "AllowOverwrite denied permission for %s", cmd->arg);
- pr_response_add_err(R_550, "%s: Overwrite permission denied", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Overwrite permission denied"), cmd->arg);
return ERROR(cmd);
}
/* Not likely to _not_ be a regular file, but just to be certain... */
if (mode && !S_ISREG(mode)) {
(void) pr_fsio_unlink(cmd->arg);
- pr_response_add_err(R_550, "%s: Not a regular file", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Not a regular file"), cmd->arg);
return ERROR(cmd);
}
@@ -1265,7 +1265,7 @@
ret = regexec(preg, cmd->arg, 0, NULL, 0);
if (ret != 0) {
pr_log_debug(DEBUG2, "'%s' denied by PathAllowFilter", cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
} else {
@@ -1282,7 +1282,7 @@
ret = regexec(preg, cmd->arg, 0, NULL, 0);
if (ret == 0) {
pr_log_debug(DEBUG2, "'%s' denied by PathDenyFilter", cmd->arg);
- pr_response_add_err(R_550, "%s: Forbidden filename", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Forbidden filename"), cmd->arg);
return ERROR(cmd);
} else {
@@ -1336,7 +1336,7 @@
* file being resumed.
*/
if (stor_fh && session.restart_pos > st.st_size) {
- pr_response_add_err(R_554, "%s: invalid REST argument", cmd->arg);
+ pr_response_add_err(R_554, _("%s: invalid REST argument"), cmd->arg);
(void) pr_fsio_close(stor_fh);
stor_fh = NULL;
return ERROR(cmd);
@@ -1509,7 +1509,7 @@
pr_log_pri(PR_LOG_WARNING, "Rename of %s to %s failed: %s.",
session.xfer.path_hidden, session.xfer.path, strerror(errno));
- pr_response_add_err(R_550, "%s: Rename of hidden file %s failed: %s",
+ pr_response_add_err(R_550, _("%s: Rename of hidden file %s failed: %s"),
session.xfer.path, session.xfer.path_hidden, strerror(errno));
pr_fsio_unlink(session.xfer.path_hidden);
@@ -1529,7 +1529,7 @@
unsigned char *hidden_stores = NULL;
if (cmd->argc != 2) {
- pr_response_add_err(R_500, "'%s' not understood", get_full_cmd(cmd));
+ pr_response_add_err(R_500, _("'%s' not understood"), get_full_cmd(cmd));
return ERROR(cmd);
}
@@ -1537,7 +1537,8 @@
hidden_stores = get_param_ptr(CURRENT_CONF, "HiddenStores", FALSE);
if (hidden_stores != NULL &&
*hidden_stores == TRUE) {
- pr_response_add_err(R_501, "REST not compatible with server configuration");
+ pr_response_add_err(R_501,
+ _("REST not compatible with server configuration"));
return ERROR(cmd);
}
@@ -1546,7 +1547,7 @@
*/
if (*cmd->argv[1] == '-') {
pr_response_add_err(R_501,
- "REST requires a value greater than or equal to 0");
+ _("REST requires a value greater than or equal to 0"));
return ERROR(cmd);
}
@@ -1559,7 +1560,7 @@
if (endp &&
*endp) {
pr_response_add_err(R_501,
- "REST requires a value greater than or equal to 0");
+ _("REST requires a value greater than or equal to 0"));
return ERROR(cmd);
}
@@ -1576,14 +1577,14 @@
pos != 0) {
pr_log_debug(DEBUG5, "%s not allowed in ASCII mode", cmd->argv[0]);
pr_response_add_err(R_501,
- "%s: Resuming transfers not allowed in ASCII mode", cmd->argv[0]);
+ _("%s: Resuming transfers not allowed in ASCII mode"), cmd->argv[0]);
return ERROR(cmd);
}
session.restart_pos = pos;
- pr_response_add(R_350, "Restarting at %" PR_LU ". Send STORE or RETRIEVE to "
- "initiate transfer", (pr_off_t) pos);
+ pr_response_add(R_350, _("Restarting at %" PR_LU
+ ". Send STORE or RETRIEVE to initiate transfer"), (pr_off_t) pos);
return HANDLED(cmd);
}
@@ -1597,7 +1598,7 @@
unsigned char *allow_restart = NULL;
if (cmd->argc < 2) {
- pr_response_add_err(R_500, "'%s' not understood", get_full_cmd(cmd));
+ pr_response_add_err(R_500, _("'%s' not understood"), get_full_cmd(cmd));
return ERROR(cmd);
}
@@ -1615,7 +1616,7 @@
if (!fmode)
pr_response_add_err(R_550, "%s: %s", cmd->arg, strerror(errno));
else
- pr_response_add_err(R_550, "%s: Not a regular file", cmd->arg);
+ pr_response_add_err(R_550, _("%s: Not a regular file"), cmd->arg);
return ERROR(cmd);
}
@@ -1626,7 +1627,7 @@
if (session.restart_pos &&
(allow_restart && *allow_restart == FALSE)) {
- pr_response_add_err(R_451, "%s: Restart not permitted, try again",
+ pr_response_add_err(R_451, _("%s: Restart not permitted, try again"),
cmd->arg);
session.restart_pos = 0L;
return ERROR(cmd);
@@ -1680,7 +1681,7 @@
* file being resumed.
*/
if (session.restart_pos > st.st_size) {
- pr_response_add_err(R_554, "%s: invalid REST argument", cmd->arg);
+ pr_response_add_err(R_554, _("%s: invalid REST argument"), cmd->arg);
pr_fsio_close(retr_fh);
retr_fh = NULL;
@@ -1696,7 +1697,7 @@
pr_log_debug(DEBUG0, "error seeking to offset %" PR_LU
"for file %s: %s", session.restart_pos, dir, strerror(errno));
- pr_response_add_err(R_554, "%s: invalid REST argument", cmd->arg);
+ pr_response_add_err(R_554, _("%s: invalid REST argument"), cmd->arg);
return ERROR(cmd);
}
@@ -1815,7 +1816,7 @@
MODRET xfer_abor(cmd_rec *cmd) {
if (cmd->argc != 1) {
- pr_response_add_err(R_500, "'%s' not understood", get_full_cmd(cmd));
+ pr_response_add_err(R_500, _("'%s' not understood"), get_full_cmd(cmd));
return ERROR(cmd);
}
@@ -1823,13 +1824,13 @@
pr_data_reset();
pr_data_cleanup();
- pr_response_add(R_226, "Abort successful");
+ pr_response_add(R_226, _("Abort successful"));
return HANDLED(cmd);
}
MODRET xfer_type(cmd_rec *cmd) {
if (cmd->argc < 2 || cmd->argc > 3) {
- pr_response_add_err(R_500, "'%s' not understood", get_full_cmd(cmd));
+ pr_response_add_err(R_500, _("'%s' not understood"), get_full_cmd(cmd));
return ERROR(cmd);
}
@@ -1850,17 +1851,17 @@
session.sf_flags &= (SF_ALL^SF_ASCII);
} else {
- pr_response_add_err(R_500, "'%s' not understood", get_full_cmd(cmd));
+ pr_response_add_err(R_500, _("'%s' not understood"), get_full_cmd(cmd));
return ERROR(cmd);
}
- pr_response_add(R_200, "Type set to %s", cmd->argv[1]);
+ pr_response_add(R_200, _("Type set to %s"), cmd->argv[1]);
return HANDLED(cmd);
}
MODRET xfer_stru(cmd_rec *cmd) {
if (cmd->argc != 2) {
- pr_response_add_err(R_501, "'%s' not understood", get_full_cmd(cmd));
+ pr_response_add_err(R_501, _("'%s' not understood"), get_full_cmd(cmd));
return ERROR(cmd);
}
@@ -1869,7 +1870,7 @@
switch ((int) cmd->argv[1][0]) {
case 'F':
/* Should 202 be returned instead??? */
- pr_response_add(R_200, "Structure set to F.");
+ pr_response_add(R_200, _("Structure set to F"));
return HANDLED(cmd);
break;
@@ -1888,13 +1889,13 @@
case 'P':
/* RFC-1123 recommends against implementing P. */
- pr_response_add_err(R_504, "'%s' unsupported structure type.",
+ pr_response_add_err(R_504, _("'%s' unsupported structure type"),
get_full_cmd(cmd));
return ERROR(cmd);
break;
default:
- pr_response_add_err(R_501, "'%s' unrecognized structure type.",
+ pr_response_add_err(R_501, _("'%s' unrecognized structure type"),
get_full_cmd(cmd));
return ERROR(cmd);
break;
@@ -1903,7 +1904,7 @@
MODRET xfer_mode(cmd_rec *cmd) {
if (cmd->argc != 2) {
- pr_response_add_err(R_501, "'%s' not understood", get_full_cmd(cmd));
+ pr_response_add_err(R_501, _("'%s' not understood"), get_full_cmd(cmd));
return ERROR(cmd);
}
@@ -1912,7 +1913,7 @@
switch ((int) cmd->argv[1][0]) {
case 'S':
/* Should 202 be returned instead??? */
- pr_response_add(R_200, "Mode set to S.");
+ pr_response_add(R_200, _("Mode set to S"));
return HANDLED(cmd);
break;
@@ -1920,13 +1921,13 @@
/* FALLTHROUGH */
case 'C':
- pr_response_add_err(R_504, "'%s' unsupported transfer mode.",
+ pr_response_add_err(R_504, _("'%s' unsupported transfer mode"),
get_full_cmd(cmd));
return ERROR(cmd);
break;
default:
- pr_response_add_err(R_501, "'%s' unrecognized transfer mode.",
+ pr_response_add_err(R_501, _("'%s' unrecognized transfer mode"),
get_full_cmd(cmd));
return ERROR(cmd);
break;
@@ -1934,12 +1935,12 @@
}
MODRET xfer_allo(cmd_rec *cmd) {
- pr_response_add(R_202, "No storage allocation necessary.");
+ pr_response_add(R_202, _("No storage allocation necessary"));
return HANDLED(cmd);
}
MODRET xfer_smnt(cmd_rec *cmd) {
- pr_response_add(R_502, "SMNT command not implemented.");
+ pr_response_add(R_502, _("SMNT command not implemented"));
return HANDLED(cmd);
}
-------------------------------------------------------
All the advantages of Linux Managed Hosting--Without the Cost and Risk!
Fully trained technicians. The highest number of Red Hat certifications in
the hosting industry. Fanatical Support. Click to learn more
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=107521&bid=248729&dat=121642
_______________________________________________
ProFTPD Committers Mailing List
proftpd-committers@proftpd.org
https://lists.sourceforge.net/lists/listinfo/proftp-committers
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic