diff options
| -rw-r--r-- | services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java | 8 | ||||
| -rw-r--r-- | services/devicepolicy/java/com/android/server/devicepolicy/SecurityLogMonitor.java | 53 | 
2 files changed, 29 insertions, 32 deletions
diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java index 58e198e532cd..ffc090f7a385 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/DevicePolicyManagerService.java @@ -15834,11 +15834,11 @@ public class DevicePolicyManagerService extends IDevicePolicyManager.Stub {      }      private void enforceLoggingPolicy( -            boolean securityLoggingEnabled, boolean auditLoggingEnabled) { +            boolean securityLogEnabled, boolean auditLogEnabled) {          Slogf.i(LOG_TAG, "Enforcing logging policy, security: %b audit: %b", -                securityLoggingEnabled, auditLoggingEnabled); -        SecurityLog.setLoggingEnabledProperty(securityLoggingEnabled || auditLoggingEnabled); -        setLoggingConfiguration(securityLoggingEnabled, auditLoggingEnabled); +                securityLogEnabled, auditLogEnabled); +        mInjector.securityLogSetLoggingEnabledProperty(securityLogEnabled || auditLogEnabled); +        setLoggingConfiguration(securityLogEnabled, auditLogEnabled);      }      private void setLoggingConfiguration( diff --git a/services/devicepolicy/java/com/android/server/devicepolicy/SecurityLogMonitor.java b/services/devicepolicy/java/com/android/server/devicepolicy/SecurityLogMonitor.java index 02f39189ae72..b6ab4c759166 100644 --- a/services/devicepolicy/java/com/android/server/devicepolicy/SecurityLogMonitor.java +++ b/services/devicepolicy/java/com/android/server/devicepolicy/SecurityLogMonitor.java @@ -469,15 +469,16 @@ class SecurityLogMonitor implements Runnable {          }          if (!securityLogV2Enabled() || mLegacyLogEnabled) { -            addToLegacyBuffer(dedupedLogs); +            addToLegacyBufferLocked(dedupedLogs);          }          if (securityLogV2Enabled() && mAuditLogEnabled) { -            addAuditLogEvents(dedupedLogs); +            addAuditLogEventsLocked(dedupedLogs);          }      } -    private void addToLegacyBuffer(List<SecurityEvent> dedupedLogs) { +    @GuardedBy("mLock") +    private void addToLegacyBufferLocked(List<SecurityEvent> dedupedLogs) {          // Save the rest of the new batch.          mPendingLogs.addAll(dedupedLogs); @@ -649,32 +650,28 @@ class SecurityLogMonitor implements Runnable {          Slogf.i(TAG, "Set audit log callback for UID %d", uid);      } -    private void addAuditLogEvents(List<SecurityEvent> events) { -        mLock.lock(); -        try { -            if (mPaused) { -                // TODO: maybe we need to stash the logs in some temp buffer wile paused so that -                // they can be accessed after affiliation is fixed. -                return; -            } -            if (!events.isEmpty()) { -                for (int i = 0; i < mAuditLogCallbacks.size(); i++) { -                    final int uid = mAuditLogCallbacks.keyAt(i); -                    scheduleSendAuditLogs(uid, mAuditLogCallbacks.valueAt(i), events); -                } -            } -            if (DEBUG) { -                Slogf.d(TAG, "Adding audit %d events to % already present in the buffer", -                        events.size(), mAuditLogEventBuffer.size()); -            } -            mAuditLogEventBuffer.addAll(events); -            trimAuditLogBufferLocked(); -            if (DEBUG) { -                Slogf.d(TAG, "Audit event buffer size after trimming: %d", -                        mAuditLogEventBuffer.size()); +    @GuardedBy("mLock") +    private void addAuditLogEventsLocked(List<SecurityEvent> events) { +        if (mPaused) { +            // TODO: maybe we need to stash the logs in some temp buffer wile paused so that +            // they can be accessed after affiliation is fixed. +            return; +        } +        if (!events.isEmpty()) { +            for (int i = 0; i < mAuditLogCallbacks.size(); i++) { +                final int uid = mAuditLogCallbacks.keyAt(i); +                scheduleSendAuditLogs(uid, mAuditLogCallbacks.valueAt(i), events);              } -        } finally { -            mLock.unlock(); +        } +        if (DEBUG) { +            Slogf.d(TAG, "Adding audit %d events to % already present in the buffer", +                    events.size(), mAuditLogEventBuffer.size()); +        } +        mAuditLogEventBuffer.addAll(events); +        trimAuditLogBufferLocked(); +        if (DEBUG) { +            Slogf.d(TAG, "Audit event buffer size after trimming: %d", +                    mAuditLogEventBuffer.size());          }      }  |