;; SPDX-FileCopyrightText: © 2024 Dominick Grift ;; SPDX-License-Identifier: Unlicense (block ptytermdev (macro type ((type ARG1)) (typeattributeset typeattr ARG1)) (typeattribute typeattr) (blockinherit .file.all_macro_template_chr_files) (call .devpts.associate_fs (typeattr)) (call .termdev.type (typeattr)) (block base_template (blockabstract base_template) (context ptytermdev_context (.sys.id .sys.role ptytermdev lowlevelrange)) (type ptytermdev) (call .ptytermdev.type (ptytermdev))) (block macro_template_chr_files (blockabstract macro_template_chr_files) (macro append_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev append_chr_file)) (macro appendinherited_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev appendinherited_chr_file) (allowx ARG1 ptytermdev IOCTLCONSOLE_NOT_TIOCLINUX) (allowx ARG1 ptytermdev IOCTLTTY_NOT_TIOCSTI) (allowx ARG1 ptytermdev IOCTLVT)) (macro create_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev create_chr_file)) (macro delete_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev delete_chr_file)) (macro manage_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev manage_chr_file)) (macro mapexecute_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev mapexecute_chr_file)) (macro read_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev read_chr_file)) (macro readinherited_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev readinherited_chr_file)) (macro readwrite_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev readwrite_chr_file)) (macro readwriteinherited_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev readwriteinherited_chr_file) (allowx ARG1 ptytermdev IOCTLCONSOLE_NOT_TIOCLINUX) (allowx ARG1 ptytermdev IOCTLTTY_NOT_TIOCSTI) (allowx ARG1 ptytermdev IOCTLVT)) (macro relabel_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev relabel_chr_file)) (macro relabelfrom_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev relabelfrom_chr_file)) (macro relabelto_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev relabelto_chr_file)) (macro rename_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev rename_chr_file)) (macro write_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev write_chr_file)) (macro writeinherited_ptytermdev_chr_files ((type ARG1)) (allow ARG1 ptytermdev writeinherited_chr_file) (allowx ARG1 ptytermdev IOCTLCONSOLE_NOT_TIOCLINUX) (allowx ARG1 ptytermdev IOCTLTTY_NOT_TIOCSTI) (allowx ARG1 ptytermdev IOCTLVT))) (block template (blockabstract template) (blockinherit .ptytermdev.base_template) (blockinherit .ptytermdev.macro_template_chr_files)) (block unconfined (macro type ((type ARG1)) (typeattributeset typeattr ARG1)) (typeattribute typeattr) (allow typeattr ptytermdev.typeattr (chr_file (not (audit_access execmod)))))) (in after ptytermdev.appendinherited_all_chr_files (allowx ARG1 typeattr IOCTLCONSOLE_NOT_TIOCLINUX) (allowx ARG1 typeattr IOCTLTTY_NOT_TIOCSTI) (allowx ARG1 typeattr IOCTLVT)) (in after ptytermdev.readwriteinherited_all_chr_files (allowx ARG1 typeattr IOCTLCONSOLE_NOT_TIOCLINUX) (allowx ARG1 typeattr IOCTLTTY_NOT_TIOCSTI) (allowx ARG1 typeattr IOCTLVT)) (in after ptytermdev.writeinherited_all_chr_files (allowx ARG1 typeattr IOCTLCONSOLE_NOT_TIOCLINUX) (allowx ARG1 typeattr IOCTLTTY_NOT_TIOCSTI) (allowx ARG1 typeattr IOCTLVT))