mirror of
https://github.com/google/santa.git
synced 2026-04-24 03:00:12 -04:00
63 lines
1.7 KiB
Objective-C
63 lines
1.7 KiB
Objective-C
/// Copyright 2015 Google Inc. All rights reserved.
|
|
///
|
|
/// Licensed under the Apache License, Version 2.0 (the "License");
|
|
/// you may not use this file except in compliance with the License.
|
|
/// You may obtain a copy of the License at
|
|
///
|
|
/// http://www.apache.org/licenses/LICENSE-2.0
|
|
///
|
|
/// Unless required by applicable law or agreed to in writing, software
|
|
/// distributed under the License is distributed on an "AS IS" BASIS,
|
|
/// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
/// See the License for the specific language governing permissions and
|
|
/// limitations under the License.
|
|
|
|
#import "SNTDatabaseTable.h"
|
|
|
|
#include "SNTCommonEnums.h"
|
|
|
|
@class SNTRule;
|
|
@class SNTNotificationMessage;
|
|
|
|
///
|
|
/// Responsible for managing the rule tables.
|
|
///
|
|
@interface SNTRuleTable : SNTDatabaseTable
|
|
|
|
///
|
|
/// @return Number of rules in the database
|
|
///
|
|
- (NSUInteger)ruleCount;
|
|
|
|
///
|
|
/// @return Number of binary rules in the database
|
|
///
|
|
- (NSUInteger)binaryRuleCount;
|
|
|
|
///
|
|
/// @return Number of certificate rules in the database
|
|
///
|
|
- (NSUInteger)certificateRuleCount;
|
|
|
|
///
|
|
/// @return Rule for binary with given SHA-256
|
|
///
|
|
- (SNTRule *)binaryRuleForSHA256:(NSString *)SHA256;
|
|
|
|
///
|
|
/// @return Rule for certificate with given SHA-256
|
|
///
|
|
- (SNTRule *)certificateRuleForSHA256:(NSString *)SHA256;
|
|
|
|
///
|
|
/// Add an array of rules to the database. The rules will be added within a transaction and the
|
|
/// transaction will abort if any rule fails to add.
|
|
///
|
|
/// @param rules Array of SNTRule's to add.
|
|
/// @param cleanSlate If true, remove all rules before adding the new rules.
|
|
/// @return YES if all rules were added successfully.
|
|
///
|
|
- (BOOL)addRules:(NSArray *)rules cleanSlate:(BOOL)cleanSlate;
|
|
|
|
@end
|