Den 2009-08-12 15:13 skrev Peter Åstrand:
> On Wed, 12 Aug 2009, Peter Rosin wrote:
> 
>> Huh? If an existing client treats the incoming desktop name as if it
>> is in the ansi code page (I think most Windows clients do effectively
>> that), and our spec says that it MUST treat it as UTF-8, how is that
>> not an incompatibility?
> 
> Since the encoding hasn't been defined earlier, they cannot depend on 
> that behaviour.
> 
> Besides, didn't we agree on that there is no such server that sends 
> strings with the "ANSI CODE PAGE"?

No we didn't, we agreed on that for the desktop name. And besides,
*clients* are using all kinds of ASCII compatible encodings, and will
happily display whatever they receive using their selected encoding.
If we say "MUST use UTF-8" in our spec we declare all those clients
incompatible, and I for one don't wish to do that. They were "legal"
yesterday with the RealVNC spec, and I think they should be "legal"
tomorrow with *both* the RealVNC spec and our spec.

>> You once said "just make sure you are using updated clients", so how
>> is it a problem for you if the rest of the world ignores our spec?
> 
> I'm not saying it's a problem. "The rest of the world is free" is free 
> to follow which protocol spec they want, if any. But realistically, why 
> would anybody want to settle for something else than UTF-8, if:
> 
> * This is what Xvnc uses today.
> * This is what we are (as suggested) mandating in our spec
> * This is what RealVNC uses in their "next generation" protocol
> 
> ? I really don't see that happen.

If it is so natural with UTF-8 and if it really is the only sane choise
(I think it is), it's enough if our spec says (e.g.)

        It is strongly recommended that all implementations use
        UTF-8 for all strings (except explicitely stated otherwise)
        to ensure interoperability. But be prepared that not all
        implementation do, so fail gracefully if you receive
        something else.

instead of (e.g.)

        All implementations MUST use UTF-8 for all strings (except
        explicitely stated otherwise). But not all implementations
        do, so you SHOULD fail gracefully if you receive something
        else.

I just don't see why the wording with MUST/SHOULD is so superior
that it is worth rendering existing implementations incompatible
with our spec.

>> Look, I agree that the only sane thing to implement in the code is
>> to treat every unspecified string as UTF-8. Most vnc implementations
>> don't do that currently (I think), so that work is needed regardless.
> 
> All software running on modern, default Linux systems does, since they 
> are running in an UTF-8 locale.

You are ignoring all strings in the protocol besides the desktop name.
And why should the server side decide? Clients are also dealing with
the protocol and *lots* of them do not use UTF-8 for the desktop name.

>> So the question is how to word the text encoding section of our spec.
>> If we owned the protocol, MUST/SHOULD would be the way to go, no
>> question about it. But   we   do   not.
> 
> Look, you are starting to sound like some of the RealVNC folks, 
> repeating the words "official", "standard" and "real" in every sentence. 

But they are right. E.g. UltraVNC clients are are a *pain* to handle
if you are implementing a server, because they do not follow the
official spec. UltraVNC servers are easier... So I can understand
that they are upset by "protocol abuse".

> Nobody can "own" a protocol; it's a convention made up to be what the 
> participants wants it to be. Currently, "we" are (as far as I know) the 
> only project trying to document the details of the VNC protocol, so we 

We have forked the RealVNC spec, how can you claim we are alone?

> really have no competition in this area. But we could have; anyone can 
> fork the spec as well as they can fork the code. A particular 
> implementor can choose which or any spec he wants to follow, hopefully 
> based on how "good" he considers the spec to be. So let's concentrate on 
> making our spec as good as possible, instead of debating whether it's 
> "official" or not.

Yes, so let's not make existing implementations incompatible with our
spec.



------------------------------------------------------------------------------
Let Crystal Reports handle the reporting - Free Crystal Reports 2008 30-Day 
trial. Simplify your report design, integration and deployment - and focus on 
what you do best, core application coding. Discover what's new with 
Crystal Reports now.  http://p.sf.net/sfu/bobj-july
_______________________________________________
tigervnc-rfbproto mailing list
tigervnc-rfbproto@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/tigervnc-rfbproto

Reply via email to