isd changed the topic of #sandstorm to: Welcome to #sandstorm: home of all things sandstorm.io. Say hi! | Have a question but no one is here? Try asking in the discussion group: https://groups.google.com/group/sandstorm-dev | This channel is logged at: https://freenode.irclog.whitequark.org/sandstorm/
griff_ has joined #sandstorm
griff_ has quit [Quit: griff_]
griff_ has joined #sandstorm
blowfist has quit [Read error: Connection reset by peer]
blowfist has joined #sandstorm
TMM has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM has joined #sandstorm
griff_ has quit [Quit: griff_]
griff_ has joined #sandstorm
griff_ has quit [Client Quit]
griff_ has joined #sandstorm
griff_ has quit [Quit: griff_]
griff_ has joined #sandstorm
griff_ has quit [Quit: griff_]
griff_ has joined #sandstorm
digitalcircuit has quit [Quit: Signing off from Quassel - see ya!]
digitalcircuit has joined #sandstorm
nicoo has quit [Remote host closed the connection]
nicoo has joined #sandstorm
griff_ has quit [Quit: griff_]
xet7 has quit [Remote host closed the connection]
xet7 has joined #sandstorm
griff_ has joined #sandstorm
dustyweb has joined #sandstorm
xet7 has quit [Remote host closed the connection]
kentonv has joined #sandstorm
xet7 has joined #sandstorm
griff_ has quit [Ping timeout: 252 seconds]
griff_ has joined #sandstorm
TMM has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM has joined #sandstorm
griff_ has quit [Quit: griff_]
<isd> I want to support the following: apps can powerbox-offer a TcpPort (from ip.capnp), and one thing the user has the option of doing with it is binding it to a particular hostname, which sandstorm dispatches based on SNI. This would let us write apps that do things like matrix/activitypub/xmpp, but still have Sandstorm manage TLS keys, and be able to multiplex port 443 for TLS. For protocols which are HTTP based, we could
<isd> potentially do this at a higher level in the stack, doing the dispatch at the HTTP layer. But, for things like matrix which has its own opinions about the Authorization header, I'm inclined to suggest we should let it do its own management of HTTP headers. Maybe we could use the http-over-capnp stuff that's in capnp c++ to support this, rather than forcing such apps to use WebSession which is designed around sandboxing apps.
<isd> I have some open questions regarding how much we can rely on other software to use SNI for these protcols, but it may be reliable for at least some of them.
griff_ has joined #sandstorm
griff_ has quit [Quit: griff_]
<JacobWeisz[m]> One of the things I'd be curious about here is if there'd be support for servers running on other ports with the apps you're looking at supporting here.
<JacobWeisz[m]> In my case, we'd be talking about sharing port 6080.
<JacobWeisz[m]> Do you imagine any issues with people being able to "browse" from these endpoints? IIRC, the API endpoint does a bit to try to prevent normal web browsers from navigating to them.
<isd> you could potentially do other ports, and it needn't be restricted to the port sandstorm happens to otherwise be listening on, though obviously opening up a new port should require admin -- open for debate how sensitive using an existing port is.
<isd> ...but I see this as something "most apps" will not do, vs. api endpoints which are used all over the place. Per discussions we've had in the past, I think there are a limited number of protocols that really require something super custom
<isd> I'd be okay with at least by default not giving normal users access to this at all.
<JacobWeisz[m]> I'd really like opening up a new port to not require admin, if appropriately limited in scope.
<JacobWeisz[m]> Or perhaps designating some groups of ports that can be used or something.