<strmpnk>
Shouldn't we rely on the system to determine if something is permissible to execute?
<strmpnk>
I see the commit, where we add the authority to the monitor, but it seems like this is at least an incomplete check (we ignore user and group bits) and I'm not sure what this check adds to the security model in this case if we have the authority (which would allow us to change that bit).
<strmpnk>
I've been setting this bit for now but digging into this code a little further has confused me on this particular point.
pzel has joined #ponylang
pzel has quit [Ping timeout: 264 seconds]
<jbk>
it does seem like it could be problematic if a platform is using ACLs
<strmpnk>
If we want to keep this, I'd also switch the error we return from ExecveError. I spent some time very confused how I was getting an error but saw no such call in my strace output.
<strmpnk>
Either way we chose, I'm happy to patch it. I'll open an issue for discussion.
droman has joined #ponylang
<SeanTAllen>
patch it!
<strmpnk>
SeanTAllen: Which way? Just want to know what the core team thinks is best here.
<strmpnk>
SeanTAllen: Granted, I believe it's your code too ;-) so if you don't have feelings, perhaps I'll send that PR in then.
<SeanTAllen>
is it?
<SeanTAllen>
i fixed some issue in there.
<SeanTAllen>
¯\_(ツ)_/¯
<SeanTAllen>
when i added that, it might have been in haste...
<SeanTAllen>
so i probably "did it wrong"
<strmpnk>
It makes sense in some "being very careful" sense but I can't think of why we need it. I wasn't certain if there was an actual concern or security model that was being implemented beyond the authority addition.
<SeanTAllen>
i dont remember. was there an issue associated with it?
<strmpnk>
I'll look at it again after I find some lunch here. I'll look at what other languages do and try to mirror that since I think the authority object is more of what we want anyway.
<SeanTAllen>
strmpnk: i need to do another release to test a change i made to release builds so... maybe your fix will the the "all by itself" release issue
Guest90958 is now known as bougyman
<strmpnk>
hahah. Sounds good to me.
<strmpnk>
bougyman: Hey, I was looking at the voidlinux packages today. Do you mind if I update ponyc for you?
user10032 has joined #ponylang
pzel has joined #ponylang
acarrico has quit [Ping timeout: 245 seconds]
SenasOzys has quit [Ping timeout: 245 seconds]
acarrico has joined #ponylang
acarrico has quit [Ping timeout: 240 seconds]
SenasOzys has joined #ponylang
acarrico has joined #ponylang
acarrico has quit [Remote host closed the connection]
<pzel>
I thought trn is the pattern to use here, but Iter won't have any of it
<SeanTAllen>
theodus does a lot of work with the itertools package
<SeanTAllen>
id open an issue an ping him on it
<SeanTAllen>
i dont use itertools so i cant speak to it really
<pzel>
will do.
<SeanTAllen>
maybe there is a reason for ref
<SeanTAllen>
and actually ya, you cant use trn or iso there
<SeanTAllen>
unless collect were to return the value too
<SeanTAllen>
interesting
<jemc>
what we're missing here is paul's RFC about a notation for isolated regions
<jemc>
same thing I'm really wanting in my CRDT library
<jemc>
a way to tell the compiler "I want to be able to use two `ref`s from different isolated regions alongside eachother in the same code, but guarantee that they don't actually touch eachother"
droman_ has quit [Quit: WeeChat 2.1]
<jemc>
or at least, that's what it boils down to
<jemc>
it would dramatically expand the category of safe code that pony can prove as safe, and from what I've done thought-experiments on so far, it seems to handle a lot of the cases where you want "borrowing" I think
<jemc>
(it also adds another layer of stuff-you-have-to-think-about when it comes to capabilities, so that's the downside)