home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Carsten's PPE Collection
/
Carstens_PPE_Collection_2007.zip
/
T
/
TSCV06.ZIP
/
CHKVOTE.PPE
(
.txt
)
next >
Wrap
PCBoard Programming Language Executable
|
1994-04-06
|
5KB
|
326 lines
;------------------------------------------------------------------------------
; .ss.
; `²²'
; .,sS$Ss,,s$ .,sS$$$Ss. .,sS$Ss,,s$ .ss. .sSs.
; .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
; $$$' .$$$' $$$²Sçsµ²' .$$$' .$$$'.$$$' .$$$' `$$b.
; $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$' ;$$$
; `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
; .sS²°$$$²²°"' d²°'
; .$$² .$$'
; $$$.,d$$'
; `²S$$S²'
;------------------------------------------------------------------------------
; P.P.L.X. 2.OO (C)1996 - Lone Runner / AEGiS CoRP'96
;------------------------------------------------------------------------------
; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
;------------------------------------------------------------------------------
Boolean BOOLEAN001
Integer INTEGER003
Integer INTEGER004
Integer INTEGER005
Integer INTEGER006
String STRING001
String STRING002
String STRING003
String STRING004
String STRING005
String STRING006
String STRING007
String STRING008
;------------------------------------------------------------------------------
STRING005 = ReadLine(PPEPath() + "GENEREL.CFG", 3)
STRING006 = ReadLine(PPEPath() + "GENEREL.CFG", 4)
If (Upper(STRING005) == "Y") Then
Print "@QOFF@"
Endif
If (Upper(STRING006) == "Y") Then
Print "@POFF@"
Endif
Tokenize U_Name()
STRING001 = GetToken()
STRING001 = STRING001 + GetToken()
FOpen 5, PPEPath() + "USERS.APL", 0, 0
:LABEL001
If (Ferr(5)) Goto LABEL002
FGet 5, STRING003
If (STRING003 == U_Name()) Then
BOOLEAN001 = 1
Endif
Goto LABEL001
:LABEL002
FClose 5
If (BOOLEAN001) Goto LABEL003
Goto LABEL020
:LABEL003
STRING007 = PPEPath() + Left(STRING001, 8)
STRING008 = PPEPath() + "ACCEPTED\" + Left(STRING001, 8)
If (FileInf(STRING007 + ".END", 1) == 1) Then
STRING002 = ReadLine(STRING007 + ".END", 1)
If (STRING002 == "1") Then
Print "@CLS@"
DispFile PPEPath() + "UPGRWELC.", 0
STRING004 = ReadLine(PPEPath() + "UPGRADE.CFG", 1)
Tokenize STRING004
INTEGER005 = GetToken()
INTEGER006 = GetToken()
AnsiPos INTEGER005, INTEGER006
PrintLn "@X0EUpgrading in progress :"
Rename STRING007 + ".VOT", STRING008 + ".VOT"
Rename STRING007 + ".CMT", STRING008 + ".CMT"
Rename STRING007 + ".SYS", STRING008 + ".SYS"
Rename STRING007 + ".ALL", STRING008 + ".ALL"
Delete STRING007 + ".END"
PrintLn "@X09 ■ Moving your information to secret area"
FOpen 5, PPEPath() + "USERS.APL", 0, 3
FCreate 4, PPEPath() + "USERS.NEW", 1, 3
FGet 5, STRING003
:LABEL004
If (Ferr(5)) Goto LABEL006
If (STRING003 == U_Name()) Then
Goto LABEL005
Endif
FPutLn 4, STRING003
:LABEL005
FGet 5, STRING003
Goto LABEL004
:LABEL006
FClose 5
FClose 4
FAppend 5, PPEPath() + "USERS.ELI", 2, 3
PrintLn " ■ Adding you to the elitez"
FPutLn 5, U_Name()
FClose 5
INTEGER003 = ReadLine(PPEPath() + "GENEREL.CFG", 5)
GetUser
U_Sec = INTEGER003
PutUser
PrintLn " ■ Upgrading your security"
Delete PPEPath() + "USERS.APL"
Rename PPEPath() + "USERS.NEW", PPEPath() + "USERS.APL"
PrintLn " ■ Registering you in conferences"
FOpen 5, PPEPath() + "CONFEREN.CFG", 0, 0
:LABEL007
If (Ferr(5)) Goto LABEL008
FGet 5, INTEGER004
ConfFlag INTEGER004, 1 + 4
Goto LABEL007
:LABEL008
FClose 5
FAppend 5, PPEPath() + "TSC.LOG", 2, 3
FPutLn 5, U_Name() + " has been upgraded"
FClose 5
If (Upper(ReadLine(PPEPath() + "GENEREL.CFG", 9)) == "Y") Then
PrintLn " ■ Adding oneliner about your arrival"
FOpen 5, PPEPath() + "ONELINER.DAT", 0, 0
FCreate 4, PPEPath() + "ONELINER.$$$", 2, 3
FGet 5, STRING003
If (Upper((ReadLine(PPEPath() + "ONELINER.CNF", 3) == "Y"))) Then
FAppend 3, PPEPath() + "ONELINER.OLD", 2, 3
FPutLn 3, STRING003
FClose 3
Endif
FGet 5, STRING003
:LABEL009
If (Ferr(5)) Goto LABEL010
FPutLn 4, STRING003
FGet 5, STRING003
Goto LABEL009
:LABEL010
FClose 5
FPutLn 4, U_Name() + " is accepted as elite!"
FClose 4
Delete PPEPath() + "ONELINER.DAT"
Rename PPEPath() + "ONELINER.$$$", PPEPath() + "ONELINER.DAT"
FOpen 5, PPEPath() + "ONELINER.JOK", 0, 0
FCreate 4, PPEPath() + "ONELINER.$$$", 2, 3
FGet 5, STRING003
If (Upper((ReadLine(PPEPath() + "ONELINER.CNF", 2) == "Y"))) Then
FAppend 3, PPEPath() + "ONELINER.JOL", 2, 3
FPutLn 3, STRING003
FClose 3
Endif
FGet 5, STRING003
:LABEL011
If (Ferr(5)) Goto LABEL012
FPutLn 4, STRING003
FGet 5, STRING003
Goto LABEL011
:LABEL012
FClose 5
FPutLn 4, "@X09/\/\-> @X0FN@X07up'@X0DN'@X0FV@X07ote"
FClose 4
Delete PPEPath() + "ONELINER.JOK"
Rename PPEPath() + "ONELINER.$$$", PPEPath() + "ONELINER.JOK"
Endif
Else
Delete STRING007 + ".VOT"
Delete STRING007 + ".CMT"
Delete STRING007 + ".SYS"
Delete STRING007 + ".ALL"
Delete STRING007 + ".END"
FOpen 5, PPEPath() + "USERS.APL", 0, 0
FCreate 4, PPEPath() + "USERS.NEW", 1, 3
FGet 5, STRING003
:LABEL013
If (Ferr(5)) Goto LABEL015
If (STRING003 == U_Name()) Then
Goto LABEL014
Endif
FPutLn 4, STRING003
:LABEL014
FGet 5, STRING003
Goto LABEL013
:LABEL015
FClose 5
FClose 4
Delete PPEPath() + "USERS.APL"
Rename PPEPath() + "USERS.NEW", PPEPath() + "USERS.APL"
FAppend 5, PPEPath() + "USERS.LAM", 2, 3
FPutLn 5, U_Name()
FClose 5
FAppend 5, PPEPath() + "TSC.LOG", 2, 3
FPutLn 5, U_Name() + " has been downgraded"
FClose 5
If (Upper(ReadLine(PPEPath() + "GENEREL.CFG", 9)) == "Y") Then
FOpen 5, PPEPath() + "ONELINER.DAT", 0, 0
FCreate 4, PPEPath() + "ONELINER.$$$", 2, 3
FGet 5, STRING003
If (Upper((ReadLine(PPEPath() + "ONELINER.CNF", 3) == "Y"))) Then
FAppend 3, PPEPath() + "ONELINER.OLD", 2, 3
FPutLn 3, STRING003
FClose 3
Endif
FGet 5, STRING003
:LABEL016
If (Ferr(5)) Goto LABEL017
FPutLn 4, STRING003
FGet 5, STRING003
Goto LABEL016
:LABEL017
FClose 5
FPutLn 4, U_Name() + " has been kicked to hell!"
FClose 4
Delete PPEPath() + "ONELINER.DAT"
Rename PPEPath() + "ONELINER.$$$", PPEPath() + "ONELINER.DAT"
FOpen 5, PPEPath() + "ONELINER.JOK", 0, 0
FCreate 4, PPEPath() + "ONELINER.$$$", 2, 3
FGet 5, STRING003
If (Upper((ReadLine(PPEPath() + "ONELINER.CNF", 2) == "Y"))) Then
FAppend 3, PPEPath() + "ONELINER.JOL", 2, 3
FPutLn 3, STRING003
FClose 3
Endif
FGet 5, STRING003
:LABEL018
If (Ferr(5)) Goto LABEL019
FPutLn 4, STRING003
FGet 5, STRING003
Goto LABEL018
:LABEL019
FClose 5
FPutLn 4, "@X09/\/\-> @X0FN@X07up'@X0DN'@X0FV@X07ote"
FClose 4
Delete PPEPath() + "ONELINER.JOK"
Rename PPEPath() + "ONELINER.$$$", PPEPath() + "ONELINER.JOK"
Endif
DispFile PPEPath() + "UPGRFUCK.", 0
GetUser
U_Sec = 0
U_ExpSec = 0
DelUser
PutUser
Hangup
Endif
Else
DispFile PPEPath() + "UPGRWAIT.", 0
Endif
PrintLn "@X07"
PrintLn ""
PrintLn "@X09Thanx for using Nup'n'vote v0.6 - [UNREGISTRED]"
Delay 100
:LABEL020
;------------------------------------------------------------------------------
;
; Usage report (before postprocessing)
;
; ■ Statements used :
;
; 35 Goto
; 15 Let
; 3 Print
; 9 PrintLn
; 22 If
; 1 ConfFlag
; 3 DispFile
; 6 FCreate
; 8 FOpen
; 8 FAppend
; 22 FClose
; 18 FGet
; 18 FPutLn
; 1 Hangup
; 2 GetUser
; 2 PutUser
; 12 Delete
; 1 DelUser
; 1 Delay
; 2 Tokenize
; 1 AnsiPos
; 10 Rename
;
;
; ■ Functions used :
;
; 78 +
; 13 ==
; 22 !
; 8 Upper()
; 2 Left()
; 8 Ferr()
; 10 U_Name()
; 55 PPEPath()
; 11 ReadLine()
; 4 GetToken()
; 1 FileInf()
;
;------------------------------------------------------------------------------
;
; Analysis flags : FWDB
;
; F - Change conference flags status ■ 2
; This may be normal for a SELECT replacement but it may also be
; a way to get access to conferences a user is not allowed to.
; ■ Search for : CONFFLAG, CONFUNFLAG
;
; W - Write user ■ 5
; Program writes a user record. Although this may be normal for a
; User Editor, it may also be a way to modify an account level.
; ■ Search for : PUTUSER
;
; D - Delete user ■ 5
; Program is deleting account(s)... Check!
; ■ Search for : DELUSER
;
; B - Brute hangup ■ 1
; Program hangup without notification. This may be a good way to
; disconnect a user, but if used randomly, may be very nasty
; ■ Search for : HANGUP, DTROFF
;
;------------------------------------------------------------------------------
;
; Postprocessing report
;
; 0 For/Next
; 0 While/EndWhile
; 13 If/Then or If/Then/Else
; 0 Select Case
;
;------------------------------------------------------------------------------
; AEGiS Corp - Break the routines, code against the machines!
;------------------------------------------------------------------------------