bandit/examples/hardcoded-passwords.py
Ian Cordasco 4af7ea6a20 Update example files to work on Python 2 & 3
Almost all of the problems were using print statements instead of
equivalent Python 3 syntax. You'll notice that in Python 2, the AST
parses `print(...)` and `print ...` equivalently:

    $ python
    Python 2.7.9 (default, Dec 15 2014, 10:01:34)
    [GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.56)] on darwin
    Type "help", "copyright", "credits" or "license" for more information.
    >>> import ast
    >>> body = ast.parse('print("Foo")').body[0]
    >>> body
    <_ast.Print object at 0x1033452d0>
    >>> body.values
    [<_ast.Str object at 0x103345310>]
    >>> body2 = ast.parse('print "Foo"').body[0]
    >>> body2
    <_ast.Print object at 0x103345350>
    >>> body2.values
    [<_ast.Str object at 0x103345390>]

This leaves 2 files - exec.py, os-chmod.py - which are skipped due to
syntax errors on Python 3.4.

Change-Id: I2d97a249503317092372a874c018561cf875b066
2015-06-03 16:28:36 +00:00

16 lines
334 B
Python

def someFunction(user, password="Admin"):
print("Hi " + user)
def someFunction2(password):
if password == "root":
print("OK, logged in")
def noMatch(password):
if password == '':
print("No password!")
def NoMatch2(password):
if password == "ajklawejrkl42348swfgkg":
print("Nice password!")