home *** CD-ROM | disk | FTP | other *** search
- ;------------------------------------------------------------------------------
- ; .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
- ;------------------------------------------------------------------------------
-
- Integer INTEGER001
- Integer INTEGER002
- String STRING001
- String STRING002
- String STRING003
- String STRING004
- String STRING005
-
- ;------------------------------------------------------------------------------
-
- FAppend 1, PPEPath() + "A-DOS.LOG", 2, 0
- FPutLn 1, "------------------------------------------------------------------------------"
- FPutLn 1, String(Date()), " ", String(Time()), " ", U_Name(), " entered in A-DOS :))"
- FPutLn 1
- FPutLn 1, "Command used :"
- FPutLn 1
- StartDisp 1
- STRING001 = "PCB"
- Color 7
- Cls
- Delay 20
- DispFile PPEPath() + "shell.txt", 0
- Delay 25
- DispFile PPEPath() + "limiter.txt", 0
- Delay 10
- DispFile PPEPath() + "access.txt", 0
- Delay 18
- DispFile PPEPath() + "allowed.tre", 0
- Gosub LABEL010
- :LABEL001
- STRING002 = Inkey()
- :LABEL002
- If (STRING002 == "") Goto LABEL001
- If ((Asc(STRING002) >= 32) && (Len(STRING002) == 1)) Then
- Print STRING002
- STRING004 = STRING004 + STRING002
- Endif
- If ((((STRING002 == Chr(8)) && (Len(STRING002) == 1)) || (STRING002 == "LEFT")) && (Len(STRING004) > 0)) Then
- Print Chr(8) + " " + Chr(8)
- STRING004 = Left(STRING004, Len(STRING004) - 1)
- Endif
- If ((STRING002 == "RIGHT") && (Len(STRING003) > Len(STRING004))) Then
- STRING002 = Mid(STRING003, Len(STRING004) + 1, 1)
- Goto LABEL002
- Endif
- If ((STRING002 == Chr(13)) && (Len(STRING002) == 1)) Then
- Goto LABEL003
- Endif
- Goto LABEL001
- :LABEL003
- STRING004 = Trim(STRING004, " ")
- STRING003 = STRING004
- STRING004 = Upper(STRING004)
- INTEGER002 = 0
- For INTEGER001 = 1 To Len(STRING004)
- If (Mid(STRING004, INTEGER001, 1) == "\") Inc INTEGER002
- Next
- If (INTEGER002 > 1) Then
- DispFile PPEPath() + "nocomplx.txt", 0
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Endif
- If (Left(STRING004, 3) == "DIR") Then
- FPutLn 1, STRING004
- If (STRING001 <> "") Then
- DispFile PPEPath() + STRING001 + ".DIR", 0
- Goto LABEL004
- Endif
- DispFile PPEPath() + "ROOT.DIR", 0
- :LABEL004
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Endif
- If (Left(STRING004, 3) == "REM") Then
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Endif
- If (STRING004 == "CD\") Then
- STRING001 = ""
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Endif
- If (Left(STRING004, 3) == "CD\") Then
- DispFile PPEPath() + "nocomplx.txt", 0
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Endif
- If (Left(STRING004, 4) == "CD..") Then
- FPutLn 1, STRING004
- If (STRING001 == "") Then
- DispFile PPEPath() + "invaldir.txt", 0
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Goto LABEL005
- Endif
- STRING001 = ""
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Endif
- :LABEL005
- If (STRING004 == "CLS") Then
- FPutLn 1, STRING004
- STRING004 = ""
- Cls
- Gosub LABEL010
- Goto LABEL001
- Endif
- If (Left(STRING004, 3) == "CD ") Then
- FPutLn 1, STRING004
- STRING005 = Upper(Mid(STRING004, 4, Len(STRING004) - 3))
- If (((STRING005 == "..") && (STRING001 <> "")) || (STRING005 == "\")) Then
- STRING001 = ""
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Endif
- If ((STRING005 <> "PCB") && (STRING005 <> "DOS")) Then
- DispFile PPEPath() + "a_denied.txt", 0
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Goto LABEL006
- Endif
- STRING001 = STRING005
- STRING004 = ""
- Gosub LABEL010
- Goto LABEL001
- Endif
- :LABEL006
- If ((((((Left(STRING004, 7) == "FORMAT ") || (Left(STRING004, 4) == "DEL ")) || (Left(STRING004, 8) == "DELTREE ")) || (Left(STRING004, 6) == "ERASE ")) || (Left(STRING004, 5) == "FDISK")) || (Left(STRING004, 3) == "RD ")) Then
- FPutLn 1, STRING004, " !!!!!"
- DispFile PPEPath() + "BUSTED", 1
- FPutLn 1, "User was thrown out of this PPE and should be Locked out !!"
- Log "Unallowed command typed in A-DOS !!!", 0
- Message 0, "Sysop", U_Name(), "Lamer", "R", 0, 0, 0, PPEPath() + "busted.msg"
- Wait
- ElseIf (STRING004 == "EXIT") Then
- PrintLn
- Delay 20
- FPutLn 1, "Exit by normal way..."
- Else
- If (STRING004 == "") Goto LABEL009
- FOpen 2, PPEPath() + STRING001 + ".CMD", 0, 0
- :LABEL007
- If (Ferr(2)) Goto LABEL008
- FGet 2, STRING005
- If (Upper(STRING005) == STRING004) Then
- FPutLn 1, STRING004
- DispFile PPEPath() + "a_denied.txt", 0
- FClose 2
- Else
- Goto LABEL007
- :LABEL008
- FPutLn 1, STRING004
- DispFile PPEPath() + "invalcom.txt", 0
- FClose 2
- Goto LABEL009
- Endif
- :LABEL009
- Gosub LABEL010
- STRING004 = ""
- Goto LABEL001
- Endif
- FClose 1
- End
- :LABEL010
- PrintLn
- PrintLn "Type EXIT to return to PCBoard"
- PrintLn
- Print "C:\", STRING001, ">"
- Return
-
- ;------------------------------------------------------------------------------
- ;
- ; Usage report (before postprocessing)
- ;
- ; ■ Statements used :
- ;
- ; 1 End
- ; 2 Cls
- ; 1 Wait
- ; 1 Color
- ; 47 Goto
- ; 28 Let
- ; 3 Print
- ; 4 PrintLn
- ; 24 If
- ; 13 DispFile
- ; 1 FOpen
- ; 1 FAppend
- ; 3 FClose
- ; 1 FGet
- ; 14 FPutLn
- ; 1 StartDisp
- ; 1 Log
- ; 13 Gosub
- ; 1 Return
- ; 5 Delay
- ; 1 Inc
- ; 1 Message
- ;
- ;
- ; ■ Functions used :
- ;
- ; 23 +
- ; 2 -
- ; 28 ==
- ; 4 <>
- ; 1 <
- ; 1 <=
- ; 3 >
- ; 3 >=
- ; 21 !
- ; 9 &&
- ; 8 ||
- ; 11 Len(
- ; 3 Upper()
- ; 3 Mid()
- ; 12 Left()
- ; 1 Ferr()
- ; 4 Chr()
- ; 1 Asc()
- ; 1 Trim()
- ; 1 Date()
- ; 1 Time()
- ; 2 U_Name()
- ; 1 Inkey()
- ; 2 String()
- ; 16 PPEPath()
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Analysis flags : No flag
- ;
- ;------------------------------------------------------------------------------
- ;
- ; Postprocessing report
- ;
- ; 1 For/Next
- ; 0 While/EndWhile
- ; 19 If/Then or If/Then/Else
- ; 0 Select Case
- ;
- ;------------------------------------------------------------------------------
- ; AEGiS Corp - Break the routines, code against the machines!
- ;------------------------------------------------------------------------------
-