*BSD News Article 2959


Return to BSD News archive

Path: sserve!manuel!munnari.oz.au!mips!mips!darwin.sura.net!zaphod.mps.ohio-state.edu!uunet.ca!geac!snitor!modtor!peter
From: peter@modtor.UUCP (Peter Ziobrzynski)
Newsgroups: comp.unix.bsd
Subject: Re: ELM and News Ports
Keywords: 386bsd news mailreaders
Message-ID: <192@modtor.UUCP>
Date: 2 Aug 92 23:36:00 GMT
References: <2439@nic.cerf.net>
Lines: 46

greggb@nic.cerf.net (Gregg Brekke) writes:

>Has anyone ported ELM, Cnews or Bnews for use with 386bsd.  I have tried with
>all, but keep running into tons of define errors and mistyped functions...

>If someone has gone to the trouble of getting these very useful packages
>going, great, lets share the resources.  If not, lets get together to get
>them working!

>Problem With Elm...  After getting it to compile by editing almost every
>source file to either #define or #undef some of 386bsd's functions, it
>compiled.  The problem is that when I go to send a message with it, the 
>command line information gets sent to the program, but the /tmp/elm* file
>doesn't get appended to the header.  ELM only creates a minimal header 
>from the command line so 'elm joe@abc.edu' will get passed to ELM so joe
>will get a blank message.  If anyone else has looked at the problem, it
>seems to be in mailmsg2.c.  I just can't quite figure out where it is
>messing up... permissions, location, string copy?

>I hope to get these all working on my machine in the next week, so your
>input is greatly appreciated.

The problem is with the /bin/sh bracket and redirection interpretation.
The system call used to feed mail message to mailer must be changed.
Here are the diffs on src/mailmsg2.c:

341,342c341,342
<         sprintf(very_long_buffer, "( (%s -s \"%s\" %s ; %s %s) & ) < %s",
<                 mailx, subject, expanded_to, remove_cmd, filename, filename);
---
>         sprintf(very_long_buffer, "( (%s -s \"%s\" %s < %s; %s %s) & )",
>                 mailx, subject, filename, expanded_to, remove_cmd, filename );
392,394c392,395
<         sprintf(very_long_buffer,"( (%s %s %s ; %s %s) & ) < %s", 
<               mailer, mailerflags, expanded_to,
<               remove_cmd, whole_msg_file, whole_msg_file);
---
>         sprintf(very_long_buffer,"( (%s %s %s < %s; %s %s) & )", 
>               mailer, mailerflags, expanded_to, whole_msg_file,
>               remove_cmd, whole_msg_file);
> 

-- 
Peter Ziobrzynski, peter@modtor.UUCP, peter@sni.CA
1850 Rathburn Rd. E #1611, Mississauga, Ont. L4W 2X9, Canada
tel. +1 (416) {home:625-1684, work:496-8510, fax:496-8524}