Birch-san
Birch-san
> > Do you know a good probe I could invoke that would give me two different strings to try str() upon (so I can try and make one clobber...
> There is some room for improvement as @[str()] should read directly into the map, not through a stack buffer. @fbs I wonder whether an LLVM optimization pass could be...
> I'd tend to agree but even harsher still. @danobi I've now made map_lookup_elem fatal, removed Types::fmtstr and run clang-format. Now need to investigate how well this interoperates with other...
> I'm wondering now what happens if you do something like: > > ``` > $x = str(one); > $y = str(two); > printf("%s\n", $x); > ``` > > Does...
> a construct like `@[str(arg0)]=arg1` should continue to work @fbs I just tried this map assignment, and it looks like off-stack strings broke it. I got a segfault during semantic...
I tried changing the CreateMap helpers to accept `Value *`, and that went fine. I think they weren't relying on any specific features of `AllocaInst *`. The assertion `key->getType()->IsPointerTy()` succeeds...
I've fixed another regression with associative arrays: storing string values. ```bash sudo ./src/bpftrace -e 'tracepoint:syscalls:sys_enter_renameat2 { @[str(args->oldname)]="test"; exit(); }' Attaching 1 probe... @[/var/tmp/rename_me]: test ``` Triggered with: ```bash mv /var/tmp/rename_me...
I noticed that when I originally tested the limits of BPFTRACE_STRLEN, I left a comment: ``` ~1024= ``` I wonder if that's why @mmarchini used probe read instead of memset...
ac648a0f2f1cf256c935e6e4af12bfcd75acad43 + 52fc17d8fd34dd6c7088067e85e8682c32bc578f We can now assign values to maps with composite keys comprised of strings. There's a lot of special branches here which exist purely for performance… it'd be...
Things that accept strings that now accept map-backed strings: - join() - buf() - ternary expressions - strncmp() - join() - printf() - hardcoded length limit now removed - time()...