Hi, I am trying to add FreeBSD 6.0 support to snortsam http://www.snortsam.net/ But before hacking in to the actual code I am currently learning to use pf ioctl, and I am facing a problem.
I created a small test program to test the ioctl interface, #include <sys/types.h> #include <sys/socket.h> #include <sys/ioctl.h> #include <sys/fcntl.h> #include <net/if.h> #include <netinet/in.h> #include <net/pfvar.h> #include <err.h> #include <stdio.h> #include <stdlib.h> #include <errno.h> int main(int argc, char *argv[]) { struct pfioc_rule rule; int pfdev; pfdev = open("/dev/pf", O_RDWR); if (pfdev == -1) err(1, "open(\"/dev/pf\") failed"); bzero(&rule, sizeof(struct pfioc_rule)); strncpy(rule.rule.ifname, "rl0", IFNAMSIZ); strncpy(rule.anchor, "testanchor", PF_ANCHOR_NAME_SIZE-1); rule.action = PF_CHANGE_GET_TICKET; if(ioctl(pfdev, DIOCCHANGERULE, &rule)<0) { printf("Error: DIOCCHANGERULE %s.\n", strerror(errno)); return 255; } This is basically as simple as it could be, and while I run it I get the error: Error: DIOCCHANGERULE Invalid argument. Looking through the google*, I found that the problem is that I did not init the ruleset along with anchor. But from the docs or man pages I could not find out how can I init the ruleset. Can some one point me towads the right direction? with warm regards, raj *: http://62.65.145.30/pf/msg03157.html _______________________________________________ freebsd-pf@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-pf To unsubscribe, send any mail to "[EMAIL PROTECTED]"