[OpenAFS-devel] Header problem?

Todd Lewis utoddl@email.unc.edu
Fri, 26 Jul 2013 10:02:29 -0400


I'm trying to build a program against openafs-devel-1.6.4-1.fc19.i686,
though this same problem has been hanging around since I switched from 1.4
to 1.6. I'm hitting what I think is a problem with the headers as
packaged. Here's a minimum source snippet:

-----start-boom.c----
#include <rx/xdr.h>
#include <afs/afs.h>
-----end-boom.c

And to see the problem, run

  gcc -c boom.c

and I get this:
> In file included from boom.c:2:0:
> /usr/include/afs/afs.h:1418:27: error: field ‘InStatus’ has incomplete type
>      struct AFSStoreStatus InStatus;
>                            ^
> /usr/include/afs/afs.h:1478:16: error: unknown type name ‘afs_ucred_t’
>  afs_set_cr_uid(afs_ucred_t *cred, uid_t uid) {
>                 ^
> /usr/include/afs/afs.h:1482:16: error: unknown type name ‘afs_ucred_t’
>  afs_set_cr_gid(afs_ucred_t *cred, gid_t gid) {
>                 ^
> /usr/include/afs/afs.h:1487:17: error: unknown type name ‘afs_ucred_t’
>  afs_set_cr_ruid(afs_ucred_t *cred, uid_t uid) {
>                  ^
> /usr/include/afs/afs.h:1491:17: error: unknown type name ‘afs_ucred_t’
>  afs_set_cr_rgid(afs_ucred_t *cred, gid_t gid) {

Not that it matters, but the software I'm trying to build is Adam Megacz'
http://www.megacz.com/software/libnss-afs.html. I've been running it
against an older OpenAFS client, but with the recent security issue that
will soon no longer be an option.

I've tried rearranging the include order and a few other useless hacks,
but I think there's something missing in the headers as packaged. Any
suggestions would be welcome.
-- 
Todd_Lewis@unc.edu
http://www.unc.edu/~utoddl