On Sun, Dec 14, 2008 at 11:34 PM, Sergiu Ivanov
<[email protected]>wrote:
> [...] I
> supply the source file I used to test this thing as an attachment, so
> that there should not be ambiguities.
Please excuse my forgetfulness... The file is attached to this mail.
Also, I checked it again: the lookup simply fails, nothing is copied,
as I said in the mail.
Regards,
scolobb
/* This program must have a file called 'input' in it's working
directory.*/
#define _GNU_SOURCE 1
#include <hurd.h>
#include <hurd/hurd_types.h>
#include <fcntl.h>
#include <stdio.h>
int
main(void)
{
error_t err;
size_t len;
mach_port_t p = file_name_lookup ("input", 0, 0);
char buf[256], * _buf = buf;
len = 256;
err = io_read (p, &_buf, &len, 0, len);
if(err)
printf("Could not read from the file (%X)\n", (unsigned)p);
p = file_name_lookup_under (p, "", O_READ, 0);
err = io_read (p, &_buf, &len, 0, len);
if(err)
printf("Could not read from the file (%X)\n", (unsigned)p);
mach_port_deallocate(mach_task_self(), p);
return 0;
}/*main*/