Path: utzoo!yunexus!spectrix!clewis From: clewis@spectrix.UUCP (Chris Lewis (It's loose again!)) Newsgroups: news.software.b Subject: Re: News header compliance... Message-ID: <692@spectrix.UUCP> Date: 28 Jun 88 18:16:16 GMT Article-I.D.: spectrix.692 References: <674@spectrix.uucp>Reply-To: clewis@spectrix.UUCP (Chris Lewis (It's loose again!)) Organization: Spectrix Microsystems Inc., Toronto, Ontario, Canada Lines: 45 In article eric@snark.UUCP (Eric S. Raymond) writes: >In article <674@spectrix.uucp>, Chris Lewis (It's loose again!) writes: >>What do we do now? Should B-news be hacked to accept tabs here? It's >>very easy to do. However, as more people convert to C-news (What >>does B-news 3.0 do?) this will represent a bigger and bigger problem to >>people who can't or won't upgrade past their current B-news. >The Right Thing in these situations is to be liberal about what you accept >and conservative about what you send. Accordingly, B3.0 won't barf on tabs >immediately after the colon, but (for header fields over which it has format >control at header write time) it always generates a space there. I say unto the >C news people: go thou and do likewise. So, I went and did likewise for B news. For the B news 2.11 people, 2.11 *almost* does likewise. It has "charmap" - a character mapping array that is used for comparing strings when you don't want to worry about case. To fix the "tab problem": In file "funcs.c", look for the initialization of "charmap". In the second line of initialization, the second char is '\011' (map tab to tab). Change that to '\040' (map tab to space). Rebuild. Voila. What this means is that for the purposes of string comparisons, consider tab to be a space. This is in line with charmap's normal usage: a case translation table to be used in header field comparisons (so MESSAGE-ID is the same as Message-ID etc). Charmap is used elsewhere, but I don't think that this will cause other problems. Further, when 2.11 regenerates the article to stuff into the spool area (hence of course outgoing batches), the thing after the colon is forced to be a space. Exactly the "Right Thing". [Thanks Eric for the phone call and the consult...] This is only necessary if one of your neighboring feeds is a C-news site, or someone's generating articles thru some non-standard approach. So, for those C news sites generating headers with tabs (utcsri, uthub etc) - well, if your stuff goes thru us, we'll fix it for you so that the rest of the world can see it. (For the next couple of days at least...) -- Chris Lewis, These addresses will last only til June 30: (clewis@lsuc afterwards) UUCP: {uunet!mnetor, utcsri!utzoo, lsuc, yunexus}!spectrix!clewis Moderator of the Ferret Mailing List (ferret-list,ferret-request@spectrix)