Server sending unsupported policies will cause NPE

* Add null check after trying to create a PolicySet during
  provisioning.

Bug: 2683220
Change-Id: If20adbd4287b291e6470591fd2c3ac1f69ad2355
diff --git a/src/com/android/exchange/EasSyncService.java b/src/com/android/exchange/EasSyncService.java
index c62971c..a01bdc2 100644
--- a/src/com/android/exchange/EasSyncService.java
+++ b/src/com/android/exchange/EasSyncService.java
@@ -1286,7 +1286,10 @@
                 // the framework; if so, return the ProvisionParser containing the policy set and
                 // temporary key
                 PolicySet ps = pp.getPolicySet();
-                if (SecurityPolicy.getInstance(mContext).isSupported(ps)) {
+                // The PolicySet can be null if there are policies we don't know about (e.g. ones
+                // from Exchange 12.1)  If we have a PolicySet, then we ask whether the device can
+                // support the actual parameters of those policies.
+                if ((ps != null) && SecurityPolicy.getInstance(mContext).isSupported(ps)) {
                     return pp;
                 }
             }