Hi,

I tried to compile Pfil 2.1.11 on Solaris 11 running on Intel but
failed. The error messages are:

cc   -I.. -I. -D_KERNEL -DSUNDDI -DSOLARIS2=11  -c ../pfil.c -o pfil.o
cc   -I.. -I. -D_KERNEL -DSUNDDI -DSOLARIS2=11  -c qif.c -o qif.o
"qif.c", line 1020: warning: improper pointer/integer combination: arg
#8
"qif.c", line 1020: prototype mismatch: 8 args passed, 9 expected
cc: acomp failed for qif.c


The code around Line 1020 of qif.c :
qif_t *qif_illrouteto(int v, void *addr)
{
        struct in_addr ip;
        ire_t *dir;
        ill_t *il;

        if (v == 4) {
                ip = *(struct in_addr *)addr;

#ifdef  MATCH_IRE_DSTONLY   dir =ire_route_lookup    <========= Line
1020
        (ip.s_addr, 0xffffffff, 0, 0,       
        NULL, NULL, NULL, MATCH_IRE_DSTONLY|MATCH_IRE_DEFAULT,
MATCH_IRE_RECURSIVE);


I checked the function definition of ire_route_lookup( ), on Solaris 11
it is defined as  
/*
   4503  * Lookup for a route in all the tables
   4504  */
   4505 ire_t *
   4506 ire_route_lookup(ipaddr_t addr, ipaddr_t mask, ipaddr_t gateway,
   4507     int type, const ipif_t *ipif, ire_t **pire, zoneid_t zoneid,
   4508     const ts_label_t *tsl, int flags, ip_stack_t *ipst)


The interface on Solaris 11 indeed has one extra parameter "ip_stack_t
*ipst" than the same function on Solaris 10, so the compilation fails.

I know Sun has not officially release Solaris 11 yet, but will soon. 

Is there any one runs into the same problem?

Andrew 


 


Reply via email to