home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Devil's Doorknob BBS Capture (1996-2003)
/
devilsdoorknobbbscapture1996-2003.iso
/
Dloads
/
WWIVMODS
/
PRE412.ZIP
/
AUTODEL.MOD
< prev
next >
Wrap
Text File
|
1992-12-01
|
5KB
|
127 lines
Snorkel #1 @3659
Sun Mar 11 10:32:51 1990
This is a fix for a mod in VARIOUS2, written by MrBill. I installed it and
then found out that I could not have my mail forwarded because once mail is
forwarded, it becomes E-mail, not Feedback, and the user gets deleted anyway.
I patched the code in two different spots, and now I can have my mail
forwarded to anyone, and a new user will not get deleted as long as they leave
me Feedback.
I changed MrBill's routine slightly also, and had it do a printfile instead of
hard-coding the text into the BBS. The first part of this message contains
the mod as it was originally written, and then my patches come after. If you
are using this mod, my patches will work as I have tested them thoroughly.
The code is from 4.07 as I am still running that version, but this should
readily convert over to 4.10 or 4.11.
4-------------------------------------------------------------------------------
Auto-Deletion of Assholes
by MrBill
This mod will automatically delete users who don't leave a validation
feedback and hang up on them after printing out a message.
I wrote this because I really don't look at my daily log enough and
sometimes a new user can slip past me if he doesn't leave the validation
feedback. Then a week later, i'd get mail asking why the user isn't validated
yet and i have to explain that i didn't even know he was there! Anyway...here
you go.
Load up newuser.c and go all the way to the end of the file and the end of
void newuser() and just change the following. It's quite simple. Now, this
doesn't send the users name to the daily log or anthing, i don't want to be
bothered, but if you want it to...you can make a string variable to copy the
user's name into and then put in it "automatically deleted" or some such thing
and send it to the sysoplog instead of the line that says "#+#+#+# Auto
deletion of....blah blah)
strcpy(irt,"Validation Feedback."); /* search */
email(1,0,1,0);
if (thisuser.feedbacksent==0){ /* add */
sysoplog("#+#+#+# Auto deletion of non-validated user"); /* add */
prt(3,"You were supposed to leave a validation feedback."); /* add */
nl(); /* add */
prt(3,"Since you consider yourself to be above the system,");/* add */
nl(); /* add */
prt(3,"you may consider your account deleted."); nl(); /* add */
hangup=1; /* add */
dtr(0); /* add */
deluser(usernum); /* add */
checkhangup(); /* add */
} /* add */
}
}
}
NOTE:Since typing this up I have decided it would be easier to replace the two
lines that print out to the user 'since you consider yourself...' with a
printfile("ASSHOLE.MSG"); and then you can make the message be as long or
short as you'd like. And you can, of course, call it something else if
you'd prefer.
4-------------------------------------------------------------------------------
(end of original mod)
Now load up your Turbo C editor, and load NEWUSER.C. Here is MrBills mod,
patched to allow sysop mail forwarding (including Feedback):
First, find 'void newuser()'
change it to read:
void newuser(unsigned short un, unsigned short sy)
Next, search for:
if (incom) {
if (printfile("FEEDBACK.MSG")) /* SEARCH FOR THIS LINE */
sl1(0,"#Aborted FEEDBACK.MSG");
strcpy(irt,"Validation Feedback");
byline[0]=0; /* omit this line if you do not have the BYLine mod */
read_user(1,&u); /* ADDED to mod */
if(forwardm(&un,&sy)) /* ADDED to mod */
email(u.forwardusr,0,1,0); /* ADDED to mod */
else /* ADDED to mod */
email(1,0,1,0);
if (thisuser.feedbacksent==0) {
sprintf(s,"%s auto deleted for aborting NEWUSER Feedback."
,thisuser.realname);
sysoplog(s); /* create a file in your G-file directory */
printfile("DELETE");/* with a message about how they screwed */
hangup=1; /* up by not leaving a Validation letter to you */
dtr(0);
deluser(usernum);
checkhangup();
}
}
}
}
4-----------------------------------
Here is the second part of the patch:
In MSGBASE.C, look for 'void email(etc...)'.
Search for the line:
if ((un==1) && (sy==0)) { (this line is changed below)
read_user(1,&ur); /* Insert this line before the search line */
if (((un==1) || (un==ur.forwardusr)) && (sy==0)) { /* CHANGED LINE */
++status.fbacktoday;
++thisuser.feedbacksent;
++thisuser.fsenttoday1;
++fsenttoday;
} else {
++status.emailtoday;
That's all there is to it!