Lines Matching defs:clinfo
94 struct classinfo *clinfo;
99 if ((clinfo = clname2clinfo(ifinfo, cdnr_name)) == NULL)
102 return (clinfo->handle);
141 struct classinfo *clinfo;
147 if ((error = qop_cdnr_add_element(&clinfo, cdnr_name, ifinfo,
156 rp->tca_handle = clinfo->handle;
169 struct classinfo *clinfo;
177 if ((error = qop_cdnr_add_tbmeter(&clinfo, cdnr_name, ifinfo,
186 rp->tca_handle = clinfo->handle;
201 struct classinfo *clinfo;
210 if ((error = qop_cdnr_add_trtcm(&clinfo, cdnr_name, ifinfo,
221 rp->tca_handle = clinfo->handle;
235 struct classinfo *clinfo;
247 if ((error = qop_cdnr_add_tswtcm(&clinfo, cdnr_name, ifinfo,
258 rp->tca_handle = clinfo->handle;
267 struct classinfo *clinfo;
272 if ((clinfo = clname2clinfo(ifinfo, cdnr_name)) == NULL)
275 return qop_delete_cdnr(clinfo);
301 struct classinfo *clinfo, *root, *cl, *prev;
320 if ((error = qop_add_class(&clinfo, cdnr_name,
348 cl->sibling = clinfo->child;
349 clinfo->child = cl;
350 cl->parent = clinfo;
354 *rp = clinfo;
359 qop_delete_cdnr(struct classinfo *clinfo)
364 if ((root = get_rootclass(clinfo->ifinfo)) == NULL) {
369 if (clinfo->parent != root)
372 if ((cl = clinfo->child) != NULL) {
381 cl->sibling = clinfo->sibling;
382 clinfo->sibling = cl;
383 clinfo->child = NULL;
386 error = qop_delete_class(clinfo);
391 clinfo->child = clinfo->sibling;
392 clinfo->sibling = cl->sibling;
395 for (cl = clinfo->child; cl != NULL; cl = cl->sibling)
396 cl->parent = clinfo;
406 struct classinfo *clinfo, *clist[2];
411 clinfo = clhandle2clinfo(ifinfo, action->tca_handle);
412 if (clinfo == NULL)
414 clist[0] = clinfo;
424 strcmp(clinfo->clname, "(null)") == 0) {
425 free(clinfo->clname);
426 clinfo->clname = strdup(cdnr_name);
428 *rp = clinfo;
441 if ((error = qop_add_cdnr(&clinfo, cdnr_name, ifinfo, clist,
446 *rp = clinfo;
462 struct classinfo *clinfo, *clist[3];
489 if ((error = qop_add_cdnr(&clinfo, cdnr_name, ifinfo, clist,
494 *rp = clinfo;
504 qop_cdnr_modify_tbmeter(struct classinfo *clinfo, struct tb_profile *profile)
506 struct cdnrinfo *cdnrinfo = clinfo->private;
512 return qop_modify_class(clinfo, NULL);
524 struct classinfo *clinfo, *clist[4];
560 if ((error = qop_add_cdnr(&clinfo, cdnr_name, ifinfo, clist,
565 *rp = clinfo;
575 qop_cdnr_modify_trtcm(struct classinfo *clinfo,
579 struct cdnrinfo *cdnrinfo = clinfo->private;
587 return qop_modify_class(clinfo, NULL);
598 struct classinfo *clinfo, *clist[4];
634 if ((error = qop_add_cdnr(&clinfo, cdnr_name, ifinfo, clist,
639 *rp = clinfo;
649 qop_cdnr_modify_tswtcm(struct classinfo *clinfo, const u_int32_t cmtd_rate,
652 struct cdnrinfo *cdnrinfo = clinfo->private;
660 return qop_modify_class(clinfo, NULL);
735 cdnr_add_class(struct classinfo *clinfo)
743 cdnrinfo = clinfo->private;
746 if (clinfo->parent == NULL) {
747 clinfo->handle = 0;
755 clinfo->ifinfo->ifname+1, IFNAMSIZ);
758 clinfo->handle = CDNR_NULL_HANDLE;
761 clinfo->handle = element_add.cdnr_handle;
767 clinfo->ifinfo->ifname+1, IFNAMSIZ);
772 clinfo->handle = CDNR_NULL_HANDLE;
775 clinfo->handle = tbmeter_add.cdnr_handle;
781 clinfo->ifinfo->ifname+1, IFNAMSIZ);
789 clinfo->handle = CDNR_NULL_HANDLE;
792 clinfo->handle = trtcm_add.cdnr_handle;
798 clinfo->ifinfo->ifname+1, IFNAMSIZ);
806 clinfo->handle = CDNR_NULL_HANDLE;
809 clinfo->handle = tswtcm_add.cdnr_handle;
819 cdnr_modify_class(struct classinfo *clinfo, void *arg)
826 cdnrinfo = clinfo->private;
832 clinfo->ifinfo->ifname+1, IFNAMSIZ);
833 tbmeter_modify.cdnr_handle = clinfo->handle;
842 clinfo->ifinfo->ifname+1, IFNAMSIZ);
843 trtcm_modify.cdnr_handle = clinfo->handle;
856 clinfo->ifinfo->ifname+1, IFNAMSIZ);
857 tswtcm_modify.cdnr_handle = clinfo->handle;
872 cdnr_delete_class(struct classinfo *clinfo)
876 if (clinfo->handle == CDNR_NULL_HANDLE)
880 strncpy(element_delete.iface.cdnr_ifname, clinfo->ifinfo->ifname+1,
882 element_delete.cdnr_handle = clinfo->handle;
896 fltrinfo->clinfo->ifinfo->ifname+1, IFNAMSIZ);
897 fltr_add.cdnr_handle = fltrinfo->clinfo->handle;
913 fltrinfo->clinfo->ifinfo->ifname+1, IFNAMSIZ);