From 5fd83771641d15c418f747bd343ba6738d3875f7 Mon Sep 17 00:00:00 2001 From: Cameron Katri Date: Sun, 9 May 2021 14:20:58 -0400 Subject: Import macOS userland adv_cmds-176 basic_cmds-55 bootstrap_cmds-116.100.1 developer_cmds-66 diskdev_cmds-667.40.1 doc_cmds-53.60.1 file_cmds-321.40.3 mail_cmds-35 misc_cmds-34 network_cmds-606.40.1 patch_cmds-17 remote_cmds-63 shell_cmds-216.60.1 system_cmds-880.60.2 text_cmds-106 --- file_cmds/mtree/metrics.h | 48 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 48 insertions(+) create mode 100644 file_cmds/mtree/metrics.h (limited to 'file_cmds/mtree/metrics.h') diff --git a/file_cmds/mtree/metrics.h b/file_cmds/mtree/metrics.h new file mode 100644 index 0000000..35dca43 --- /dev/null +++ b/file_cmds/mtree/metrics.h @@ -0,0 +1,48 @@ +/* +* Copyright (c) 2020 Apple Inc. All rights reserved. +* +* @APPLE_LICENSE_HEADER_START@ +* +* This file contains Original Code and/or Modifications of Original Code +* as defined in and that are subject to the Apple Public Source License +* Version 2.0 (the 'License'). You may not use this file except in +* compliance with the License. Please obtain a copy of the License at +* http://www.opensource.apple.com/apsl/ and read it before using this +* file. +* +* The Original Code and all software distributed under the License are +* distributed on an 'AS IS' basis, WITHOUT WARRANTY OF ANY KIND, EITHER +* EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES, +* INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY, +* FITNESS FOR A PARTICULAR PURPOSE, QUIET ENJOYMENT OR NON-INFRINGEMENT. +* Please see the License for the specific language governing rights and +* limitations under the License. +* +* @APPLE_LICENSE_HEADER_END@ +*/ + +#ifndef _METRICS_H_ +#define _METRICS_H_ + +#include +#include + +// mtree error logging +enum mtree_result { + SUCCESS = 0, + WARN_TIME = -1, + WARN_USAGE = -2, + WARN_CHECKSUM = -3, + WARN_MISMATCH = -4, + WARN_UNAME = -5, + /* Could also be a POSIX errno value */ +}; + +void set_metrics_file(FILE *file); +void set_metric_start_time(time_t time); +void set_metric_path(char *path); +#define RECORD_FAILURE(location, error) mtree_record_failure(location, error) +void mtree_record_failure(int location, int code); +void print_metrics_to_file(void); + +#endif /* _METRICS_H_ */ -- cgit v1.2.3