summaryrefslogtreecommitdiffstats
path: root/runtime/staprun
diff options
context:
space:
mode:
authorfche <fche>2008-01-12 23:02:47 +0000
committerfche <fche>2008-01-12 23:02:47 +0000
commitdc241cba4d146835d7bdc3c32133aad27cdfc8e4 (patch)
tree34edc01bc726a65bc68de7f436b5808f979f39c1 /runtime/staprun
parente6c086bb348b85d8008f61fa0b3d50a1d3e380cf (diff)
downloadsystemtap-steved-dc241cba4d146835d7bdc3c32133aad27cdfc8e4.tar.gz
systemtap-steved-dc241cba4d146835d7bdc3c32133aad27cdfc8e4.tar.xz
systemtap-steved-dc241cba4d146835d7bdc3c32133aad27cdfc8e4.zip
PR5603 hack for stack smash
2008-01-12 Frank Ch. Eigler <fche@elastic.org> PR 5603 horrible hack. * symbols.c (do_kernel_symbols): Make buf[256] instead of [128].
Diffstat (limited to 'runtime/staprun')
-rw-r--r--runtime/staprun/ChangeLog5
-rw-r--r--runtime/staprun/symbols.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/runtime/staprun/ChangeLog b/runtime/staprun/ChangeLog
index 5cd036fd..a7b00a9c 100644
--- a/runtime/staprun/ChangeLog
+++ b/runtime/staprun/ChangeLog
@@ -1,3 +1,8 @@
+2008-01-12 Frank Ch. Eigler <fche@elastic.org>
+
+ PR 5603 horrible hack.
+ * symbols.c (do_kernel_symbols): Make buf[256] instead of [128].
+
2007-12-11 Martin Hunt <hunt@redhat.com>
PR5368
* relay_old.c (init_oldrelayfs): Don't start threads
diff --git a/runtime/staprun/symbols.c b/runtime/staprun/symbols.c
index 315362fa..e4d96ee0 100644
--- a/runtime/staprun/symbols.c
+++ b/runtime/staprun/symbols.c
@@ -198,7 +198,7 @@ void do_kernel_symbols(void)
{
FILE *kallsyms=NULL;
char *sym_base=NULL, *data_base=NULL;
- char buf[128], *ptr, *name, *data, *dataptr, *datamax, type;
+ char buf[256], *ptr, *name, *data, *dataptr, *datamax, type;
unsigned long addr;
struct _stp_symbol *syms;
int num_syms, i = 0, max_syms= MAX_SYMBOLS;
@@ -226,7 +226,7 @@ void do_kernel_symbols(void)
/* put empty string in data */
*dataptr++ = 0;
- while (fgets_unlocked(buf, 128, kallsyms) && dataptr < datamax) {
+ while (fgets_unlocked(buf, 256, kallsyms) && dataptr < datamax) {
addr = strtoul(buf, &ptr, 16);
while (isspace(*ptr)) ptr++;
type = *ptr++;