diff --git a/release/src/router/rc/ssh.c b/release/src/router/rc/ssh.c index ca7c591631a..112a6c34a8b 100644 --- a/release/src/router/rc/ssh.c +++ b/release/src/router/rc/ssh.c @@ -30,6 +30,7 @@ char *get_parsed_key(const char *name, char *buf) value = nvram_safe_get(name); len = strlen(value); + if (len > 3500) len = 3500; for (i=0; (i < len); i++) { if (value[i] == '>') @@ -46,7 +47,7 @@ char *get_parsed_key(const char *name, char *buf) void start_sshd(void) { int dirty = 0; - char buf[2048]; + char buf[3500]; if (!nvram_match("sshd_enable", "1")) return; diff --git a/release/src/router/shared/misc.c b/release/src/router/shared/misc.c index 9a903ada58e..d26256d5dc2 100644 --- a/release/src/router/shared/misc.c +++ b/release/src/router/shared/misc.c @@ -898,7 +898,7 @@ int nvram_get_file(const char *key, const char *fname, int max) } return r; /* - char b[2048]; + char b[3500]; int n; char *p; @@ -935,8 +935,8 @@ int nvram_set_file(const char *key, const char *fname, int max) } return r; /* - char a[2048]; - char b[4096]; + char a[3500]; + char b[7000]; int n; if (((n = f_read(fname, &a, sizeof(a))) > 0) && (n <= max)) {