Lines Matching refs:dcp
144 struct clone_defcb *dcp; in clone_setdefcallback_prefix() local
146 dcp = malloc(sizeof(*dcp)); in clone_setdefcallback_prefix()
147 strlcpy(dcp->ifprefix, ifprefix, IFNAMSIZ-1); in clone_setdefcallback_prefix()
148 dcp->clone_mt = MT_PREFIX; in clone_setdefcallback_prefix()
149 dcp->clone_cb = p; in clone_setdefcallback_prefix()
150 SLIST_INSERT_HEAD(&clone_defcbh, dcp, next); in clone_setdefcallback_prefix()
156 struct clone_defcb *dcp; in clone_setdefcallback_filter() local
158 dcp = malloc(sizeof(*dcp)); in clone_setdefcallback_filter()
159 dcp->ifmatch = filter; in clone_setdefcallback_filter()
160 dcp->clone_mt = MT_FILTER; in clone_setdefcallback_filter()
161 dcp->clone_cb = p; in clone_setdefcallback_filter()
162 SLIST_INSERT_HEAD(&clone_defcbh, dcp, next); in clone_setdefcallback_filter()
175 struct clone_defcb *dcp; in ifclonecreate() local
181 SLIST_FOREACH(dcp, &clone_defcbh, next) { in ifclonecreate()
182 if (dcp->clone_mt == MT_FILTER && in ifclonecreate()
183 dcp->ifmatch(ifr.ifr_name) != 0) in ifclonecreate()
187 if (dcp == NULL) { in ifclonecreate()
189 SLIST_FOREACH(dcp, &clone_defcbh, next) { in ifclonecreate()
190 if (dcp->clone_mt == MT_PREFIX && in ifclonecreate()
191 strncmp(dcp->ifprefix, ifr.ifr_name, in ifclonecreate()
192 strlen(dcp->ifprefix)) == 0) in ifclonecreate()
197 if (dcp == NULL || dcp->clone_cb == NULL) { in ifclonecreate()
201 dcp->clone_cb(s, &ifr); in ifclonecreate()