Lines Matching refs:dtp
49 dt_opt_agg(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
51 dt_aggregate_t *agp = &dtp->dt_aggregate;
54 return (dt_set_errno(dtp, EDT_BADOPTVAL));
62 dt_opt_amin(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
68 return (dt_set_errno(dtp, EDT_BADOPTVAL));
73 if (dtp->dt_pcb != NULL) {
74 dtp->dt_pcb->pcb_cflags |= DTRACE_C_EATTR;
75 dtp->dt_pcb->pcb_amin = attr;
77 dtp->dt_cflags |= DTRACE_C_EATTR;
78 dtp->dt_amin = attr;
109 dt_opt_core(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
114 return (dt_set_errno(dtp, EDT_BADOPTVAL));
119 return (dt_set_errno(dtp, errno));
124 dt_opt_cpp_hdrs(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
127 return (dt_set_errno(dtp, EDT_BADOPTVAL));
129 if (dtp->dt_pcb != NULL)
130 return (dt_set_errno(dtp, EDT_BADOPTCTX));
132 if (dt_cpp_add_arg(dtp, "-H") == NULL)
133 return (dt_set_errno(dtp, EDT_NOMEM));
140 dt_opt_cpp_path(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
145 return (dt_set_errno(dtp, EDT_BADOPTVAL));
147 if (dtp->dt_pcb != NULL)
148 return (dt_set_errno(dtp, EDT_BADOPTCTX));
151 return (dt_set_errno(dtp, EDT_NOMEM));
153 dtp->dt_cpp_argv[0] = (char *)strbasename(cpp);
154 free(dtp->dt_cpp_path);
155 dtp->dt_cpp_path = cpp;
161 dt_opt_cpp_opts(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
168 return (dt_set_errno(dtp, EDT_BADOPTVAL));
170 if (dtp->dt_pcb != NULL)
171 return (dt_set_errno(dtp, EDT_BADOPTCTX));
179 if (dt_cpp_add_arg(dtp, buf) == NULL)
180 return (dt_set_errno(dtp, EDT_NOMEM));
187 dt_opt_ctypes(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
192 return (dt_set_errno(dtp, EDT_BADOPTVAL));
195 return (dt_set_errno(dtp, errno));
197 (void) close(dtp->dt_cdefs_fd);
198 dtp->dt_cdefs_fd = fd;
204 dt_opt_droptags(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
206 dtp->dt_droptags = 1;
212 dt_opt_dtypes(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
217 return (dt_set_errno(dtp, EDT_BADOPTVAL));
220 return (dt_set_errno(dtp, errno));
222 (void) close(dtp->dt_ddefs_fd);
223 dtp->dt_ddefs_fd = fd;
229 dt_opt_debug(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
232 return (dt_set_errno(dtp, EDT_BADOPTVAL));
240 dt_opt_iregs(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
245 return (dt_set_errno(dtp, EDT_BADOPTVAL));
247 dtp->dt_conf.dtc_difintregs = n;
253 dt_opt_lazyload(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
255 dtp->dt_lazyload = 1;
262 dt_opt_ld_path(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
267 return (dt_set_errno(dtp, EDT_BADOPTVAL));
269 if (dtp->dt_pcb != NULL)
270 return (dt_set_errno(dtp, EDT_BADOPTCTX));
273 return (dt_set_errno(dtp, EDT_NOMEM));
275 free(dtp->dt_ld_path);
276 dtp->dt_ld_path = ld;
283 dt_opt_libdir(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
288 return (dt_set_errno(dtp, EDT_BADOPTVAL));
293 return (dt_set_errno(dtp, EDT_NOMEM));
296 dt_list_append(&dtp->dt_lib_path, dp);
302 dt_opt_linkmode(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
305 return (dt_set_errno(dtp, EDT_BADOPTVAL));
308 dtp->dt_linkmode = DT_LINK_KERNEL;
310 dtp->dt_linkmode = DT_LINK_PRIMARY;
312 dtp->dt_linkmode = DT_LINK_DYNAMIC;
314 dtp->dt_linkmode = DT_LINK_STATIC;
316 return (dt_set_errno(dtp, EDT_BADOPTVAL));
323 dt_opt_linktype(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
326 return (dt_set_errno(dtp, EDT_BADOPTVAL));
329 dtp->dt_linktype = DT_LTYP_ELF;
331 dtp->dt_linktype = DT_LTYP_DOF;
333 return (dt_set_errno(dtp, EDT_BADOPTVAL));
340 dt_opt_encoding(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
343 return (dt_set_errno(dtp, EDT_BADOPTVAL));
346 dtp->dt_encoding = DT_ENCODING_ASCII;
348 dtp->dt_encoding = DT_ENCODING_UTF8;
350 return (dt_set_errno(dtp, EDT_BADOPTVAL));
357 dt_opt_evaltime(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
360 return (dt_set_errno(dtp, EDT_BADOPTVAL));
363 dtp->dt_prcmode = DT_PROC_STOP_CREATE;
365 dtp->dt_prcmode = DT_PROC_STOP_PREINIT;
367 dtp->dt_prcmode = DT_PROC_STOP_POSTINIT;
369 dtp->dt_prcmode = DT_PROC_STOP_MAIN;
371 return (dt_set_errno(dtp, EDT_BADOPTVAL));
378 dt_opt_pgmax(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
383 return (dt_set_errno(dtp, EDT_BADOPTVAL));
385 dtp->dt_procs->dph_lrulim = n;
390 dt_opt_setenv(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
400 if (dtp->dt_pcb != NULL)
401 return (dt_set_errno(dtp, EDT_BADOPTCTX));
404 return (dt_set_errno(dtp, EDT_BADOPTVAL));
407 return (dt_set_errno(dtp, EDT_BADOPTVAL));
409 for (i = 1, p = dtp->dt_proc_env; *p != NULL; i++, p++)
412 for (p = dtp->dt_proc_env; *p != NULL; p++) {
417 dt_free(dtp, *p);
418 *p = dtp->dt_proc_env[i - 1];
419 dtp->dt_proc_env[i - 1] = NULL;
426 return (dt_set_errno(dtp, EDT_NOMEM));
428 if ((p = dt_alloc(dtp, sizeof (char *) * (i + 1))) == NULL) {
429 dt_free(dtp, var);
430 return (dt_set_errno(dtp, EDT_NOMEM));
433 bcopy(dtp->dt_proc_env, p, sizeof (char *) * i);
434 dt_free(dtp, dtp->dt_proc_env);
435 dtp->dt_proc_env = p;
437 dtp->dt_proc_env[i - 1] = var;
438 dtp->dt_proc_env[i] = NULL;
446 dt_opt_stdc(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
449 return (dt_set_errno(dtp, EDT_BADOPTVAL));
451 if (dtp->dt_pcb != NULL)
452 return (dt_set_errno(dtp, EDT_BADOPTCTX));
455 dtp->dt_stdcmode = DT_STDC_XA;
457 dtp->dt_stdcmode = DT_STDC_XC;
459 dtp->dt_stdcmode = DT_STDC_XS;
461 dtp->dt_stdcmode = DT_STDC_XT;
463 return (dt_set_errno(dtp, EDT_BADOPTVAL));
470 dt_opt_syslibdir(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
472 dt_dirpath_t *dp = dt_list_next(&dtp->dt_lib_path);
476 return (dt_set_errno(dtp, EDT_BADOPTVAL));
479 return (dt_set_errno(dtp, EDT_NOMEM));
489 dt_opt_tree(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
494 return (dt_set_errno(dtp, EDT_BADOPTVAL));
496 dtp->dt_treedump = m;
502 dt_opt_tregs(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
507 return (dt_set_errno(dtp, EDT_BADOPTVAL));
509 dtp->dt_conf.dtc_diftupregs = n;
515 dt_opt_xlate(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
518 return (dt_set_errno(dtp, EDT_BADOPTVAL));
521 dtp->dt_xlatemode = DT_XL_DYNAMIC;
523 dtp->dt_xlatemode = DT_XL_STATIC;
525 return (dt_set_errno(dtp, EDT_BADOPTVAL));
532 dt_opt_cflags(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
535 return (dt_set_errno(dtp, EDT_BADOPTVAL));
537 if (dtp->dt_pcb != NULL)
538 dtp->dt_pcb->pcb_cflags |= option;
540 dtp->dt_cflags |= option;
546 dt_opt_dflags(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
549 return (dt_set_errno(dtp, EDT_BADOPTVAL));
551 dtp->dt_dflags |= option;
556 dt_opt_invcflags(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
559 return (dt_set_errno(dtp, EDT_BADOPTVAL));
561 if (dtp->dt_pcb != NULL)
562 dtp->dt_pcb->pcb_cflags &= ~option;
564 dtp->dt_cflags &= ~option;
571 dt_opt_version(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
576 return (dt_set_errno(dtp, EDT_BADOPTVAL));
579 return (dt_set_errno(dtp, EDT_VERSINVAL));
582 return (dt_set_errno(dtp, EDT_VERSUNDEF));
584 return (dt_reduce(dtp, v));
588 dt_opt_runtime(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
629 return (dt_set_errno(dtp, EDT_BADOPTVAL));
633 dtp->dt_options[option] = val;
679 dt_opt_size(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
684 return (dt_set_errno(dtp, EDT_BADOPTVAL));
686 dtp->dt_options[option] = val;
691 dt_opt_rate(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
731 return (dt_set_errno(dtp, EDT_BADOPTVAL));
744 dtp->dt_options[option] = val;
755 dt_opt_strsize(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
757 dtrace_optval_t val = dtp->dt_options[option];
758 ctf_file_t *fp = DT_STR_CTFP(dtp);
759 ctf_id_t type = ctf_type_resolve(fp, DT_STR_TYPE(dtp));
762 if (dt_opt_size(dtp, arg, option) != 0)
765 if (dtp->dt_options[option] > UINT_MAX) {
766 dtp->dt_options[option] = val;
767 return (dt_set_errno(dtp, EOVERFLOW));
771 dtp->dt_options[option] = val;
772 dtp->dt_ctferr = ctf_errno(fp);
773 return (dt_set_errno(dtp, EDT_CTF));
776 r.ctr_nelems = (uint_t)dtp->dt_options[option];
780 dtp->dt_options[option] = val;
781 dtp->dt_ctferr = ctf_errno(fp);
782 return (dt_set_errno(dtp, EDT_CTF));
800 dt_opt_bufpolicy(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
806 return (dt_set_errno(dtp, EDT_BADOPTVAL));
816 return (dt_set_errno(dtp, EDT_BADOPTVAL));
818 dtp->dt_options[DTRACEOPT_BUFPOLICY] = policy;
834 dt_opt_bufresize(dtrace_hdl_t *dtp, const char *arg, uintptr_t option)
840 return (dt_set_errno(dtp, EDT_BADOPTVAL));
850 return (dt_set_errno(dtp, EDT_BADOPTVAL));
852 dtp->dt_options[DTRACEOPT_BUFRESIZE] = policy;
858 dt_options_load(dtrace_hdl_t *dtp)
872 if (dt_ioctl(dtp, DTRACEIOC_DOFGET, &hdr) == -1)
873 return (dt_set_errno(dtp, errno));
876 return (dt_set_errno(dtp, EINVAL));
883 dtp->dt_options[i] = DTRACEOPT_UNSET;
885 if (dt_ioctl(dtp, DTRACEIOC_DOFGET, dof) == -1)
886 return (dt_set_errno(dtp, errno));
908 dtp->dt_options[opt->dofo_option] = opt->dofo_value;
1016 dtrace_getopt(dtrace_hdl_t *dtp, const char *opt, dtrace_optval_t *val)
1021 return (dt_set_errno(dtp, EINVAL));
1029 *val = dtp->dt_options[op->o_option];
1036 *val = dtp->dt_options[op->o_option];
1041 return (dt_set_errno(dtp, EDT_BADOPTNAME));
1045 dtrace_setopt(dtrace_hdl_t *dtp, const char *opt, const char *val)
1050 return (dt_set_errno(dtp, EINVAL));
1054 return (op->o_func(dtp, val, op->o_option));
1059 return (op->o_func(dtp, val, op->o_option));
1068 if (dtp->dt_active)
1069 return (dt_set_errno(dtp, EDT_ACTIVE));
1071 return (op->o_func(dtp, val, op->o_option));
1075 return (dt_set_errno(dtp, EDT_BADOPTNAME));