At 3:57 PM +0100 on 2/10/00, M. Uli Kusterer wrote:
> if the headers are that big, we'll have to make the whole thing more
>effective. Say, buttons with a size less than, say, 500 bytes are
>kept in the same file as their card. Is this the same for FTP?
No FTP keeps a control connection open. Takes all of
PORT aaa,bbb,ccc,ddd,eee,fff
RETR filename
to get a file with FTP. Still requires a seperate connection, though.
Which much be opened and closed after every file.
There are many other transfer protocols, but (ever since Gopher died
out :( ), FTP & HTTP are the only ones in common use by the general
public.
> What about this: The first card goes completely in one file,
>additional cards are loaded dynamically as needed. There's a
>threshold at which an object will be extracted into a separate file.
If we have small cards, there is no good reason not to put a bunch in one file.
>We can't have users going around and changing stacks
>over the web, that'd be a huge security hole.
If done improperly. But no reason there can't be a property to allow
changing over the web. Could be usefull on company intranets, for
example.
> Besides that, I'd say we don't allow XCMDs (or any other kind of
>plugin) over the web, and file access commands may only manipulate
>files in a special folder next to the stack.
A special folder next to the stack really does not make sense when the
stack is on the web. There are many considerations for stacks on the
web. Consider:
- if a stack is running from the web, may it call other stacks?
-from the web?
-local?
-if a local stack is called by one on the web, can
it modify files? Call XThings?
-what if one catches and passes or resends
an open message? How do we handle that?
- if a web stack can not call other stacks, how does it use all the
handlers in the home stack?
- can a web stack generate network traffic?
- what information is a web stack allowed to gather?
- can it query machine info, FreeCard info, Internet Config
info, etc.?
- if so, how do we prevent privacy violations?
- if not, how does it check for bugfixes, feature
availibility, etc.?
- do we have to do a taint check on all
variables, buttons, fields, files, etc.
to prevent privacy violations?
- if so, what about using "if"
statements -- e.g.
if (version < 2) then
-- send list of exploits for
-- versions less than 2 to
-- server
Lots more things, too. Writing security & privacy aware apps can be a pain.