Received: with ECARTIS (v1.0.0; list gopher); Thu, 28 Aug 2003 14:21:18 -0500 (CDT) Return-Path: X-Original-To: gopher@complete.org Delivered-To: gopher@complete.org Received: from localhost (localhost [127.0.0.1]) by gesundheit.complete.org (Postfix) with ESMTP id DAF0318320DA; Thu, 28 Aug 2003 14:21:14 -0500 (CDT) Received: from gatekeeper.elmer.external.excelhustler.com (gatekeeper.excelhustler.com [68.99.114.105]) (using TLSv1 with cipher EDH-RSA-DES-CBC3-SHA (168/168 bits)) (Client CN "gatekeeper.elmer.external.excelhustler.com", Issuer "excelhustler.com" (not verified)) by gesundheit.complete.org (Postfix) with ESMTP id C3E3118320D4; Thu, 28 Aug 2003 14:21:12 -0500 (CDT) Received: from chatterbox.elmer.internal.excelhustler.com (unknown [192.168.0.12]) (using TLSv1 with cipher EDH-RSA-DES-CBC3-SHA (168/168 bits)) (Client CN "chatterbox.elmer.internal.excelhustler.com", Issuer "excelhustler.com" (verified OK)) by gatekeeper.elmer.external.excelhustler.com (Postfix) with ESMTP id C4A02E016A; Thu, 28 Aug 2003 14:21:07 -0500 (CDT) Received: by chatterbox.elmer.internal.excelhustler.com (Postfix, from userid 102) id 1B71E5C0C6; Thu, 28 Aug 2003 14:21:07 -0500 (CDT) X-Scanned-By: AMaViS-ng/clamscan at chatterbox.elmer.internal.excelhustler.com Received: from wile.internal.excelhustler.com (wile.internal.excelhustler.com [192.168.1.34]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (Client did not present a certificate) by chatterbox.elmer.internal.excelhustler.com (Postfix) with ESMTP id 933955C0C5; Thu, 28 Aug 2003 14:21:03 -0500 (CDT) Received: by wile.internal.excelhustler.com (Postfix, from userid 1000) id 5BDB37817; Thu, 28 Aug 2003 14:21:03 -0500 (CDT) Date: Thu, 28 Aug 2003 14:21:03 -0500 From: John Goerzen To: gopher@complete.org Subject: [gopher] Re: pygopherd & ASK Message-ID: <20030828192103.GD13821@wile.excelhustler.com> References: <20030828184443.GA17767@pippuri.mawhrin.net> Mime-Version: 1.0 Content-type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20030828184443.GA17767@pippuri.mawhrin.net> User-Agent: Mutt/1.4i X-Scanned-By: clamscan at complete.org Content-Transfer-Encoding: 8bit X-archive-position: 817 X-ecartis-version: Ecartis v1.0.0 Sender: gopher-bounce@complete.org Errors-to: gopher-bounce@complete.org X-original-sender: jgoerzen@complete.org Precedence: bulk Reply-to: gopher@complete.org List-help: List-unsubscribe: List-software: Ecartis version 1.0.0 List-Id: Gopher X-List-ID: Gopher List-subscribe: List-owner: List-post: List-archive: X-list: gopher On Thu, Aug 28, 2003 at 09:44:43PM +0300, Alexey Vyskubov wrote: > I'm sorry if I'm asking a stupid questions, but I was not able to find an > answer myself. No, they're all good questions. > 1. I wonder if it is possible to use ASK with pygopherd. If it is possible > can someone give me an example of creating menu item with ASK and using > entered information afterwards? Incidentally, does anyone know of any gopher site currently using ASK blocks? While we're at it, Alexey, if you want ASK block support in PyGopherd, I think I could finish it up without too much trouble. Be aware, however, that it will *only* work with Gopher+ clients, of which there are only 1. That brings up the whole Gopher+ issue, which we have visited occasionally before on this list. The standard was never really finalized and has some gaping holes, but does some useful things like using actual MIME types instead of single-character identifiers. I, at one time, proposed Enhanced Gopher, for which the entire implementation in PyGopherd looks like this: class EnhancedGopherProtocol(rfc1436.GopherProtocol): def renderobjinfo(self, entry): return entry.gettype() + \ entry.getname() + "\t" + \ entry.getselector() + "\t" + \ entry.gethost(default = self.server.server_name) + "\t" + \ str(entry.getport(default = self.server.server_port)) + "\t" + \ str(entry.getsize()) + "\t" + \ entry.getmimetype() + "\t" + \ entry.getencoding() + "\t" + \ entry.getlanguage() That is, you take the RFC1436 standard gopher and tack on new fields at the end for the file size, its MIME type, encoding, and language. Should be easy enough to parse and ignore as the case may be. This is not enabled by default in PyGopherd. If there is any interest, perhaps we could look into it some more. -- John