Re: itype 3 as generic status Re: To evolve or not to evolve
It was thus said that the Great Cameron Kaiser once stated:
> > I've gone through the code for my gopher server [1] and there are four
> > error types I send a type 3 for:
> >
> > Redirects (using my hack)
> > Gone (again, using my hack)
> > Bad Request (couldn't parse the selector)
> > Selector not found (generally, for any other error that may happen)
> >
> > This is one area where gopher is seriously lacking.
>
> So it sounds like we need pseudoports 301, 410, 400 and 404 (might as well use
> the HTTP codes, they're as good as any). Maybe a 500 for a server down message.
> For the redirect, how do you tell the user where to go? A single selectable item?
I'm not a fan of this (I do like the redirection idea).
> This doesn't help for the non-menu case but this is still very helpful to me
> running a bot. Pruning dead selectors on still existing sites in the Veronica-2
> database is currently its worst implemented feature and often requires me doing
> manual cleanup or sometimes simply blowing away an entire site and reindexing
> it from scratch. This would give me a programmatic way to remove tree "limbs"
> at the menu level and save a lot of headache.
Error reporting seems to be very hit-or-miss with gopher. I've run a few
requests against some gopher servers with a non-existant selector, and some
of the results I've gotten are:
---[ first sample ]---
3The selected resource doesn't exist! fake fake 0
iThe selected resource cannot be located. fake fake 0
.
---[ commentary ]----
The selector isn't the one I passed in. On my gopher client (homebrew) this
renders as a gopher menu if I'm expecting one; otherwise a text file (if
expecting type 0) and either downloading to passing the results to an
external program for other types.
---[ second sample ]---
Error: File or directory not found!
---[ commentary ]---
Is this correct even per RFC-1436??
---[ third sample ]---
1tmp /x/tmp/ 1436.ninja 70
.
---[ commentary ]---
The eagle eyed might know what site I hit, and I was not expecting this
result. The selector I passed I don't think exists, no matter what I use,
it's prepended with a '/' and appended with '/tmp/'. A wierd way to handle
errors.
---[ fourth sample ]----
3 '/x' doesn't exist! error.host 1
i This resource cannot be located. error.host 1
.
---[ commentary ]---
I didn't send '/x', but just 'x'. What's with gopher servers assuming a
leading slash? That's almost as bad as clients that do that.
---[ fifth sample ]---
3Happy helping ☃ here: Sorry, your selector does not start with / or contains '..'. That's illegal here. Err localhos70
.
---[ commentary ]---
Seriously, what's with the obsession with leading slashes?
Anyway, it's all a bit of a mess. It is worth even trying to fix it?
-spc
> --
> ------------------------------------ personal: http://www.cameronkaiser.com/ --
> Cameron Kaiser * Floodgap Systems * www.floodgap.com * ckaiser@floodgap.com
> -- Swirly Photoshop Magic! -- Strong Bad #150 ---------------------------------
Reply to: