Commit 8935d2f1 authored by Antoine Jacoutot's avatar Antoine Jacoutot

openbsd: properly set len for gtkmountoperation-x11

sysctl(3) is the correct way to get the lenght for len in this case.
Also drop unused headers and change style to match the rest of the file.
parent fab2173b
......@@ -41,9 +41,6 @@
#include <errno.h>
#if defined(__OpenBSD__)
#include <stdlib.h>
#include <sys/param.h>
#include <fcntl.h>
#include <sys/sysctl.h>
#endif
......@@ -731,11 +728,11 @@ pid_get_parent (GPid pid)
int mib[] = { CTL_KERN, KERN_PROC, KERN_PROC_PID, pid,
sizeof(struct kinfo_proc), 0 };
if (sysctl(mib, G_N_ELEMENTS (mib), NULL, &len, NULL, 0) == -1)
if (sysctl (mib, G_N_ELEMENTS (mib), NULL, &len, NULL, 0) == -1)
return (-1);
mib[5] = (len / sizeof(struct kinfo_proc));
if (sysctl(mib, G_N_ELEMENTS (mib), &kp, &len, NULL, 0) < 0)
if (sysctl (mib, G_N_ELEMENTS (mib), &kp, &len, NULL, 0) < 0)
return -1;
ppid = kp.p_ppid;
......@@ -746,21 +743,23 @@ pid_get_parent (GPid pid)
static gchar *
pid_get_env (GPid pid, const gchar *key)
{
size_t len = PATH_MAX;
char **strs = NULL;
char *ret;
size_t len;
char **strs;
char *ret = NULL;
char *end;
int key_len;
int i;
int mib[] = { CTL_KERN, KERN_PROC_ARGS, pid, KERN_PROC_ENV };
strs = (char **)realloc(strs, len);
if (sysctl (mib, G_N_ELEMENTS (mib), NULL, &len, NULL, 0) == -1)
return ret;
strs = g_malloc0 (len);
key_len = strlen (key);
ret = NULL;
if (sysctl(mib, G_N_ELEMENTS (mib), strs, &len, NULL, 0) != -1)
if (sysctl (mib, G_N_ELEMENTS (mib), strs, &len, NULL, 0) != -1)
{
for (i = 0; strs[i] != NULL; i++)
{
......@@ -783,18 +782,20 @@ pid_get_env (GPid pid, const gchar *key)
static gchar *
pid_get_command_line (GPid pid)
{
size_t len = PATH_MAX;
char **strs = NULL;
char *ret = NULL;
char *end;
size_t len;
char **strs;
char *ret, *end;
int mib[] = { CTL_KERN, KERN_PROC_ARGS, pid, KERN_PROC_ARGV };
strs = (char **)realloc(strs, len);
if (sysctl (mib, G_N_ELEMENTS (mib), NULL, &len, NULL, 0) == -1)
return NULL;
strs = g_malloc0 (len);
if (sysctl(mib, G_N_ELEMENTS (mib), strs, &len, NULL, 0) == -1) {
if (sysctl (mib, G_N_ELEMENTS (mib), strs, &len, NULL, 0) == -1) {
g_free (strs);
return ret;
return NULL;
}
ret = g_strjoinv (" ", strs);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment