Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/include/linux/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  integrity.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-only */
/*
 * Copyright (C) 2009 IBM Corporation
 * Author: Mimi Zohar <zohar@us.ibm.com>
 */


#ifndef _LINUX_INTEGRITY_H
#define _LINUX_INTEGRITY_H

#include <linux/fs.h>
#include <linux/iversion.h>

enum integrity_status {
 INTEGRITY_PASS = 0,
 INTEGRITY_PASS_IMMUTABLE,
 INTEGRITY_FAIL,
 INTEGRITY_FAIL_IMMUTABLE,
 INTEGRITY_NOLABEL,
 INTEGRITY_NOXATTRS,
 INTEGRITY_UNKNOWN,
};

#ifdef CONFIG_INTEGRITY
extern void __init integrity_load_keys(void);

#else
static inline void integrity_load_keys(void)
{
}
#endif /* CONFIG_INTEGRITY */

/* An inode's attributes for detection of changes */
struct integrity_inode_attributes {
 u64 version;  /* track inode changes */
 unsigned long ino;
 dev_t dev;
};

/*
 * On stacked filesystems the i_version alone is not enough to detect file data
 * or metadata change. Additional metadata is required.
 */

static inline void
integrity_inode_attrs_store(struct integrity_inode_attributes *attrs,
       u64 i_version, const struct inode *inode)
{
 attrs->version = i_version;
 attrs->dev = inode->i_sb->s_dev;
 attrs->ino = inode->i_ino;
}

/*
 * On stacked filesystems detect whether the inode or its content has changed.
 */

static inline bool
integrity_inode_attrs_changed(const struct integrity_inode_attributes *attrs,
         const struct inode *inode)
{
 return (inode->i_sb->s_dev != attrs->dev ||
  inode->i_ino != attrs->ino ||
  !inode_eq_iversion(inode, attrs->version));
}


#endif /* _LINUX_INTEGRITY_H */

100%


¤ Dauer der Verarbeitung: 0.19 Sekunden  (vorverarbeitet)  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung ist noch experimentell.