aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorPeter Wemm <peter@FreeBSD.org>2001-08-16 08:35:51 +0000
committerPeter Wemm <peter@FreeBSD.org>2001-08-16 08:35:51 +0000
commit6eef6816a8ab9386fba8117da118af4f4b903085 (patch)
tree63dc7e166d55089e00f93021ab8803b06a8e04fa /sys
parent8ab59f709385749d7996131f61bb31ae13330c2a (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/kern/imgact_elf.c3
-rw-r--r--sys/sys/procfs.h3
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/kern/imgact_elf.c b/sys/kern/imgact_elf.c
index 8cf2e2476663..ff18d0e2a5d5 100644
--- a/sys/kern/imgact_elf.c
+++ b/sys/kern/imgact_elf.c
@@ -919,7 +919,8 @@ elf_corehdr(p, vp, cred, numsegs, hdr, hdrsize)
bzero(&psinfo, sizeof psinfo);
psinfo.pr_version = PRPSINFO_VERSION;
psinfo.pr_psinfosz = sizeof(prpsinfo_t);
- strncpy(psinfo.pr_fname, p->p_comm, MAXCOMLEN);
+ strncpy(psinfo.pr_fname, p->p_comm, sizeof(psinfo.pr_fname) - 1);
+ psinfo.pr_fname[sizeof(psinfo.pr_fname) - 1] = '\0';
/* XXX - We don't fill in the command line arguments properly yet. */
strncpy(psinfo.pr_psargs, p->p_comm, PRARGSZ);
diff --git a/sys/sys/procfs.h b/sys/sys/procfs.h
index 04f0e1c71a80..a7d49c160fe7 100644
--- a/sys/sys/procfs.h
+++ b/sys/sys/procfs.h
@@ -67,6 +67,7 @@ typedef struct prstatus {
typedef fpregset_t prfpregset_t;
+#define PRFNAMESZ 16 /* Maximum command length saved */
#define PRARGSZ 80 /* Maximum argument bytes saved */
#define PRPSINFO_VERSION 1 /* Current version of prpsinfo_t */
@@ -74,7 +75,7 @@ typedef fpregset_t prfpregset_t;
typedef struct prpsinfo {
int pr_version; /* Version number of struct (1) */
size_t pr_psinfosz; /* sizeof(prpsinfo_t) (1) */
- char pr_fname[MAXCOMLEN+1]; /* Command name, null terminated (1) */
+ char pr_fname[PRFNAMESZ+1]; /* Command name, null terminated (1) */
char pr_psargs[PRARGSZ+1]; /* Arguments, null terminated (1) */
} prpsinfo_t;