pmap: empty output or crashes on ppc/s390 caused by wrong pidlist type
Previously the pidlist variable was defined as unsigned long * whilst the openproc function accepts pid_t *. Both target types differ in size (8 != 4) and therefore the issue mainly affects big endian architectures. This commit changes the pidlist type to pid_t * so that it's compatible with openproc.
This commit is contained in:
parent
5a27c8095e
commit
365a5fa517
4
pmap.c
4
pmap.c
@ -621,7 +621,7 @@ static void range_arguments(char *optarg)
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
unsigned long *pidlist;
|
||||
pid_t *pidlist;
|
||||
unsigned count = 0;
|
||||
PROCTAB *PT;
|
||||
proc_t p;
|
||||
@ -689,7 +689,7 @@ int main(int argc, char **argv)
|
||||
x_option && (d_option || X_option))
|
||||
xerrx(EXIT_FAILURE, _("options -d, -x, -X are mutually exclusive"));
|
||||
|
||||
pidlist = xmalloc(sizeof(unsigned long) * argc);
|
||||
pidlist = xmalloc(sizeof(pid_t) * argc);
|
||||
|
||||
while (*argv) {
|
||||
char *walk = *argv++;
|
||||
|
Loading…
Reference in New Issue
Block a user