DragonFly BSD
DragonFly submit List (threaded) for 2003-11
[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]

kern.file weirdness


From: Eirik Nygaard <eirikn@xxxxxxxxxxxx>
Date: Sat, 22 Nov 2003 11:53:30 +0100

I am working on removing perlism in userland and have come over a little
problem when I am rewriting sockstat. I try to get all the open fd's from
the kern.file sysctl with this code:
void
get_files(void)
{
	size_t size;
	
	if (sysctlbyname("kern.file", NULL, &size, NULL, 0) < 0)
		err(1, "sysctlbyname()");
	if ((files = malloc(size)) == NULL)
		err(1, "malloc()");
	if (sysctlbyname("kern.file", files, &size, NULL, 0) < 0) 
		err(1, "sysctlbyname()");
	
	nfiles = size / sizeof(struct file);
	{
		int i;
		for(i = 0; i < nfiles; i++)
			printf("Type: %d\n", files[i].f_type);
	}
	
}

but it only gives me bogus results for some reason.

Output: 
Type: -16333
Type: -14424
[...]
Type: -14424

Would be grateful if someone knows what I am doing wrong here.

-- 
Eirik Nygaard
eirikn@xxxxxxxxxxxx

Attachment: pgp00011.pgp
Description: PGP signature



[Date Prev][Date Next]  [Thread Prev][Thread Next]  [Date Index][Thread Index]