Home | History | Annotate | Download | only in netinet

Lines Matching defs:softc

230 /* Parameters:  softc(I) - pointer to soft context main structure           */
236 ipf_state_soft_create(ipf_main_softc_t *softc)
250 ipf_state_soft_destroy(softc, softs);
253 if (ipf_tune_array_link(softc, softs->ipf_state_tune) == -1) {
254 ipf_state_soft_destroy(softc, softs);
281 /* Parameters: softc(I) - pointer to soft context main structure */
288 ipf_state_soft_destroy(ipf_main_softc_t *softc, void *arg)
293 ipf_tune_array_unlink(softc, softs->ipf_state_tune);
331 /* Parameters: softc(I) - pointer to soft context main structure */
344 ipf_state_soft_init(ipf_main_softc_t *softc, void *arg)
376 ipf_sttab_init(softc, softs->ipf_state_tcptq);
381 IPFTQ_INIT(&softs->ipf_state_udptq, softc->ipf_udptimeout,
385 IPFTQ_INIT(&softs->ipf_state_udpacktq, softc->ipf_udpacktimeout,
389 IPFTQ_INIT(&softs->ipf_state_icmptq, softc->ipf_icmptimeout,
393 IPFTQ_INIT(&softs->ipf_state_icmpacktq, softc->ipf_icmpacktimeout,
397 IPFTQ_INIT(&softs->ipf_state_iptq, softc->ipf_iptimeout,
410 softs->ipf_state_wm_last = softc->ipf_ticks;
420 /* Parameters: softc(I) - pointer to soft context main structure */
427 ipf_state_soft_fini(ipf_main_softc_t *softc, void *arg)
434 ipf_state_del(softc, is, ISL_UNLOAD);
447 ipf_freetimeoutqueue(softc, ifq);
508 /* Parameters: softc(I) - pointer to soft context main structure */
514 ipf_state_stats(ipf_main_softc_t *softc)
516 ipf_state_softc_t *softs = softc->ipf_state_soft;
523 issp->iss_ticks = softc->ipf_ticks;
526 issp->iss_log_ok = ipf_log_logok(softc, IPF_LOGSTATE);
527 issp->iss_log_fail = ipf_log_failures(softc, IPF_LOGSTATE);
538 /* Parameters: softc(I) - pointer to soft context main structure */
545 ipf_state_remove(ipf_main_softc_t *softc, void *data)
547 ipf_state_softc_t *softs = softc->ipf_state_soft;
552 error = ipf_inobj(softc, data, NULL, &st, IPFOBJ_IPSTATE);
556 WRITE_ENTER(&softc->ipf_state);
565 ipf_state_del(softc, sp, ISL_REMOVE);
566 RWLOCK_EXIT(&softc->ipf_state);
569 RWLOCK_EXIT(&softc->ipf_state);
579 /* Parameters: softc(I) - pointer to soft context main structure */
589 ipf_state_ioctl(ipf_main_softc_t *softc, void *data, ioctlcmd_t cmd, int mode,
592 ipf_state_softc_t *softs = softc->ipf_state_soft;
602 error = ipf_state_remove(softc, data);
615 WRITE_ENTER(&softc->ipf_state);
616 ret = ipf_state_flush(softc, arg, 4);
617 RWLOCK_EXIT(&softc->ipf_state);
635 WRITE_ENTER(&softc->ipf_state);
636 ret = ipf_state_flush(softc, arg, 6);
637 RWLOCK_EXIT(&softc->ipf_state);
649 WRITE_ENTER(&softc->ipf_state);
650 error = ipf_state_matchflush(softc, data);
651 RWLOCK_EXIT(&softc->ipf_state);
665 tmp = ipf_log_clear(softc, IPL_LOGSTATE);
707 arg = ipf_log_bytesused(softc, IPL_LOGSTATE);
720 error = ipf_outobj(softc, data, ipf_state_stats(softc),
746 error = ipf_state_putent(softc, softs, data);
758 error = ipf_state_getent(softc, softs, data);
779 error = ipf_inobj(softc, data, &obj, &iter, IPFOBJ_GENITER);
784 token = ipf_token_find(softc, IPFGENITER_STATE, uid, ctx);
786 error = ipf_state_iter(softc, token, &iter, &obj);
787 WRITE_ENTER(&softc->ipf_tokens);
788 ipf_token_deref(softc, token);
789 RWLOCK_EXIT(&softc->ipf_tokens);
799 error = ipf_state_gettable(softc, softs, data);
809 error = ipf_token_del(softc, arg, uid, ctx);
815 error = ipf_outobj(softc, data, softs->ipf_state_tcptq,
831 /* Parameters: softc(I) - pointer to soft context main structure */
842 ipf_state_getent(ipf_main_softc_t *softc, ipf_state_softc_t *softs, void *data)
848 error = ipf_inobj(softc, data, NULL, &ips, IPFOBJ_STATESAVE);
852 READ_ENTER(&softc->ipf_state);
858 RWLOCK_EXIT(&softc->ipf_state);
874 RWLOCK_EXIT(&softc->ipf_state);
885 RWLOCK_EXIT(&softc->ipf_state);
886 error = ipf_outobj(softc, data, &ips, IPFOBJ_STATESAVE);
894 /* Parameters: softc(I) - pointer to soft context main structure */
904 ipf_state_putent(ipf_main_softc_t *softc, ipf_state_softc_t *softs, void *data)
912 error = ipf_inobj(softc, data, NULL, &ips, IPFOBJ_STATESAVE);
938 READ_ENTER(&softc->ipf_state);
939 inserr = ipf_state_insert(softc, isn, 0);
941 RWLOCK_EXIT(&softc->ipf_state);
968 fr->fr_ifas[i] = ipf_resolvenic(softc, name,
974 isn->is_ifp[i] = ipf_resolvenic(softc, name,
983 (void) ipf_resolvedest(softc, fr->fr_names, &fr->fr_tifs[0],
985 (void) ipf_resolvedest(softc, fr->fr_names, &fr->fr_tifs[1],
987 (void) ipf_resolvedest(softc, fr->fr_names, &fr->fr_dif,
994 error = ipf_outobj(softc, data, &ips, IPFOBJ_STATESAVE);
1002 READ_ENTER(&softc->ipf_state);
1003 error = ipf_state_insert(softc, isn, 0);
1005 RWLOCK_EXIT(&softc->ipf_state);
1008 READ_ENTER(&softc->ipf_state);
1011 error = ipf_state_insert(softc, isn, 0);
1020 RWLOCK_EXIT(&softc->ipf_state);
1035 /* Parameters: softc(I) - pointer to soft context main structure */
1050 ipf_state_insert(ipf_main_softc_t *softc, ipstate_t *is, int rev)
1052 ipf_state_softc_t *softs = softc->ipf_state_soft;
1063 is->is_ifp[i] = ipf_resolvenic(softc, is->is_ifname[i],
1087 (ipf_ht_node_add(softc, &fr->fr_srctrack,
1128 ipf_state_setqueue(softc, is, rev);
1331 /* Parameters: softc(I) - pointer to soft context main structure */
1348 ipf_state_add(ipf_main_softc_t *softc, fr_info_t *fin, ipstate_t **stsave,
1351 ipf_state_softc_t *softs = softc->ipf_state_soft;
1414 pass = softc->ipf_flags;
1424 is->is_die = 1 + softc->ipf_ticks;
1673 tq = ipf_addtimeoutqueue(softc,
1680 tq = ipf_addtimeoutqueue(softc,
1726 READ_ENTER(&softc->ipf_state);
1728 if (ipf_state_insert(softc, is, fin->fin_rev) == -1) {
1729 RWLOCK_EXIT(&softc->ipf_state);
1738 ipf_freetimeoutqueue(softc, is->is_tqehead[0]);
1743 ipf_freetimeoutqueue(softc, is->is_tqehead[1]);
1814 is->is_sync = ipf_sync_new(softc, SMC_STATE, fin, is);
1816 ipf_state_log(softc, is, ISL_NEW);
1818 RWLOCK_EXIT(&softc->ipf_state);
1822 (void) ipf_frag_new(softc, fin, pass);
1960 /* Parameters: softc(I) - pointer to soft context main structure */
1971 ipf_state_tcp(ipf_main_softc_t *softc, ipf_state_softc_t *softs, fr_info_t *fin,
1994 ipf_movequeue(softc->ipf_ticks, &is->is_sti,
2023 ipf_state_log(softc, is, ISL_STATECHANGE);
2118 ipf_main_softc_t *softc = fin->fin_main_soft;
2119 ipf_state_softc_t *softs = softc->ipf_state_soft;
2300 ipf_main_softc_t *softc = fin->fin_main_soft;
2301 ipf_state_softc_t *softs = softc->ipf_state_soft;
2327 clone->is_die = ONE_DAY + softc->ipf_ticks;
2354 if (ipf_state_insert(softc, clone, fin->fin_rev) == -1) {
2366 clone->is_sync = ipf_sync_new(softc, SMC_STATE, fin, clone);
2391 ipf_main_softc_t *softc = fin->fin_main_soft;
2392 ipf_state_softc_t *softs = softc->ipf_state_soft;
2580 ipf_state_log(softc, is, ISL_CLONE);
2625 ipf_main_softc_t *softc = fin->fin_main_soft;
2626 ipf_state_softc_t *softs = softc->ipf_state_soft;
2776 READ_ENTER(&softc->ipf_state);
2790 RWLOCK_EXIT(&softc->ipf_state);
2807 READ_ENTER(&softc->ipf_state);
2826 RWLOCK_EXIT(&softc->ipf_state);
2846 ipf_main_softc_t *softc = fin->fin_main_soft;
2847 ipf_state_softc_t *softs = softc->ipf_state_soft;
2860 ipass = ipf_scanlist(fin, softc->ipf_pass);
2970 ipf_main_softc_t *softc = fin->fin_main_soft;
2971 ipf_state_softc_t *softs = softc->ipf_state_soft;
3032 READ_ENTER(&softc->ipf_state);
3059 MUTEX_DOWNGRADE(&softc->ipf_state);
3063 RWLOCK_EXIT(&softc->ipf_state);
3083 WRITE_ENTER(&softc->ipf_state);
3098 READ_ENTER(&softc->ipf_state);
3117 RWLOCK_EXIT(&softc->ipf_state);
3130 READ_ENTER(&softc->ipf_state);
3145 if (!ipf_state_tcp(softc, softs, fin,
3160 MUTEX_DOWNGRADE(&softc->ipf_state);
3164 RWLOCK_EXIT(&softc->ipf_state);
3189 WRITE_ENTER(&softc->ipf_state);
3207 READ_ENTER(&softc->ipf_state);
3220 RWLOCK_EXIT(&softc
3250 ipf_main_softc_t *softc = fin->fin_main_soft;
3251 ipf_state_softc_t *softs = softc->ipf_state_soft;
3332 RWLOCK_EXIT(&softc->ipf_state);
3337 RWLOCK_EXIT(&softc->ipf_state);
3356 (void) ipf_frag_new(softc, fin, is->is_pass);
3369 ipf_movequeue(softc->ipf_ticks, tqe, tqe->tqe_ifq, ifq);
3381 ipf_sync_update(softc, SMC_STATE, fin, is->is_sync);
3383 RWLOCK_EXIT(&softc->ipf_state);
3474 /* Parameters: softc(I) - pointer to soft context main structure */
3485 ipf_state_sync(ipf_main_softc_t *softc, void *ifp)
3487 ipf_state_softc_t *softs = softc->ipf_state_soft;
3491 if (softc->ipf_running <= 0)
3494 WRITE_ENTER(&softc->ipf_state);
3496 if (softc->ipf_running <= 0) {
3497 RWLOCK_EXIT(&softc->ipf_state);
3507 is->is_ifp[i] = ipf_resolvenic(softc,
3512 RWLOCK_EXIT(&softc->ipf_state);
3519 /* Parameters: softc(I) - pointer to soft context main structure */
3529 ipf_state_del(ipf_main_softc_t *softc, ipstate_t *is, int why)
3531 ipf_state_softc_t *softs = softc->ipf_state_soft;
3609 ipf_freetimeoutqueue(softc, is->is_tqehead[0]);
3613 ipf_freetimeoutqueue(softc, is->is_tqehead[1]);
3617 ipf_sync_del_state(softc->ipf_sync_soft, is->is_sync);
3633 ipf_state_log(softc, is, why);
3644 (void) ipf_derefrule(softc, &fr);
3660 /* Parameters: softc(I) - pointer to soft context main structure */
3668 ipf_state_expire(ipf_main_softc_t *softc)
3670 ipf_state_softc_t *softs = softc->ipf_state_soft;
3677 WRITE_ENTER(&softc->ipf_state);
3680 if (tqe->tqe_die > softc->ipf_ticks)
3684 ipf_state_del(softc, is, ISL_EXPIRE);
3691 if (tqe->tqe_die > softc->ipf_ticks)
3695 ipf_state_del(softc, is, ISL_EXPIRE);
3704 ipf_freetimeoutqueue(softc, ifq);
3709 (void) ipf_state_flush(softc, 2, 0);
3711 softs->ipf_state_wm_last = softc->ipf_ticks;
3714 RWLOCK_EXIT(&softc->ipf_state);
3722 /* Parameters: softc(I) - pointer to soft context main structure */
3739 ipf_state_flush(ipf_main_softc_t *softc, int which, int proto)
3741 ipf_state_softc_t *softs = softc->ipf_state_soft;
3764 if (ipf_state_del(softc, is, ISL_FLUSH) == 0)
3785 if (ipf_state_del(softc, is, ISL_FLUSH) == 0)
3803 if (ipf_state_del(softc, is,
3831 if (ipf_state_del(softc, is, ISL_FLUSH) == 0)
3849 if (softc->ipf_ticks - is->is_touched > which) {
3850 if (ipf_state_del(softc, is,
3875 if (softc->ipf_ticks - softs->ipf_state_wm_last >
3877 removed = ipf_queueflush(softc, ipf_state_flush_entry,
3883 softs->ipf_state_wm_last = softc->ipf_ticks;
3894 /* Parameters: softc(I) - pointer to soft context main structure */
3903 ipf_state_flush_entry(ipf_main_softc_t *softc, void *entry)
3905 return ipf_state_del(softc, entry, ISL_FLUSH);
3962 ipf_main_softc_t *softc = fin->fin_main_soft;
4277 ipf_movequeue(softc->ipf_ticks, tqe, tqe->tqe_ifq,
4288 /* Parameters: softc(I) - pointer to soft context main structure */
4297 ipf_state_log(ipf_main_softc_t *softc, struct ipstate *is, u_int type)
4347 (void) ipf_log_items(softc, IPL_LOGSTATE, NULL, items, sizes, types, 1);
4366 ipf_main_softc_t *softc = fin->fin_main_soft;
4367 ipf_state_softc_t *softs = softc->ipf_state_soft;
4462 READ_ENTER(&softc->ipf_state);
4486 RWLOCK_EXIT(&softc->ipf_state);
4528 READ_ENTER(&softc->ipf_state);
4545 RWLOCK_EXIT(&softc->ipf_state);
4555 /* Parameters: softc(I) - pointer to soft context main structure */
4561 ipf_sttab_init(ipf_main_softc_t *softc, ipftq_t *tqp)
4570 tqp[IPF_TCPS_CLOSED].ifq_ttl = softc->ipf_tcpclosed;
4571 tqp[IPF_TCPS_LISTEN].ifq_ttl = softc->ipf_tcptimeout;
4572 tqp[IPF_TCPS_SYN_SENT].ifq_ttl = softc->ipf_tcpsynsent;
4573 tqp[IPF_TCPS_SYN_RECEIVED].ifq_ttl = softc->ipf_tcpsynrecv;
4574 tqp[IPF_TCPS_ESTABLISHED].ifq_ttl = softc->ipf_tcpidletimeout;
4575 tqp[IPF_TCPS_CLOSE_WAIT].ifq_ttl = softc->ipf_tcphalfclosed;
4576 tqp[IPF_TCPS_FIN_WAIT_1].ifq_ttl = softc->ipf_tcphalfclosed;
4577 tqp[IPF_TCPS_CLOSING].ifq_ttl = softc->ipf_tcptimeout;
4578 tqp[IPF_TCPS_LAST_ACK].ifq_ttl = softc->ipf_tcplastack;
4579 tqp[IPF_TCPS_FIN_WAIT_2].ifq_ttl = softc->ipf_tcpclosewait;
4580 tqp[IPF_TCPS_TIME_WAIT].ifq_ttl = softc->ipf_tcptimewait;
4581 tqp[IPF_TCPS_HALF_ESTAB].ifq_ttl = softc->ipf_tcptimeout;
4606 /* Parameters: softc(I) - pointer to soft context main structure */
4636 ipf_state_deref(ipf_main_softc_t *softc, ipstate_t **isp)
4650 ipf_state_del(softc, is, ISL_EXPIRE);
4657 WRITE_ENTER(&softc->ipf_state);
4658 ipf_state_del(softc, is, ISL_ORPHAN);
4659 RWLOCK_EXIT(&softc->ipf_state);
4666 /* Parameters: softc(I) - pointer to soft context main structure */
4675 ipf_state_setqueue(ipf_main_softc_t *softc, ipstate_t *is, int rev)
4677 ipf_state_softc_t *softs = softc->ipf_state_soft;
4725 ipf_movequeue(softc->ipf_ticks, &is->is_sti, oifq, nifq);
4727 ipf_queueappend(softc->ipf_ticks, &is->is_sti, nifq, is);
4735 /* Parameters: softc(I) - pointer to main soft context */
4744 ipf_state_iter(ipf_main_softc_t *softc, ipftoken_t *token, ipfgeniter_t *itp,
4747 ipf_state_softc_t *softs = softc->ipf_state_soft;
4776 READ_ENTER(&softc->ipf_state);
4802 RWLOCK_EXIT(&softc->ipf_state);
4805 error = ipf_outobjk(softc, obj, next);
4807 ipf_state_deref(softc, &is);
4816 /* Parameters: softc(I) - pointer to main soft context */
4824 ipf_state_gettable(ipf_main_softc_t *softc, ipf_state_softc_t *softs,
4830 error = ipf_inobj(softc, data, NULL, &table, IPFOBJ_GTABLE);
4852 /* Parameters: softc(I) - pointer to main soft context */
4861 ipf_state_setpending(ipf_main_softc_t *softc, ipstate_t *is)
4863 ipf_state_softc_t *softs = softc->ipf_state_soft;
4868 ipf_movequeue(softc->ipf_ticks, &is->is_sti, oifq,
4871 ipf_queueappend(softc->ipf_ticks, &is->is_sti,
4887 /* Parameters: softc(I) - pointer to main soft context */
4895 ipf_state_matchflush(ipf_main_softc_t *softc, void *data)
4897 ipf_state_softc_t *softs = softc->ipf_state_soft;
4902 error = ipf_matcharray_load(softc, data, &obj, &array);
4910 if (ipf_state_matcharray(state, array, softc->ipf_ticks) == 0) {
4911 ipf_state_del(softc, state, ISL_FLUSH);
5086 /* Parameters: softc(I) - pointer to main soft context */
5096 ipf_state_settimeout(struct ipf_main_softc_s *softc, ipftuneable_t *t,
5099 ipf_state_softc_t *softs = softc->ipf_state_soft;
5137 /* Parameters: softc(I) - pointer to main soft context */
5146 ipf_state_rehash(ipf_main_softc_t *softc, ipftuneable_t *t, ipftuneval_t *p)
5148 ipf_state_softc_t *softs = softc->ipf_state_soft;
5192 WRITE_ENTER(&softc->ipf_state);
5234 RWLOCK_EXIT(&softc->ipf_state);
5244 /* Parameters: softc(I) - pointer to main soft context */
5252 ipf_state_add_tq(ipf_main_softc_t *softc, int ttl)
5254 ipf_state_softc_t *softs = softc->ipf_state_soft;
5256 return ipf_addtimeoutqueue(softc, &softs->ipf_state_usertq, ttl);
5265 ipf_state_dump(ipf_main_softc_t *softc, void *arg)
5273 softc->ipf_ticks);