Hi Vasanth,

You can find it in the libdtrace parser:
  http://cvs.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/lib/libdtrace/common/dt_lex.l#69

RGX_PSPEC       [-$:a-zA-Z_.?*\\\[\]!][-$:0-9a-zA-Z_.`?*\\\[\]!]*

That's an initial -$:a-zA-Z_.?*\[]! and then after that those same
characters plus 0-9 and `.

Adam

On Wed, Dec 29, 2010 at 3:37 AM, vasanth <vasa...@sun.com> wrote:
>
> Thanks Adam.
>
> Is there  known list of other  special characters which needs to be handled 
> this way.
>
> Thanks
> Vasanth
>
> Hey Vasanth,
>
> Correct; I should have mentioned that use of the globbing character means 
> that you could match other modules. As you say, using a predicate will 
> protect you against erroneous matches.
>
> Adam
>
> On Dec 28, 2010, at 3:52 AM, vasanth wrote:
>
>
>
> Thanks Adam.
>
> That works.
>
>  Does this means  the probe will match for  not just "646%8859.so", but   
> also for  other module, like "646x8859.so" or  "646a8859.so" etc.  Do I need 
> to have the additional check for  the specific module in the predicate ( 
> /probemod == "646%8859.so"/ )
>
> Thanks
> Vasanth
>
>
>
> Hey Vasanth,
>
> You might try something like this:
>
> pid1061:646?8859.so::entry
> {
>  ...
> }
>
> You might then his a problem in the pid provider itself; let me know
> and we can work from there.
>
> Adam
>
> On Mon, Dec 27, 2010 at 6:35 AM, Vasanth Bhat
> <vasa...@sun.com>
>  wrote:
>
>
>
>
> Hi,
>
>       Is there a escape charater to escape the appeareance of special
> characters like '%'   appearing as a part of probemode or probefunc.
>
> For example,  I  the following  sample d-trace script which fails to compile
> because of  the special character '%'.This is part of the libraryname (
> /usr/lib/iconv/646%8859.so )
>
> pid1061:646%8859.so::entry
> {
>   printf("%s|%d|%s|%s\n",execname,pid,probemod,probefunc);
> }
>
> When tried to run it fails with error "dtrace: failed to compile script
> /tmp/d-scripts/runscan_1061.d: line 8: syntax error near "%"
>
> I tried using "\" to escape "%". But that didn't help.  How we handle such
> cases?
>
> Also, on an another note, how do we obtain the  fullpath of the library
> inside a d-script.  The "probemod"   by default retuurns the module name
> without the path. (libxyz.so)
>
> Thanks
> Vasanth
>
>
>
>
> _______________________________________________
> dtrace-discuss mailing list
>
> dtrace-discuss@opensolaris.org
>
>
>
>
>
>
>
>
>
>
>



--
Adam Leventhal, Delphix                        http://dtrace.org/blogs/ahl
_______________________________________________
dtrace-discuss mailing list
dtrace-discuss@opensolaris.org

Reply via email to