]> granicus.if.org Git - python/commitdiff
_is_string_secure(): This method is no longer used; removed it. (It
authorTim Peters <tim.peters@gmail.com>
Tue, 28 Jan 2003 16:42:22 +0000 (16:42 +0000)
committerTim Peters <tim.peters@gmail.com>
Tue, 28 Jan 2003 16:42:22 +0000 (16:42 +0000)
was used before string-escape codecs were added to the core.)

Lib/pickle.py

index 5a8bfea218facac10bb6ca3246e6d0c45d26534b..c29f2f875d83878e0ab257fed102883bc4936234 100644 (file)
@@ -845,43 +845,6 @@ class Unpickler:
         self.append(rep.decode("string-escape"))
     dispatch[STRING] = load_string
 
-    def _is_string_secure(self, s):
-        """Return true if s contains a string that is safe to eval
-
-        The definition of secure string is based on the implementation
-        in cPickle.  s is secure as long as it only contains a quoted
-        string and optional trailing whitespace.
-        """
-        q = s[0]
-        if q not in ("'", '"'):
-            return 0
-        # find the closing quote
-        offset = 1
-        i = None
-        while 1:
-            try:
-                i = s.index(q, offset)
-            except ValueError:
-                # if there is an error the first time, there is no
-                # close quote
-                if offset == 1:
-                    return 0
-            if s[i-1] != '\\':
-                break
-            # check to see if this one is escaped
-            nslash = 0
-            j = i - 1
-            while j >= offset and s[j] == '\\':
-                j = j - 1
-                nslash = nslash + 1
-            if nslash % 2 == 0:
-                break
-            offset = i + 1
-        for c in s[i+1:]:
-            if ord(c) > 32:
-                return 0
-        return 1
-
     def load_binstring(self):
         len = mloads('i' + self.read(4))
         self.append(self.read(len))