Thanks a lot Russ....I'll check it out and let you know how it works. Renata
On Fri, 1 Jun 2012, Russ Allbery wrote: >Renata Maria Dart <[email protected]> writes: > >> Hi, I have been trying to compile pam-afs-session-2.5 on solaris 11. I >> have generated krb5 1.6.2, and heimdal 1.5.2 so that I have libkafs.a >> and libkafs.la, and I have OpenAFS 1.6.1 running on the system. I am >> using the following configure: > >> ./configure --prefix=/opt/pam >> --with-krb5=/afs/slac.stanford.edu/package/krb5/1.6.2/sunx86_511 >> --with-libkafs=/afs/slac.stanford.edu/package/heimdal/sunx86_511/sunx86_511 > >The configure script was unable to find any libkafs library at that path >and is falling back on the internal implementation. > >> The make fails: > >> In file included from kafs/kafs.c:75:0: >> ./kafs/sys-solaris.c: In function 'k_syscall': >> ./kafs/sys-solaris.c:80:25: error: storage size of 'syscall_data' isn't known >> ./kafs/sys-solaris.c:89:15: error: invalid application of 'sizeof' to >> incomplete type 'struct afssysargs32' >> ./kafs/sys-solaris.c:80:25: warning: unused variable 'syscall_data' >> ./kafs/sys-solaris.c:77:13: warning: unused variable 'code' >> *** Error code 1 >> make: Fatal error: Command failed for target `kafs/kafs.lo' > >The structure namings turned out to neither match the structures defined >in that file or the names used by OpenAFS. The perils of writing code for >a platform that I can't test. The following patch should fix it: > >diff --git a/kafs/sys-solaris.c b/kafs/sys-solaris.c >index 27dbc46..cb3421f 100644 >--- a/kafs/sys-solaris.c >+++ b/kafs/sys-solaris.c >@@ -77,7 +77,7 @@ k_syscall(long call, long param1, long param2, long param3, >long param4, > int fd, code, oerrno, callnum; > > #ifdef _ILP32 >- struct afssysargs32 syscall_data; >+ struct afssysargs syscall_data; > > syscall_data.syscall = call; > syscall_data.param1 = param1; >@@ -86,9 +86,9 @@ k_syscall(long call, long param1, long param2, long param3, >long param4, > syscall_data.param4 = param4; > syscall_data.param5 = 0; > syscall_data.param6 = 0; >- callnum = _IOW('C', 2, struct afssysargs32); >+ callnum = _IOW('C', 2, struct afssysargs); > #else >- struct afssysargs syscall_data; >+ struct afssysargs64 syscall_data; > > syscall_data.syscall = call; > syscall_data.param1 = param1; >@@ -97,7 +97,7 @@ k_syscall(long call, long param1, long param2, long param3, >long param4, > syscall_data.param4 = param4; > syscall_data.param5 = 0; > syscall_data.param6 = 0; >- callnum = _IOW('C', 1, struct afssysargs); >+ callnum = _IOW('C', 1, struct afssysargs64); > #endif > > fd = open("/dev/afs", O_RDWR); > >-- >Russ Allbery ([email protected]) <http://www.eyrie.org/~eagle/> >_______________________________________________ >OpenAFS-info mailing list >[email protected] >https://lists.openafs.org/mailman/listinfo/openafs-info > _______________________________________________ OpenAFS-info mailing list [email protected] https://lists.openafs.org/mailman/listinfo/openafs-info
