summaryrefslogtreecommitdiff
authorerik <erik>2007-01-26 20:24:07 (UTC)
committer erik <erik>2007-01-26 20:24:07 (UTC)
commitcc5b326a212414a612838b0041e6077477ebbc70 (patch) (side-by-side diff)
treefd69c302a511c3bc715ff0e160181b9ad1cbf82d
parent53d630c9c4813142ee13e6843c30476a5db26e78 (diff)
downloadopie-cc5b326a212414a612838b0041e6077477ebbc70.zip
opie-cc5b326a212414a612838b0041e6077477ebbc70.tar.gz
opie-cc5b326a212414a612838b0041e6077477ebbc70.tar.bz2
A couple of places where a string is overrun. This fixes both of them.
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--noncore/apps/opie-reader/chm_lib.c5
-rw-r--r--noncore/settings/sysinfo/contrib/dhry.c4
2 files changed, 5 insertions, 4 deletions
diff --git a/noncore/apps/opie-reader/chm_lib.c b/noncore/apps/opie-reader/chm_lib.c
index ecf8278..7acd1d2 100644
--- a/noncore/apps/opie-reader/chm_lib.c
+++ b/noncore/apps/opie-reader/chm_lib.c
@@ -1601,5 +1601,5 @@ int chm_enumerate_dir(struct chmFile *h,
char prefixRectified[CHM_MAX_PATHLEN+1];
int prefixLen;
- char lastPath[CHM_MAX_PATHLEN];
+ char lastPath[CHM_MAX_PATHLEN+1];
int lastPathLen;
@@ -1671,5 +1671,6 @@ int chm_enumerate_dir(struct chmFile *h,
continue;
}
- strcpy(lastPath, ui.path);
+ strncpy(lastPath, ui.path, CHM_MAX_PATHLEN);
+ lastPath[CHM_MAX_PATHLEN] = '\0';
lastPathLen = strlen(lastPath);
diff --git a/noncore/settings/sysinfo/contrib/dhry.c b/noncore/settings/sysinfo/contrib/dhry.c
index 20b627c..07fd1c0 100644
--- a/noncore/settings/sysinfo/contrib/dhry.c
+++ b/noncore/settings/sysinfo/contrib/dhry.c
@@ -496,5 +496,5 @@ int Arr_1_Glob [50];
int Arr_2_Glob [50] [50];
-char Reg_Define[] = "Register option selected.";
+char Reg_Define[32] = "Register option selected.";
//extern char *malloc ();
@@ -984,5 +984,5 @@ double dhry_main( int n )
#else
//printf ("Register option selected? NO\n");
- strcpy(Reg_Define, "Register option not selected.");
+ strncpy(Reg_Define, "Register option not selected.", 30);
#endif
printf ("Microseconds for one run through Dhrystone: ");