summaryrefslogtreecommitdiff
path: root/src/op_mode/show_system_integrity.py
diff options
context:
space:
mode:
authorDaniil Baturin <daniil@vyos.io>2021-08-24 09:17:58 -0500
committerChristian Poessinger <christian@poessinger.com>2021-08-25 15:04:08 +0200
commit2d5199e75d02c29ce924f932de5c9b012d2b11fd (patch)
tree7711ad1a2223f481b3ffd6fcde339ba4ecd28e9d /src/op_mode/show_system_integrity.py
parent3a8a99beeb07d1998a348c5dee08a04227d27ac8 (diff)
downloadvyos-1x-2d5199e75d02c29ce924f932de5c9b012d2b11fd.tar.gz
vyos-1x-2d5199e75d02c29ce924f932de5c9b012d2b11fd.zip
T3773: delete the original "show system integrity" command
(cherry picked from commit 059307f924c604eb2bdeab19a2db8ce6d8e09f90)
Diffstat (limited to 'src/op_mode/show_system_integrity.py')
-rwxr-xr-xsrc/op_mode/show_system_integrity.py70
1 files changed, 0 insertions, 70 deletions
diff --git a/src/op_mode/show_system_integrity.py b/src/op_mode/show_system_integrity.py
deleted file mode 100755
index c34d41e80..000000000
--- a/src/op_mode/show_system_integrity.py
+++ /dev/null
@@ -1,70 +0,0 @@
-#!/usr/bin/env python3
-#
-# Copyright (C) 2020 VyOS maintainers and contributors
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License version 2 or later as
-# published by the Free Software Foundation.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License
-# along with this program. If not, see <http://www.gnu.org/licenses/>.
-#
-#
-
-import sys
-import os
-import re
-import json
-from datetime import datetime, timedelta
-
-version_file = r'/usr/share/vyos/version.json'
-
-
-def _get_sys_build_version():
- if not os.path.exists(version_file):
- return None
- buf = open(version_file, 'r').read()
- j = json.loads(buf)
- if not 'built_on' in j:
- return None
- return datetime.strptime(j['built_on'], '%a %d %b %Y %H:%M %Z')
-
-
-def _check_pkgs(build_stamp):
- pkg_diffs = {
- 'buildtime': str(build_stamp),
- 'pkg': {}
- }
-
- pkg_info = os.listdir('/var/lib/dpkg/info/')
- for file in pkg_info:
- if re.search('\.list$', file):
- fts = os.stat('/var/lib/dpkg/info/' + file).st_mtime
- dt_str = (datetime.utcfromtimestamp(
- fts).strftime('%Y-%m-%d %H:%M:%S'))
- fdt = datetime.strptime(dt_str, '%Y-%m-%d %H:%M:%S')
- if fdt > build_stamp:
- pkg_diffs['pkg'].update(
- {str(re.sub('\.list', '', file)): str(fdt)})
-
- if len(pkg_diffs['pkg']) != 0:
- return pkg_diffs
- else:
- return None
-
-
-if __name__ == '__main__':
- built_date = _get_sys_build_version()
- if not built_date:
- sys.exit(1)
- pkgs = _check_pkgs(built_date)
- if pkgs:
- print (
- "The following packages don\'t fit the image creation time\nbuild time:\t" + pkgs['buildtime'])
- for k, v in pkgs['pkg'].items():
- print ("installed: " + v + '\t' + k)