Lines Matching refs:ps
88 * ps::ps_buf must be freed by user after use (in case of success)
91 get_states(int fd, int verbose __unused, struct pfioc_states* ps)
93 memset(ps, 0, sizeof(*ps));
94 ps->ps_len = 0;
98 if (ioctl(fd, DIOCGETSTATES, ps) == -1) {
103 if (ps->ps_len == 0)
106 inbuf = malloc(ps->ps_len);
110 ps->ps_buf = inbuf;
113 if (ioctl(fd, DIOCGETSTATES, ps) == -1) {
114 free(ps->ps_buf);
118 return (ps->ps_len / sizeof(struct pfsync_state));
125 struct pfioc_states ps;
136 nb_states = get_states(fd, verbose, &ps);
152 p = ps.ps_states;
177 struct pfioc_states ps;
194 ps.ps_len = nb_states * sizeof(struct pfsync_state);
195 ps.ps_states = malloc(ps.ps_len);
196 if (ps.ps_states == NULL) {
203 p = ps.ps_states;
209 free(ps.ps_states);
215 if (ioctl(fd, DIOCADDSTATES, &ps) == -1) {
218 free(ps.ps_states);
223 free(ps.ps_states);
288 display_states(const struct pfioc_states *ps, int verbose __unused, FILE* f)
297 p = ps->ps_states;
298 nb_states = ps->ps_len / sizeof(struct pfsync_state);
349 struct pfioc_states ps;
352 nb_states = get_states(fd, verbose, &ps);
357 display_states(&ps, verbose, f);
359 free(ps.ps_states);
388 struct pfioc_states ps;
395 parse(f, &ps);
397 if (ioctl(fd, DIOCADDSTATES, &ps) == -1) {
400 free(ps.ps_states);
405 free(ps.ps_states);
426 struct pfioc_states ps;
442 parse(f1, &ps);
443 display_states(&ps, verbose, f2);
445 free(ps.ps_states);