[vlc-devel] Factor HTTP/HTTPS/RTSP port in core
Rémi Denis-Courmont
remi at remlab.net
Fri Sep 16 04:21:29 CEST 2011
Hello,
On Friday 16 September 2011, Pierre Ynard wrote:
> > Unless someone has a plan on how to fix the old design to not be highly
> > confusing, hard to configure and plain buggy, I am not interested in
> > discussing this.
>
> I haven't looked into the TLS code since I know little about it
> (although you're still welcome to give pointers), but the buggy code
> to reuse hosts could be fixed by calling strcmp() on the result of
> net_GetSockAddress(), instead of the host name passed. That would also
> simplify the data structure. So here's a plan:
That won't work for dual-stack. Even if we ignore this, it would be confusing
in any case. The current approach on the other hand, is quite clear, though
different from earlier.
And it still fails to address TLS certificate issues.
> - fix the plain bugginess
> - decide on a consistent way to input server addresses
> * about URIs, answer:
> - although http://:8080/foobar is no valid HTTP URL, it's a valid
> generic URI: is this acceptable to use? (we already use MRLs)
> - is http://0.0.0.0:8080/foobar an acceptable HTTP URL?
> - same for RTSP and other schemes
> * decide whether we want unspecified/zero port values that can mean
> an OS-assigned port instead of being replaced by the default
This is meant to be used for ephemeral ports, which those are not. I don't
know any software that would allocate an ephemeral port by default, except
where some kind of rendez-vous mechanism negotiates it (e.g. UPnP, FTP data,
RTSP RTP/RTCP pair).
> * choose between URI, the de facto standard "<host>:<port>"
> representation, separate host and port parameters, something else,
> or a combination thereof
This is NOT a de facto standard for on the server/listening side. In fact,
Apache separates the per host path "<Location /foo>" from the host name
"<VirtualHost IP:port>".
> - convert to this consistent syntax all these parameters throughout the
> vlc code base, without breaking compatibility, adding new parameters
> where needed
Consistent across access output destinations? HTTP is now (mostly) consistent
with file. FTP upload is kinda "special". UDP is legacy crap and is special
too.
Consistent server-side location and client-side HTTP URI make no sense. The
first ones are not URIs and never were.
It is already mostly consistent across RTSP/HTTP(S) and has more or less
always been.
> - if applicable, move configuration variables to a central location
> allowing to set defaults
That is what this does...
--
Rémi Denis-Courmont
http://www.remlab.info
More information about the vlc-devel
mailing list