Browse Source

Fix PKCS7.removePadding()

Marcin Krzyżanowski 10 years ago
parent
commit
2231ca74e5
1 changed files with 5 additions and 5 deletions
  1. 5 5
      CryptoSwift/PKCS7.swift

+ 5 - 5
CryptoSwift/PKCS7.swift

@@ -33,11 +33,11 @@ public struct PKCS7 {
     }
     }
     
     
     public func removePadding() -> NSData {
     public func removePadding() -> NSData {
-        if let padding = data.bytes().last {
-            if (padding >= 1 && padding <= 8) {
-                return data.subdataWithRange(NSRange(location: 0, length: data.length - Int(padding)))
-            }
-            return data;
+        var padding:Byte = 0
+        data.subdataWithRange(NSRange(location: data.length - 1, length: 1)).getBytes(&padding, length: 1)
+        
+        if padding >= 1 {
+            return data.subdataWithRange(NSRange(location: 0, length: data.length - Int(padding)))
         }
         }
         return data
         return data
     }
     }