parent = clh_to_clp(hif, a->parent_qid); if (parent == NULL) return (EINVAL);
if (a->qid != HFSC_ROOTCLASS_HANDLE) if ((parent = clh_to_clp(hif, a->parent_qid)) == NULL) return (EINVAL);
hfsc_add_queue(struct pf_altq *a){	struct hfsc_if *hif;	struct hfsc_class *cl, *parent;	struct hfsc_opts *opts;	struct service_curve rtsc, lssc, ulsc;	if ((hif = a->altq_disc) == NULL)		return (EINVAL);	opts = &a->pq_u.hfsc_opts;	parent = clh_to_clp(hif, a->parent_qid);	if (parent == NULL)		return (EINVAL);	if (a->qid >= HFSC_MAX_CLASSES || a->qid == 0)		return (EINVAL);	if (clh_to_clp(hif, a->qid) != NULL)		return (EBUSY);	rtsc.m1 = opts->rtsc_m1;	rtsc.d  = opts->rtsc_d;	rtsc.m2 = opts->rtsc_m2;	lssc.m1 = opts->lssc_m1;	lssc.d  = opts->lssc_d;	lssc.m2 = opts->lssc_m2;	ulsc.m1 = opts->ulsc_m1;	ulsc.d  = opts->ulsc_d;	ulsc.m2 = opts->ulsc_m2;	cl = hfsc_class_create(hif, &rtsc, &lssc, &ulsc,	    parent, a->qlimit, opts->flags, a->qid);	if (cl == NULL)		return (ENOMEM);	return (0);}