Patches and forking (was RE: VNCrack)

Jonathan Morton chromi "at" cyberspace.org
Tue, 20 Jun 2000 04:36:40 +0000


>>From that basic assumption, it seems there are two approaches to take.
>
>Roll-your-own: Assume the user has a compiler and some expertise. The user
>chooses his/her options in the process of creating a _static_ binary.
>(Example from my experience: Older Linux Kernels)
>
>Pre-made binaries: Try to guess what various options users might want, and
>compile a variety of binaries with different sets of options.
>(Example from my experience: Eudora Lite and Eudora Pro)

Yup, that's what I was thinking.

>Another example: The recent Linux Kernels have many features which can be
>Loadable Modules.  I don't know exactly how this all works, but here's my
>best guess.

This, from the users' point of view, would be the best way.  However, my
understanding is that implementation 'hooks' for any plugin to attach to is
somewhat tricky, especially if the application wasn't designed that way in
the first place.

Having seen and mucked around in the VNC Server (Mac) code, it'd be almost
impossible to redesign the encoding routines (to take an example) to use
plugins, largely because I can't figure out what on earth is going on in
there (it seems to be a mix of C++ method overloading, overriding and C
function pointers, with some macro-generated functions thrown in for good
measure).  A complete, bottom-up rewrite of that section of the program
would be required, which I'm not inclined to do right now because it's one
of the few parts that works properly.

--------------------------------------------------------------
from:     Jonathan "Chromatix" Morton
mail:     chromi "at" cyberspace.org  (not for attachments)
uni-mail: j.d.morton "at" lancaster.ac.uk

The key to knowledge is not to rely on people to teach you it.
--------------------------------------------------------------
Contributing to the VNC Project - http://www.uk.research.att.com/vnc/
Macintosh VNCserver v3.3.2 beta2.3 now posted at:
	http://chromatix.autistics.org/vnc/
---------------------------------------------------------------------
To unsubscribe, send a message with the line: unsubscribe vnc-list
to majordomo "at" uk.research.att.com
See also: http://www.uk.research.att.com/vnc/intouch.html
---------------------------------------------------------------------