[Box Backup] Patch for raidfile test on NetBSD 4/5

Jose Luis Rodriguez Garcia joseyluis at gmail.com
Sun Apr 11 02:32:49 BST 2010


On Tue, Apr 6, 2010 at 10:55 PM, Chris Wilson <chris at qwirx.com> wrote:
> Hi Jose,
>.....
> Thanks for the patch! Please do post it on our bug tracker to ensure that it
> doesn't get forgotten. I will need to review it to ensure that it meets our
> coding style and doesn't break other platforms. Will you continue to test
> future versions of Box Backup on NetBSD 4/5? Would you mind being the
> official (or unofficial) maintainer of support for this platform?
Not problem, I can be the maintener of support for this platform. The only
problem is that I can't dedicate much time to boxbackup. What is the
difference between official or unofficial maintainer?
>
>> The problem is that in NetBSD 4/5 the readdir and openddir functions
>> are called in libc: __readdir30 and __closedir30.
>> readdir and closedir exist for compatibility with NetBSD 3 and before.
>>
>> There was a change in the ABI between the 3 and 4 version for enable
>> 64 bits types.
>
> Perhaps we need to use the 64-bit versions instead? I guess that these, and
> not the 32-bit versions, are called by the standard readdir() and closedir()
> functions in C code?
>

This was a change for use inode of 64 bits in kernel instead of inodes
of 32 bits in kernel.
The functions continue to be the same when you code a program.
1- In the C library the old readdir and opendir are called: readdir and openddir
2- In the C library the new readdir and opendir are called __readdir30
and __opendir30
When you compile, a new program the dirent.h header rename the
functions readdir/opendir to __readir30/__opendir30

It is for maintain compatibility binary. (NetBSD hasn't ever broken
binary compatibility)

readdir and opendir are the functions that are changed (I wrote
closedir in my e-mail. It was closedir not opendir).



More information about the Boxbackup mailing list