dtrace_ecbdesc_t * dt_ecbdesc_create(dtrace_hdl_t *dtp, const dtrace_probedesc_t *pdp) { dtrace_ecbdesc_t *edp; if ((edp = dt_zalloc(dtp, sizeof (dtrace_ecbdesc_t))) == NULL) { (void) dt_set_errno(dtp, EDT_NOMEM); return (NULL); } edp->dted_probe = *pdp; dt_ecbdesc_hold(edp); return (edp); }
dtrace_stmtdesc_t * dtrace_stmt_create(dtrace_hdl_t *dtp, dtrace_ecbdesc_t *edp) { dtrace_stmtdesc_t *sdp; if ((sdp = dt_zalloc(dtp, sizeof (dtrace_stmtdesc_t))) == NULL) return (NULL); dt_ecbdesc_hold(edp); sdp->dtsd_ecbdesc = edp; sdp->dtsd_descattr = _dtrace_defattr; sdp->dtsd_stmtattr = _dtrace_defattr; return (sdp); }