=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/systat/pf.c,v retrieving revision 1.9 retrieving revision 1.10 diff -c -r1.9 -r1.10 *** src/usr.bin/systat/pf.c 2017/06/01 14:38:28 1.9 --- src/usr.bin/systat/pf.c 2019/05/09 15:01:09 1.10 *************** *** 1,4 **** ! /* $OpenBSD: pf.c,v 1.9 2017/06/01 14:38:28 patrick Exp $ */ /* * Copyright (c) 2001, 2007 Can Erkin Acar * --- 1,4 ---- ! /* $OpenBSD: pf.c,v 1.10 2019/05/09 15:01:09 claudio Exp $ */ /* * Copyright (c) 2001, 2007 Can Erkin Acar * *************** *** 16,21 **** --- 16,22 ---- */ #include + #include #include #include #include *************** *** 46,52 **** const char *pf_scounters[FCNT_MAX+1] = FCNT_NAMES; static struct pf_status status; - extern int pf_dev; int num_pf = 0; field_def fields_pf[] = { --- 47,52 ---- *************** *** 91,103 **** int read_pf(void) { ! if (pf_dev < 0) { ! num_disp = 0; ! return 0; ! } ! if (ioctl(pf_dev, DIOCGETSTATUS, &status)) { ! error("DIOCGETSTATUS: %s", strerror(errno)); return (-1); } --- 91,101 ---- int read_pf(void) { ! size_t size = sizeof(status); ! int mib[3] = { CTL_KERN, KERN_PFSTATUS }; ! if (sysctl(mib, 2, &status, &size, NULL, 0) < 0) { ! error("sysctl(PFCTL_STATUS): %s", strerror(errno)); return (-1); }