mirror of
https://github.com/fdiskyou/Zines.git
synced 2025-03-30 00:00:11 +01:00
746 lines
22 KiB
Text
746 lines
22 KiB
Text
==Phrack Magazine==
|
|
|
|
Volume Five, Issue Forty-Five, File 16 of 28
|
|
|
|
****************************************************************************
|
|
|
|
DCL BBS PROGRAM
|
|
|
|
-------cut here-------cut here------cut here------cut here------cut here------
|
|
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ ! Well, this is just a little bbs program, a skeleton on wich u can work, !
|
|
$ ! add stuff, subroutines, and so on. !
|
|
$ ! I am SURE there are bugs, anyway the only I use to know 'till now is in !
|
|
$ ! the editor, where anything u write after a "!" will not be saved !
|
|
$ ! If sumbody wants to help/cooperate/exchange ideas about this program and/or!
|
|
$ ! any Dcl stuff/trick, just write at: !
|
|
$ ! SSGRR@pol88a.polito.it for internet e-mail !
|
|
$ ! (0) 22221122878::SSGRR for PSI MAIL !
|
|
$ ! Mbx RAOUL on Qsd chat system, x.25 nua (0) 208057040540 !
|
|
$ ! ANY kind of help and suggestion will be accepted ! !
|
|
$ ! ANY kind of cooperation with SERIOUS italian and/or european hackers, !
|
|
$ ! especially concerning x.25 networks, vax/vms, unix, cisco systems will be !
|
|
$ ! appreciated. !
|
|
$ ! !
|
|
$ ! Raoul / SferraNet Inc. for Phrack Magazine !
|
|
$ ! Many thanks to: Nobody. I usually work on my own. !
|
|
$ ! !
|
|
$ ! !
|
|
$ ! Remember to add the files the program requires, such as: !
|
|
$ ! INVI.EXE !
|
|
$ ! goodbye.txt !
|
|
$ ! files.txt !
|
|
$ ! etc..... !
|
|
$ ! And remember to create the subdirectories the program requires, AND to !
|
|
$ ! create a [bbs] directory, otherwise to rename [bbs] string, in this !
|
|
$ ! program, to a different name. !
|
|
$ ! !
|
|
$ ! I am sorry if program documentation is poor, but this program is mainly !
|
|
$ ! intended as a skeleton for future developments. !
|
|
$ ! I swear next time it will came up with a installation.com file :) !
|
|
$ ! !
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$! BBS PROGRAM RELEASE 2.0
|
|
$! ADDED CALL FUNCTION TO SPEED UP PROCESSES
|
|
$! LAST MODIFIED ON 15/10/1993 BY RAOUL/SFERRANET
|
|
$! BBS PROGRAM
|
|
$! Coded By Raoul/SferraNet
|
|
$!
|
|
$! Featuring:
|
|
$! Internal Mbx option
|
|
$! Kermit (Vms default) and Zmodem download protocols options
|
|
$! internal editor
|
|
$! password change option
|
|
$! logs of dtes, calls source etc
|
|
$! "post a banner" option
|
|
$ ! "BBS" account requires:
|
|
$ ! Privileges: NETMBX, TMPMBX, CMKRNL
|
|
$ ! Defprivileges: NETMBX, TMPMBX, CMKRNL
|
|
$ ! Flags: disnewmail, disctly, restricted
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ !This next 3 lines put away error messages ( remove it when testing the
|
|
$ !program, so that you will be able to see wich errors you are getting
|
|
$ set messa /nofac
|
|
$ set messa /notext
|
|
$ set messa /nosev
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ ! Defines CLS
|
|
$ ESC[0,8] = 27
|
|
$ CLC == ESC+"[H"+ESC+"[J"
|
|
$ cls := "write sys$output CLC"
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$!define user's terminal
|
|
$ ! here we check what kind of terminal user has, knowing that for Vms
|
|
$ ! a good graphic mode will be from VT100 on, using this list:
|
|
$ ! unknown = 0
|
|
$ ! VT52 = 64
|
|
$ ! VT100 = 96
|
|
$ ! VT101 = 97
|
|
$ ! VT102 = 98
|
|
$ ! VT105 = 99
|
|
$ ! VT125 = 100
|
|
$ ! VT200 = 110
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ cls
|
|
$ write sys$output " Checking Terminal Type....Please Wait...."
|
|
$ set terminal /inquire
|
|
$ ttype = f$getdvi("SYS$COMMAND", "DEVTYPE")
|
|
$ if ttype .ge. 96
|
|
$ then
|
|
$ vt100_flag = 1
|
|
$ else
|
|
$ vt100_flag = 0
|
|
$ endif
|
|
$!
|
|
$ if vt100_flag .eq. 1
|
|
$ then
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$! This is a list of escape sequences definitions
|
|
$ reverse == ESC+"[7m" ! turns on inverse video attribute
|
|
$ blink == ESC+"[5m" ! turns on blinking attribute
|
|
$ blankfromtop == ESC+"[1J" ! blanks screen from top to cursor
|
|
$ blankline == ESC+"[2K" ! blanks current line
|
|
$ blankendline == ESC+"[0K" ! blanks from cursor to end of line
|
|
$ normal == ESC+"[0m" ! Resets to normal video attribute
|
|
$ bold == ESC+"[1m" ! turns on Bold attribute
|
|
$ underline == ESC+"[4m" ! turns on underline attribute
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ write sys$output reverse
|
|
$ write sys$output blink
|
|
$ write sys$output " Your Terminal Is DEC-VTxxx Series Compatible ! "
|
|
$ write sys$output " This Will Help You To Get even MORE&MORE From This Bbs ! "
|
|
$ write sys$output normal
|
|
$ wait 0:00:03
|
|
$ else
|
|
$ write sys$output " Sorry, Your Terminal Isn't DEC-VTxxx Series Compatible "
|
|
$ write sys$output " "
|
|
$ write sys$output " Try to Get a Better Emulation Next Time Dude!!! "
|
|
$ wait 0:00:05
|
|
$ cls
|
|
$ endif
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$! USER.COM VERSION 1.0 BETA
|
|
$ on error then goto nouser
|
|
$ on severe_error then goto nouser
|
|
$ in := "inquire /nopunctuation"
|
|
$ out := "write sys$output"
|
|
$ user:
|
|
$ cls
|
|
$ out " "
|
|
$ out " ** Sferra Bbs Logon ** (C) 1993 Raoul / SferraNet Inc. "
|
|
$ out " "
|
|
$ in usr "Username: "
|
|
$ if usr .eqs. "" then goto user
|
|
$ if usr .eqs. " " then goto user
|
|
$ open /read mailfile [bbs]'usr'.mail /error=nouser
|
|
$ set term/noecho
|
|
$ in pass "Password: "
|
|
$ set term/echo
|
|
$ read mailfile pw
|
|
$ close mailfile
|
|
$ if pw .eqs. pass then goto bbs
|
|
$ out " "
|
|
$ out "Wrong Password."
|
|
$ wrong:
|
|
$ out " "
|
|
$ in test "Retry or Login as a New User ? (R/N) "
|
|
$ if test .eqs. "N" then goto newusr
|
|
$ cls
|
|
$ goto user
|
|
$ goto bbs
|
|
$ nouser:
|
|
$ out " "
|
|
$ out " User ''usr' Not Found In Users File "
|
|
$ out " "
|
|
$ wait 0:00:02
|
|
$ goto wrong
|
|
$!% author Raoul/SferraNet
|
|
$!% language DCL
|
|
$! Bbs program for Vax/Vms
|
|
$!
|
|
$ bbs:
|
|
$ cls
|
|
$ type [bbs]welcome.txt
|
|
$ wait 00:00:04
|
|
$ user == usr
|
|
$ tt == f$getdvi("TT","DEVNAM")!-"-"
|
|
$! l1 == f$locate(":",TT)
|
|
$! l1 == l1 -1
|
|
$ device == tt
|
|
$ start == f$cvtime(,,"time")
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ ! Here we show user bbs in full mode, to get his/her dte, inet address or
|
|
$ ! Decnet node, and put it in a file, then we run invisible.exe to
|
|
$ ! make the user "BBS" invisible
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ sh u bbs /f /out=[bbs]'user'.dte
|
|
$ open/append output_file [bbs]users.dat
|
|
$ write output_file "Bbs Users Log on: ",F$time()
|
|
$ write output_file "User: ''user' connected on ''device' at ''start'"
|
|
$ close output_file
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$! Here we run INVI.EXE, to get invisible at a sh users command, and to avoid
|
|
$! System Manager to detect the bbs user
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ run [bbs]invi.exe;1
|
|
$ errcheck:
|
|
$ on control_p then goto mainmenu
|
|
$ on control_y then goto mainmenu
|
|
$ on control_t then goto mainmenu
|
|
$ on control_c then goto mainmenu
|
|
$ on error then goto mainmenu
|
|
$ on severe_error then goto mainmenu
|
|
$ on warning then goto mainmenu
|
|
$ write sys$output " "
|
|
$ out reverse
|
|
$ write sys$output " Welcome To <BBS NAME> "
|
|
$ out normal
|
|
$ write sys$output " "
|
|
$ out blink
|
|
$ write sys$output " Running on a Vax/Vms <VMS VERSION>"
|
|
$ out normal
|
|
$ write sys$output " "
|
|
$ out reverse
|
|
$ write sys$output " You are connected on line ''device' at ''start' "
|
|
$ out normal
|
|
$ write sys$output " "
|
|
$ out blink
|
|
$ write sys$output " Please Wait... "
|
|
$ out normal
|
|
$ wait 0:00:05
|
|
$ cls
|
|
$ write sys$output " User ''user' connected on ''device' at ''start' "
|
|
$ write sys$output " "
|
|
$ out reverse
|
|
$ write sys$output " PLEASE POST ME A MESSAGE "
|
|
$ out normal
|
|
$ write sys$output " "
|
|
$ write sys$output " IF U FIND ANY BUGS OR HAVE ANY SUGGESTION"
|
|
$ wait 0:00:02
|
|
$ cls
|
|
$ write sys$output " "
|
|
$ write sys$output " *** Banner Message *** Read it or Die ! *** "
|
|
$ write sys$output " "
|
|
$ type [bbs]banner.txt
|
|
$ write sys$output " "
|
|
$ inquire /nopunct banner "Press [ENTER] To Continue..."
|
|
$ mainmenu:
|
|
$ cls
|
|
$ write sys$output " "
|
|
$ write sys$output " HackTown Bbs "
|
|
$ write sys$output " "
|
|
$ write sys$output " Main Menu "
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ write sys$output " [F] Files Area "
|
|
$ write sys$output " [M] Mailboxes Area "
|
|
$ write sys$output " [I] Informations About This System "
|
|
$ write sys$output " [B] Leave a Banner
|
|
$ write sys$output " [U] List Users "
|
|
$ write sys$output " [P] Post a Message To SysOp "
|
|
$ write sys$output " [L] Logout "
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ inquire topmenu "(F,M,I,B,P,L)==>"
|
|
$ if topmenu .eqs. "L" then goto L
|
|
$ if topmenu .eqs. "F" then goto F
|
|
$ if topmenu .eqs. "I" then goto I
|
|
$ if topmenu .eqs. "P" then goto P
|
|
$ if topmenu .eqs. "M" then goto M
|
|
$ if topmenu .eqs. "U" then goto U
|
|
$ if topmenu .eqs. "B" then goto B
|
|
$ if topmenu .eqs. "" then goto mainmenu
|
|
$ if topmenu .eqs. " " then goto mainmenu
|
|
$ goto mainmenu
|
|
$! Banner Message
|
|
$ B:
|
|
$ cls
|
|
$ write sys$output " Editing Banner! End With a Dot (.) "
|
|
$ write sys$output " Notice: Pirating or Incorrects Messages Will Be "
|
|
$ write sys$output " Accepted...Don't Be Clean! ;) "
|
|
$ write sys$output "
|
|
$ del [bbs]banner.txt;* /nolog
|
|
$ open/write banner_file [bbs]banner.txt
|
|
$ write banner_file " Banner Message From user ''usr' Posted at ''start' "
|
|
$ write banner_file " "
|
|
$ write banner_file "***********************************************************"
|
|
$ line=1
|
|
$ more:
|
|
$ inquire /nopunctu text "''line': "
|
|
$ if text .eqs. "." then goto endbanner
|
|
$ write banner_file text
|
|
$ line=line+1
|
|
$ goto more
|
|
$ write banner_file "***********************************************************"
|
|
$ close banner_file
|
|
$ write sys$output " "
|
|
$ write sys$output " Banner Saved! "
|
|
$ wait 0:00:02
|
|
$ goto mainmenu
|
|
$!
|
|
$ U:
|
|
$ cls
|
|
$ type [bbs]users.lis
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ inquire /nopunctuation komodo " Press [ENTER] To Continue..."
|
|
$ goto mainmenu
|
|
$!
|
|
$ L:
|
|
$ goto bbsbye
|
|
$ logout/full
|
|
$!
|
|
$!
|
|
$! option F
|
|
$!
|
|
$ F:
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ cls
|
|
$ write sys$output " "
|
|
$ write sys$output " Files Menu "
|
|
$ write sys$output " "
|
|
$ write sys$output " [1] List files "
|
|
$ write sys$output " [2] Type a file "
|
|
$ write sys$output " [3] Download a file "
|
|
$ write sys$output " [4] Upload a file "
|
|
$ write sys$output " [5] Go back to main menu "
|
|
$ inquire files "(1,2,3,4,5)==>"
|
|
$ if files .eqs. "1" then goto 1
|
|
$ if files .eqs. "2" then goto 2
|
|
$ if files .eqs. "3" then goto 3
|
|
$ if files .eqs. "4" then goto 4
|
|
$ if files .eqs. "5" then goto 5
|
|
$ if files .eqs. "" then goto F
|
|
$ if files .eqs. " " then goto F
|
|
$ goto F
|
|
$!
|
|
$ 1:
|
|
$ goto fileslist
|
|
$ inquire/nopunct tasto "Press [ENTER] to continue..."
|
|
$ goto F
|
|
$!
|
|
$ 2:
|
|
$ write sys$output "U can't type files such as .ZIP .EXE .ARJ etc..."
|
|
$ inquire file "File to type ? "
|
|
$ if file .eqs. "" then goto f
|
|
$ if file .eqs " " then goto f
|
|
$ if file .eqs. "login.com" then goto F
|
|
$ inquire page "do you want the file to be typed with or without page pause ? (A/B) "
|
|
$ cls
|
|
$ if page .eqs "a" then goto nopage
|
|
$ if page .eqs. "b" then goto page
|
|
$ goto 2
|
|
$ page:
|
|
$ type [bbs]'file' /nopage
|
|
$ inquire/nopunct tasto "Press [ENTER] to continue..."
|
|
$ cls
|
|
$ goto F
|
|
$!
|
|
$ nopage:
|
|
$ type [bbs]'file' /page
|
|
$ inquire/nopunct tasto " Press [ENTER] to continue..."
|
|
$ cls
|
|
$ goto F
|
|
$!
|
|
$ 3:
|
|
$ cls
|
|
$ write sys$output " "
|
|
$ inquire dl "File to download ? "
|
|
$ inquire protocol "Protocol ? (Z=Zmodem, K=Kermit) "
|
|
$ if protocol .eqs. "z" then goto zmodem
|
|
$ if protocol .eqs. "k" then goto kermit
|
|
$ goto F
|
|
$ kermit:
|
|
$ if dl .eqs. "" then goto F
|
|
$ if dl .eqs. "login.com" then goto F
|
|
$ if dl .eqs. "bbs.com" then goto F
|
|
$ mcr kermit send [bbs.files]'dl'
|
|
$ exit
|
|
$ goto F
|
|
$!
|
|
$ zmodem:
|
|
$ !!!!! Put here your zmodem program download string, etc
|
|
$!
|
|
$ goto F
|
|
$!
|
|
$ 4:
|
|
$ cls
|
|
$ write sys$output " "
|
|
$ out blink
|
|
$ write sys$output " Thanks for your upload! "
|
|
$ out normal
|
|
$ out reverse
|
|
$ write sys$output " Default transfer protocol is Kermit "
|
|
$ out normal
|
|
$ inquire ul "File to upload ? "
|
|
$ if ul .eqs. "" then goto F
|
|
$ if ul .eqs. "login.com" then goto F
|
|
$ if ul .eqs. "bbs.com" then goto F
|
|
$ mcr kermit rec [bbs.files]'ul'
|
|
$ exit
|
|
$ open/append [bbs.files]files.txt
|
|
$ write [bbs.files]files.txt "File ''ul' sent by ''user' at ''start' on ''device' "
|
|
$ close [bbs.files]files.txt
|
|
$ inquire desc " Please type a short description for your file "
|
|
$ open/append [bbs.files]files.txt
|
|
$ write 'desc'' [bbs.files]files.txt
|
|
$ write [bbs.files]files.txt "----------------------------------------------------------------------"
|
|
$ close [bbs.files]files.txt
|
|
$ goto F
|
|
$!
|
|
$ 5:
|
|
$ goto mainmenu
|
|
$!
|
|
$ M:
|
|
$ cls
|
|
$ write sys$output " MailBox Menu "
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ write sys$output " [S] Send a Message "
|
|
$ write sys$output " [R] Read Messages in Your Mailbox "
|
|
$ write sys$output " [C] Clear Your Mailbox "
|
|
$ write sys$output " [D] Delete Your Mailbox "
|
|
$ write sys$output " [M] Go Back To Main Menu "
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ inquire mailmenu " (S,R,C,D,M)==> "
|
|
$ if mailmenu .eqs. "S" then goto smail
|
|
$ if mailmenu .eqs. "R" then goto rmail
|
|
$ if mailmenu .eqs. "C" then goto cmbx
|
|
$ if mailmenu .eqs. "D" then goto delmail
|
|
$ if mailmenu .eqs. "M" then goto mainmenu
|
|
$ if mailmenu .eqs. "" then goto M
|
|
$ goto M
|
|
$!
|
|
$!
|
|
$ delmail:
|
|
$ write sys$output " W A R N I N G ! ! ! "
|
|
$ write sys$output " "
|
|
$ write sys$output " Deleting Your Personal Mailbox "
|
|
$ write sys$output " Will Remove You From The Users File "
|
|
$ write sys$output " "
|
|
$ inquire del "Do You Want To Delete Your Mailbox ? (Y/N) "
|
|
$ if del .eqs. "Y" then goto mbxdely
|
|
$ if del .eqs. "N" then goto mbxdeln
|
|
$ goto M
|
|
$!
|
|
$ mbxdely:
|
|
$ goto dmbx
|
|
$ goto M
|
|
$!
|
|
$ mbxdeln:
|
|
$ cls
|
|
$ write sys$output " "
|
|
$ write sys$output " Mailbox not Deleted "
|
|
$ wait 0:00:02
|
|
$ goto M
|
|
$!
|
|
$ I:
|
|
$ cls
|
|
$ write sys$output " We're sorry if this system isn't 100% working fine. "
|
|
$ write sys$output " We keep on to work at it. If you find bugs and/or errors, "
|
|
$ write sys$output " please send me an URGENT mail (P option at Main Menu) "
|
|
$ write sys$output " Thanks."
|
|
$ write sys$output " "
|
|
$ write sys$output " Bbs Staff "
|
|
$ wait 0:00:03
|
|
$ goto mainmenu
|
|
$!
|
|
$P:
|
|
$ cls
|
|
$ write sys$output " "
|
|
$ define/user_mode sys$input sys$command
|
|
$ mail sys$command <YOUR ACCOUNT> !!!!!!!<-- your VMS account, where you can
|
|
$! receive regular vms mail via the vms mail utility
|
|
$ goto mainmenu
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ newusr:
|
|
$!
|
|
$! NEWUSR.COM VERSION 1.0 BETA
|
|
$!
|
|
$ on warning then goto ok
|
|
$ on control_y then goto ok
|
|
$ on error then goto ok
|
|
$ on severe_error then goto ok
|
|
$ set on
|
|
$ in :== "inquire /nopunctuation"
|
|
$ out :== "write sys$output"
|
|
$!
|
|
$ cls
|
|
$ write sys$output " "
|
|
$ out blink
|
|
$ out " Welcome New User ! "
|
|
$ out normal
|
|
$ out " "
|
|
$ out " "
|
|
$!
|
|
$ in usr "Username: "
|
|
$ open /read mailfile [bbs]'usr'.mail /error=ok
|
|
$ out " "
|
|
$ out "This Username already Exists."
|
|
$ out " "
|
|
$ wait 0:00:02
|
|
$ exit
|
|
$ ok:
|
|
$ set term/noecho
|
|
$ in pass "Password: "
|
|
$ set term/echo
|
|
$ open /write mailfile [bbs]'usr'.mail
|
|
$ write [bbs]mailfile pass
|
|
$ close [bbs]mailfile
|
|
$ out " "
|
|
$ out "User ''usr' Added To Users File."
|
|
$ out " "
|
|
$ wait 0:00:02
|
|
$ exit
|
|
$ !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ ! bsbbye, displays a ascii file and logs user out of the system
|
|
$ bbsbye:
|
|
$ cls
|
|
$ type [bbs]goodbye.txt /nopage
|
|
$ FINISH = F$CVTIME(,,"TIME")
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " S F E R R A B B S ( C ) 1 9 9 3 "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " L O G O U T "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " "
|
|
$ WRITE SYS$OUTPUT " C A L L B A C K S O O N ! ! !"
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ write sys$output " "
|
|
$ open/append output_file [bbs]users.dat
|
|
$ write output_file "User: ''user' disconnected from ''device' on ''finish'"
|
|
$ write output_file "-----------------------------------------------------"
|
|
$ close output_file
|
|
$ exit
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ smail:
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$! SENDMAIL.COM VERSION 1.0 BETA
|
|
$!
|
|
$!
|
|
$!
|
|
$ on error then goto nouser
|
|
$ on severe_error then goto nouser
|
|
$ in :== "inquire /nopunctuation"
|
|
$ out :== "write sys$output"
|
|
$!
|
|
$ cls
|
|
$ out " Write Your Message Below. End With a Dot (.) "
|
|
$!
|
|
$ pass=""
|
|
$ in usr "From : "
|
|
$ open /read checkpw [bbs]'usr'.mail /error=wronguspw
|
|
$ set term/noecho
|
|
$ in pw "Password: "
|
|
$ set term/echo
|
|
$ read checkpw pass
|
|
$ if pass .nes. pw then goto wronguspw
|
|
$ if pass .nes. "" then close checkpw
|
|
$ in dest "To : "
|
|
$ open /append mailfile [bbs]'dest'.mail /error=nouser
|
|
$ in obj "Object: "
|
|
$ write mailfile "From : ",usr
|
|
$ write mailfile "To : ",dest
|
|
$ write mailfile "Object : ",obj
|
|
$ write mailfile " "
|
|
$ write mailfile "Text :"
|
|
$ write mailfile " "
|
|
$ line=2
|
|
$ previous:
|
|
$ line=line-1
|
|
$ if line .eq. 0 then line=1
|
|
$ again:
|
|
$ in text "''line': "
|
|
$ if text .eqs. "c" then goto previous
|
|
$ if text .eqs. "." then goto endinput
|
|
$ write mailfile text
|
|
$ line=line+1
|
|
$ goto again
|
|
$ endinput:
|
|
$ write mailfile "------"
|
|
$ close mailfile
|
|
$ out " "
|
|
$ out "Mail Sent."
|
|
$ wait 0:00:02
|
|
$ exit
|
|
$ nouser:
|
|
$ out "The user does not exists, please check the name."
|
|
$ out " "
|
|
$ wait 0:00:02
|
|
$ exit
|
|
$ wronguspw:
|
|
$ out " "
|
|
$ out "You have entered a wrong Username/Password."
|
|
$ out " "
|
|
$ wait 0:00:02
|
|
$ if pass .nes. "" then close checkpw
|
|
$ exit
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ rmail:
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$!
|
|
$!
|
|
$! READMAIL.COM VERSION 1.0 BETA
|
|
$!
|
|
$!
|
|
$!
|
|
$ on error then goto finished
|
|
$ on severe_error then goto finished
|
|
$ in :== "inquire /nopunctuation"
|
|
$ out :== "write sys$output"
|
|
$!
|
|
$!
|
|
$ out " "
|
|
$ in usr "Username: "
|
|
$ set term/noecho
|
|
$ in pass "Password: "
|
|
$ set term/echo
|
|
$ open /read mailfile [bbs]'usr'.mail /error=wronguspw
|
|
$ mails=0
|
|
$ read mailfile pw
|
|
$ if pw .nes. pass then goto wronguspw
|
|
$ again:
|
|
$ read mailfile text /end=finished
|
|
$ if text .eqs. "------" then gosub pause
|
|
$ out text
|
|
$ goto again
|
|
$ finished:
|
|
$ close mailfile
|
|
$ if mails .eq. 0 then goto nomails
|
|
$ out " "
|
|
$ out "End of Mails."
|
|
$ wait 0:00:02
|
|
$ exit
|
|
$ nomails:
|
|
$ out "You have no mails."
|
|
$ out " "
|
|
$ wait 0:00:02
|
|
$ exit
|
|
$ pause:
|
|
$ out " "
|
|
$ in more "Press any key to read next mail, press X to exit."
|
|
$ if more .eqs. "X" then goto exitmail
|
|
$ text=CLC
|
|
$ mails=mails+1
|
|
$ return
|
|
$ wronguspw:
|
|
$ out " "
|
|
$ out "You have entered a wrong Username/Password."
|
|
$ out " "
|
|
$ close mailfile
|
|
$ exit
|
|
$ exitmail:
|
|
$ close mailfile
|
|
$ exit
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ cmbx:
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$!
|
|
$! CLEARMAIL.COM VERSION 1.0 BETA
|
|
$!
|
|
$!
|
|
$!
|
|
$ on error then goto mistake
|
|
$ on severe_error then goto mistake
|
|
$ in :== "inquire /nopunctuation"
|
|
$ out :== "write sys$output"
|
|
$!
|
|
$ cls
|
|
$!
|
|
$ pass=""
|
|
$ in usr "Username: "
|
|
$ open /read mailfile [bbs]'usr'.mail /error=wronguspw
|
|
$ set term/noecho
|
|
$ in pass "Password: "
|
|
$ set term/echo
|
|
$ mails=0
|
|
$ read mailfile pw
|
|
$ if pw .nes. pass then goto wronguspw
|
|
$ close mailfile
|
|
$ open /write newfile [bbs]usr.tmp /error=wronguspw
|
|
$ write newfile pw
|
|
$ close newfile
|
|
$ delete [bbs]'usr'.mail;*
|
|
$ rename [bbs]usr.tmp [bbs]'usr'.mail /nolog
|
|
$ cls
|
|
$ out " "
|
|
$ out "Mailbox Cleared."
|
|
$ wait 0:00:02
|
|
$ exit
|
|
$ mistake:
|
|
$ cls
|
|
$ out " "
|
|
$ out "An error has occurred, contact Sysop."
|
|
$ out " "
|
|
$ exit
|
|
$ wronguspw:
|
|
$ cls
|
|
$ out " "
|
|
$ out "You have entered a wrong Username/Password."
|
|
$ out " "
|
|
$ wait 0:00:02
|
|
$ if pass .nes. "" then close mailfile
|
|
$ exit
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ Dmbx:
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$!
|
|
$! DELETEMBX.COM VERSION 1.0 BETA
|
|
$!
|
|
$!
|
|
$!
|
|
$ on error then goto nouser
|
|
$ on severe_error then goto nouser
|
|
$ in :== "inquire /nopunctuation"
|
|
$ out :== "write sys$output"
|
|
$ out " "
|
|
$!
|
|
$!
|
|
$ in usr "Username: "
|
|
$ open /read mailfile [bbs]'usr'.mail /error=nouser
|
|
$ set term/noecho
|
|
$ in pass "Password: "
|
|
$ set term/echo
|
|
$ read mailfile pw
|
|
$ close mailfile
|
|
$ if pw .eqs. pass then goto deleteit
|
|
$ out " "
|
|
$ out "Wrong Password."
|
|
$ wait 0:00:02
|
|
$ exit
|
|
$ deleteit:
|
|
$ delete [bbs]'usr'.mail;* /nolog
|
|
$ out " "
|
|
$ out "Mailbox Deleted."
|
|
$ out " "
|
|
$ wait 0:00:02
|
|
$ exit
|
|
$ nouser:
|
|
$ out " "
|
|
$ out "This Mailbox doesn't exists!"
|
|
$ out " "
|
|
$ wait 0:00:02
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ fileslist
|
|
$!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
$ fileslist: subroutine
|
|
$ cls
|
|
$ type [bbs.files]files.txt
|
|
$ write sys$output " "
|
|
$ exit
|
|
|