<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7651.59">
<TITLE>Re: [Seaside] spooky seaside</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/plain format -->

<P><FONT SIZE=2>Also, look at trimForDeployment and isDeployed,<BR>
<BR>
Cheers!<BR>
<BR>
-Boris<BR>
(Sent from a BlackBerry)<BR>
<BR>
----- Original Message -----<BR>
From: seaside-bounces@lists.squeakfoundation.org &lt;seaside-bounces@lists.squeakfoundation.org&gt;<BR>
To: Seaside - general discussion &lt;seaside@lists.squeakfoundation.org&gt;<BR>
Sent: Wed May 02 07:01:08 2007<BR>
Subject: Re: [Seaside] spooky seaside<BR>
<BR>
On Wed, 2007-05-02 at 00:55 -0700, Avi Bryant wrote:<BR>
&gt; On 5/2/07, Norbert Hartl &lt;norbert@hartl.name&gt; wrote:<BR>
&gt; &gt; Hi,<BR>
&gt; &gt;<BR>
&gt; &gt; yesterday I showed a colleague our webapp. He wondered<BR>
&gt; &gt; about the &quot;strange&quot; URLs. The next thing he was starting<BR>
&gt; &gt; to notice that the _k parameter has something linear in<BR>
&gt; &gt; it. So he played around entering URLs as derivate from the<BR>
&gt; &gt; URLs he got from a loaded page. After 4 attempts he got<BR>
&gt; &gt; the WADispatcherEditor. I was shocked.<BR>
&gt;<BR>
&gt; Are you sure he actually hit upon a valid _k value?&nbsp; There are lots of<BR>
&gt; ways that an invalid one would have brought you by default to a<BR>
&gt; WADispatcherEditor.&nbsp; For example, if the session key were valid, and<BR>
&gt; that was the last page you had seen.&nbsp; Or, if he modified the URL to<BR>
&gt; include /config, where WADispatcherEditor is the root component.<BR>
&gt;<BR>
Yes, I had the page open on my laptop. He couldn't get a /config<BR>
into the path as the requests are rewritten by apache. I'm not<BR>
sure he hit an actually _k value (how could I know?).<BR>
<BR>
&gt; The _k values are WAExternalIDs, which are 64 bit random numbers,<BR>
&gt; generated by the standard Random class.&nbsp; In Squeak that's apparently a<BR>
&gt; Park-Miller generator.<BR>
&gt;<BR>
&gt; The chances of hitting upon a real _k value should be astronomically<BR>
&gt; low.&nbsp; You would also need to guess the right corresponding _s, which<BR>
&gt; means you're searching through a 128bit space.&nbsp; On Squeak I've<BR>
&gt; certainly never spotted anything linear in the values, although maybe<BR>
&gt; your friend has an eye for it which I don't.<BR>
&gt;<BR>
I was unclear. He just tweaked the last parameter (the &amp;number)<BR>
&gt; &gt;<BR>
&gt; &gt; But the _k parameter he used was<BR>
&gt; &gt; completely different to that I had on the Dispatcher Editor.<BR>
&gt; &gt;<BR>
&gt; &gt; So I like to know a few things:<BR>
&gt; &gt;<BR>
&gt; &gt; - how is the _s and _k parameter build? Is it possible to<BR>
&gt; &gt;&nbsp;&nbsp; get the same page (stack pointer) with two different<BR>
&gt; &gt;&nbsp;&nbsp; _k parameters?<BR>
&gt;<BR>
&gt; Well, sort of.&nbsp; There's a _k for the callback actions, which then<BR>
&gt; immediately gets redirected to a new _k for rendering the page.<BR>
&gt; Either of those will basically get you to the same place.&nbsp; But more to<BR>
&gt; the point, as I mentioned above, if the _k is totally wrong you'll get<BR>
&gt; taken a default location, which could well have been the<BR>
&gt; WADispatcherEditor.<BR>
&gt;<BR>
OK, I'll check that.<BR>
<BR>
&gt; &gt; - What is the best way to remove WADispatcherEditor. When<BR>
&gt; &gt;&nbsp;&nbsp; I remove it it still has references and stays as AnObsolete.<BR>
&gt;<BR>
&gt; You don't need to remove the class, just get rid of the config app.<BR>
&gt; You should be able to do that from within /config itself.<BR>
&gt;<BR>
Yes, I found that myself. I use now:<BR>
<BR>
d := (WADispatcher default) .<BR>
d entryPoints keys do: [<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; :each|<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; (each = 'myapp') ifFalse: [<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; d unregister: (d entryPointAt: each)<BR>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ]<BR>
]<BR>
<BR>
Thanks<BR>
<BR>
Norbert<BR>
<BR>
_______________________________________________<BR>
Seaside mailing list<BR>
Seaside@lists.squeakfoundation.org<BR>
<A HREF="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</A><BR>
</FONT>
</P>

</BODY>
</HTML>