In theory you can use cmsg on POSIX systems to send channels over channels, by treating channels as file descriptors. I tried this first, and I believe it actually worked well on Linux. But on Mac I ran into all sorts of (as far as I can tell) kernel bugs, including kernel panics and data loss. It might still be possible by using Mach ports instead on the Mac (and I started to sketch that code), but I eventually figured it was going to be cleaner to just stop sending channels over channels across process boundaries.
I guess if I get desperate I could try to get cross-process channels-over-channels working again, but I think it won't be more than a week's worth of work to do things the clean way. Patrick On Jun 18, 2015 11:04 PM, "Robert O'Callahan" <rob...@ocallahan.org> wrote: > On Fri, Jun 19, 2015 at 12:45 PM, Patrick Walton <pwal...@mozilla.com> > wrote: > >> It's fine to pass channels over channels as long as those channels don't >> cross process boundaries. >> > > Out of interest, why can't you pass channels over channels across a > process boundary? > > Rob > -- > oIo otoeololo oyooouo otohoaoto oaonoyooonoeo owohooo oioso oaonogoroyo > owoiotoho oao oboroootohoeoro oooro osoiosotoeoro owoiololo oboeo > osouobojoeocoto otooo ojouodogomoeonoto.o oAogoaoiono,o oaonoyooonoeo > owohooo > osoaoyoso otooo oao oboroootohoeoro oooro osoiosotoeoro,o o‘oRoaocoao,o’o > oioso > oaonosowoeoroaoboloeo otooo otohoeo ocooouoroto.o oAonodo oaonoyooonoeo > owohooo > osoaoyoso,o o‘oYooouo ofooooolo!o’o owoiololo oboeo oiono odoaonogoeoro > ooofo > otohoeo ofoioroeo ooofo ohoeololo. > _______________________________________________ dev-servo mailing list dev-servo@lists.mozilla.org https://lists.mozilla.org/listinfo/dev-servo