aboutsummaryrefslogtreecommitdiffstats
path: root/package/nvram/src/nvram.c
diff options
context:
space:
mode:
authorJo-Philipp Wich <jow@openwrt.org>2009-06-08 11:59:41 +0000
committerJo-Philipp Wich <jow@openwrt.org>2009-06-08 11:59:41 +0000
commit9f4d70e9a3d3bd629b8fc241b6c59b1d3899de49 (patch)
tree1f3846b524122403d8a5135815c29325f4553888 /package/nvram/src/nvram.c
parent5ed3b31ce0bf83a163e642eeb19db9c30d2abd84 (diff)
downloadupstream-9f4d70e9a3d3bd629b8fc241b6c59b1d3899de49.tar.gz
upstream-9f4d70e9a3d3bd629b8fc241b6c59b1d3899de49.tar.bz2
upstream-9f4d70e9a3d3bd629b8fc241b6c59b1d3899de49.zip
nvram: refuse nvram operations on the WGT634U
SVN-Revision: 16378
Diffstat (limited to 'package/nvram/src/nvram.c')
-rw-r--r--package/nvram/src/nvram.c12
1 files changed, 11 insertions, 1 deletions
diff --git a/package/nvram/src/nvram.c b/package/nvram/src/nvram.c
index 78baa9431d..ed3da4312b 100644
--- a/package/nvram/src/nvram.c
+++ b/package/nvram/src/nvram.c
@@ -411,8 +411,18 @@ char * nvram_find_mtd(void)
char dev[PATH_MAX];
char *path = NULL;
struct stat s;
+ int supported = 1;
- if( (fp = fopen("/proc/mtd", "r")) )
+ /* Refuse any operation on the WGT634U */
+ if( (fp = fopen("/proc/diag/model", "r")) )
+ {
+ if( fgets(dev, sizeof(dev), fp) && !strncmp(dev, "Netgear WGT634U", 15) )
+ supported = 0;
+
+ fclose(fp);
+ }
+
+ if( supported && (fp = fopen("/proc/mtd", "r")) )
{
while( fgets(dev, sizeof(dev), fp) )
{