Automatic tearline and originline adding
This commit is contained in:
parent
87f7c526de
commit
2343ed5a8b
@ -46,7 +46,9 @@ v0.61.4 11-Aug-2004
|
|||||||
mbmsg:
|
mbmsg:
|
||||||
Fixed counter in log that should show the number of linked
|
Fixed counter in log that should show the number of linked
|
||||||
messages.
|
messages.
|
||||||
With the post command no tearline is added anymore.
|
With the post command a check is done to see if the input file
|
||||||
|
has a tearline and origin line, if not mbmsg will add these
|
||||||
|
lines, else the lines of the input file are used.
|
||||||
|
|
||||||
mbsebbs:
|
mbsebbs:
|
||||||
The exec_nosuid function for doors now also has a extra small
|
The exec_nosuid function for doors now also has a extra small
|
||||||
|
@ -43,7 +43,7 @@ extern int do_quiet; /* Suppress screen output */
|
|||||||
|
|
||||||
int Post(char *To, long Area, char *Subj, char *File, char *Flavor)
|
int Post(char *To, long Area, char *Subj, char *File, char *Flavor)
|
||||||
{
|
{
|
||||||
int i, rc = FALSE;
|
int i, rc = FALSE, has_tear = FALSE, has_origin = FALSE;
|
||||||
char *aka, *temp, *sAreas;
|
char *aka, *temp, *sAreas;
|
||||||
FILE *fp, *tp;
|
FILE *fp, *tp;
|
||||||
unsigned long crc = -1;
|
unsigned long crc = -1;
|
||||||
@ -226,6 +226,15 @@ int Post(char *To, long Area, char *Subj, char *File, char *Flavor)
|
|||||||
sprintf(temp, "\001TZUTC: %s", gmtoffset(tt));
|
sprintf(temp, "\001TZUTC: %s", gmtoffset(tt));
|
||||||
MsgText_Add2(temp);
|
MsgText_Add2(temp);
|
||||||
|
|
||||||
|
while ((Fgets(temp, PATH_MAX -1, tp)) != NULL) {
|
||||||
|
if (strncmp(temp, "--- ", 4) == 0)
|
||||||
|
has_tear = TRUE;
|
||||||
|
if (strncmp(temp, " * Origin: ", 11) == 0)
|
||||||
|
has_origin = TRUE;
|
||||||
|
}
|
||||||
|
rewind(tp);
|
||||||
|
Syslog('m', "has tearline=%s, has origin=%s", has_tear?"True":"False", has_origin?"True":"False");
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Add the file as text
|
* Add the file as text
|
||||||
*/
|
*/
|
||||||
@ -235,20 +244,27 @@ int Post(char *To, long Area, char *Subj, char *File, char *Flavor)
|
|||||||
/*
|
/*
|
||||||
* Finish the message
|
* Finish the message
|
||||||
*/
|
*/
|
||||||
aka = calloc(40, sizeof(char));
|
if (! has_tear) {
|
||||||
|
MsgText_Add2((char *)"");
|
||||||
|
MsgText_Add2(TearLine());
|
||||||
|
}
|
||||||
|
|
||||||
if (msgs.Aka.point)
|
if (! has_origin) {
|
||||||
sprintf(aka, "(%d:%d/%d.%d)", msgs.Aka.zone, msgs.Aka.net, msgs.Aka.node, msgs.Aka.point);
|
aka = calloc(40, sizeof(char));
|
||||||
else
|
|
||||||
sprintf(aka, "(%d:%d/%d)", msgs.Aka.zone, msgs.Aka.net, msgs.Aka.node);
|
|
||||||
|
|
||||||
if (strlen(msgs.Origin))
|
if (msgs.Aka.point)
|
||||||
sprintf(temp, " * Origin: %s %s", msgs.Origin, aka);
|
sprintf(aka, "(%d:%d/%d.%d)", msgs.Aka.zone, msgs.Aka.net, msgs.Aka.node, msgs.Aka.point);
|
||||||
else
|
else
|
||||||
sprintf(temp, " * Origin: %s %s", CFG.origin, aka);
|
sprintf(aka, "(%d:%d/%d)", msgs.Aka.zone, msgs.Aka.net, msgs.Aka.node);
|
||||||
|
|
||||||
MsgText_Add2(temp);
|
if (strlen(msgs.Origin))
|
||||||
free(aka);
|
sprintf(temp, " * Origin: %s %s", msgs.Origin, aka);
|
||||||
|
else
|
||||||
|
sprintf(temp, " * Origin: %s %s", CFG.origin, aka);
|
||||||
|
|
||||||
|
MsgText_Add2(temp);
|
||||||
|
free(aka);
|
||||||
|
}
|
||||||
|
|
||||||
Msg_AddMsg();
|
Msg_AddMsg();
|
||||||
Msg_UnLock();
|
Msg_UnLock();
|
||||||
|
Reference in New Issue
Block a user