# SOME DESCRIPTIVE TITLE. # Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER # This file is distributed under the same license as the PACKAGE package. # FIRST AUTHOR , YEAR. # #, fuzzy msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2026-02-06 20:03+0800\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" "Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" #: ../include/config.h:11 #, c-format msgid "" "ceccomp %s\n" "Tag at %s\n" "Build by %s\n" msgstr "" #: ../include/help.h:5 msgid "Usage: ceccomp \n" msgstr "" #: ../include/help.h:25 msgid "" "asm -- Assemble bpf text to raw bytes\n" "disasm -- Disassemble raw bytes to bpf text\n" "emu -- Emulate bpf program with given syscall and bpf text\n" "help -- Display ceccomp help information\n" "probe -- Trace the program for the first filter and emulate common " "syscalls\n" "trace -- Run program or trace pid, extract bpf filter and then print to " "text\n" "version -- Display ceccomp version\n" msgstr "" #: ../include/help.h:36 msgid "" "Options:\n" "-a, --arch (x86_64|aarch64|...) Which architecture to resolve syscall_nr, " "read or write bytestream by the byteorder of arch, default as your arch\n" "-f, --fmt (hexline|hexfmt|raw) Output format, default as hexline\n" "-p, --pid system_process_id Extract bpf filters from process and print " "with bpf text form; CAP_SYS_ADMIN is needed to work\n" "-o, --output file Print to file to avoid mixing ceccomp " "output and tracee program output, default as stderr\n" "-q, --quiet Print emulate result only or suppress the " "process info message in trace and probe\n" "-s, --seize Follow process to trace load-filter " "operation\n" "-c, --color (auto|always|never) When to print in color, default as auto\n" "syscall_nr System call number or name (e.g. 0|read)\n" "args[0-5], ip args and ip (instruction pointer) used for " "emulation, default as 0\n" "raw, text File with BPF RAW or BPF TEXT, see docs for " "detail, default as stdin\n" msgstr "" #: ../include/utils/error.h:7 msgid "Found errors when assembling BPF from trace" msgstr "" #: ../include/utils/error.h:8 #, c-format msgid "Failed to request a temporary file: %s" msgstr "" #: ../include/utils/error.h:12 msgid "Found errors when assembling text before emulating" msgstr "" #: ../include/utils/error.h:13 msgid "Please input syscall_nr (syscall name or number)" msgstr "" #: ../include/utils/error.h:14 msgid "Invalid syscall_nr" msgstr "" #: ../include/utils/error.h:17 msgid "Found errors when assembling" msgstr "" #: ../include/utils/error.h:18 msgid "Input file has more than 1024 statements!" msgstr "" #: ../include/utils/error.h:21 msgid "Found fatal errors when disassembling" msgstr "" #: ../include/utils/error.h:22 msgid "The input is empty" msgstr "" #: ../include/utils/error.h:24 msgid "The input is larger than 1024 filters! Perhaps inputting a wrong file?" msgstr "" #: ../include/utils/error.h:27 #, c-format msgid "%d byte(s) at the end of input could not fit into a filter" msgstr "" #: ../include/utils/error.h:30 #, c-format msgid "Start tracing process %d" msgstr "" #: ../include/utils/error.h:31 #, c-format msgid "Peekdata failed at %p" msgstr "" #: ../include/utils/error.h:32 msgid "Failed to execute new program" msgstr "" #: ../include/utils/error.h:33 #, c-format msgid "Process %d spawned a new pid %d" msgstr "" #: ../include/utils/error.h:34 #, c-format msgid "Process %d exited" msgstr "" #: ../include/utils/error.h:35 #, c-format msgid "Parsing seccomp filter loaded in process %d" msgstr "" #: ../include/utils/error.h:36 #, c-format msgid "Process %d failed to load seccomp filter" msgstr "" #: ../include/utils/error.h:37 msgid "Procfs not accessible, unable to perform" msgstr "" #: ../include/utils/error.h:38 msgid "Found unresolvable non-classic BPF, skipping" msgstr "" #: ../include/utils/error.h:39 msgid "Kernel thread can not be seized" msgstr "" #: ../include/utils/error.h:40 #, c-format msgid "No seccomp filters found in process %d" msgstr "" #: ../include/utils/error.h:42 #, c-format msgid "Target process is already being traced by process %d" msgstr "" #: ../include/utils/error.h:44 #, c-format msgid "" "Process %d loaded strict seccomp mode, which only allows read, write, " "exit_group and sigreturn!" msgstr "" #: ../include/utils/error.h:46 #, c-format msgid "Unknown error when get filter: %s" msgstr "" #: ../include/utils/error.h:47 #, c-format msgid "Unknown error when seizing process: %s" msgstr "" #: ../include/utils/error.h:48 msgid "The process to seize does not exist" msgstr "" #: ../include/utils/error.h:54 msgid "perhaps seizing kthread or lacking CAP_SYS_PTRACE" msgstr "" #: ../include/utils/error.h:56 msgid "Run with CAP_SYS_ADMIN capability to fetch seccomp filters" msgstr "" #: ../include/utils/error.h:58 msgid "Run with CAP_SYS_PTRACE capability to seize a foreign process" msgstr "" #: ../include/utils/error.h:60 msgid "32-bit tracer can not ptrace 64-bit tracee" msgstr "" #: ../include/utils/error.h:62 #, c-format msgid "libseccomp does not support the tracee's arch (%#x)" msgstr "" #: ../include/utils/error.h:64 msgid "perhaps lacking CAP_SYS_ADMIN or ceccomp is in seccomp mode" msgstr "" #: ../include/utils/error.h:66 msgid "PTRACE_GET_SECCOMP_FILTER is not supported on your system" msgstr "" #: ../include/utils/error.h:68 msgid "" "Ceccomp is in seccomp mode, fetching seccomp filters of other process is not " "permitted" msgstr "" #: ../include/utils/error.h:71 msgid "" "perhaps PTRACE_GET_SECCOMP_FILTER is not supported or no seccomp filter in " "target process" msgstr "" #: ../include/utils/error.h:75 msgid "Invalid color mode" msgstr "" #: ../include/utils/error.h:76 msgid "Invalid format mode" msgstr "" #: ../include/utils/error.h:77 msgid "Invalid number" msgstr "" #: ../include/utils/error.h:78 #, c-format msgid "Unable to open file %s: %s" msgstr "" #: ../include/utils/error.h:81 #, c-format msgid "Reading input failed: %s" msgstr "" #: ../include/utils/error.h:83 #, c-format msgid "Found '\\0' at file offset %lu, perhaps it's not a text file?" msgstr "" #: ../include/utils/error.h:85 msgid "No line break in source file, perhaps it's not a text file?" msgstr "" #: ../include/utils/error.h:87 #, c-format msgid "Line %u has more than %u bytes, perhaps the input is not a text file?" msgstr "" #: ../include/utils/error.h:88 msgid "The input file is greater than 1 MiB!" msgstr "" #: ../include/utils/error.h:90 msgid "Found more than 4096 lines of text, perhaps it's not for ceccomp?" msgstr "" #: ../include/utils/error.h:93 msgid "Can not find label declaration" msgstr "" #: ../include/utils/error.h:96 msgid "Unexpected token" msgstr "" #: ../include/utils/error.h:97 msgid "Found duplicated label declaration" msgstr "" #: ../include/utils/error.h:98 msgid "Input number exceeds 32-bit range" msgstr "" #: ../include/utils/error.h:100 msgid "Expect operator" msgstr "" #: ../include/utils/error.h:101 msgid "Expect rvalue" msgstr "" #: ../include/utils/error.h:102 msgid "Expect return value" msgstr "" #: ../include/utils/error.h:104 msgid "Expect number" msgstr "" #: ../include/utils/error.h:105 msgid "Expect parenthesis" msgstr "" #: ../include/utils/error.h:106 msgid "Expect bracket" msgstr "" #: ../include/utils/error.h:107 msgid "Expect comparator" msgstr "" #: ../include/utils/error.h:108 msgid "Expect label" msgstr "" #: ../include/utils/error.h:109 msgid "Expect valid syscall name" msgstr "" #: ../include/utils/error.h:111 msgid "" "Architecture token does not match any libseccomp arch, perhaps system " "libseccomp is too old" msgstr "" #: ../include/utils/error.h:115 msgid "Expect 'goto'" msgstr "" #: ../include/utils/error.h:116 msgid "Expect '$A'" msgstr "" #: ../include/utils/error.h:117 msgid "Expect 'else'" msgstr "" #: ../include/utils/error.h:120 msgid "Rvalue should be '$A'" msgstr "" #: ../include/utils/error.h:121 msgid "Rvalue can not be '$A'" msgstr "" #: ../include/utils/error.h:122 msgid "Rvalue can not be '$X'" msgstr "" #: ../include/utils/error.h:124 msgid "Rvalue should be '$A' or '$X'" msgstr "" #: ../include/utils/error.h:125 msgid "Rvalue should be '$X' or number" msgstr "" #: ../include/utils/error.h:126 msgid "Operator should be '='" msgstr "" #: ../include/utils/error.h:127 msgid "Lvalue should be '$A'" msgstr "" #: ../include/utils/error.h:129 msgid "seccomp_data load offset must be 4-byte aligned" msgstr "" #: ../include/utils/error.h:131 msgid "seccomp_data load offset greater than the struct" msgstr "" #: ../include/utils/error.h:133 msgid "Args index out of range (0-5)" msgstr "" #: ../include/utils/error.h:134 msgid "Mem index out of range (0-15)" msgstr "" #: ../include/utils/error.h:135 msgid "Accessing uninitialized mem" msgstr "" #: ../include/utils/error.h:136 msgid "Dividing by zero" msgstr "" #: ../include/utils/error.h:137 msgid "Left or right shifting more than 32 bits" msgstr "" #: ../include/utils/error.h:139 msgid "Data carried by return motion exceeds 0xffff" msgstr "" #: ../include/utils/error.h:140 msgid "JT is larger than 0xff" msgstr "" #: ../include/utils/error.h:141 msgid "JT must be positive" msgstr "" #: ../include/utils/error.h:142 msgid "JF is larger than 0xff" msgstr "" #: ../include/utils/error.h:143 msgid "JF must be positive" msgstr "" #: ../include/utils/error.h:144 msgid "JT out of filters" msgstr "" #: ../include/utils/error.h:145 msgid "JF out of filters" msgstr "" #: ../include/utils/error.h:146 msgid "JA out of filters" msgstr "" #: ../include/utils/error.h:148 msgid "BPF filters must end with return" msgstr "" #: ../include/utils/error.h:149 msgid "The input does not contain any valid statement" msgstr "" #: ../include/utils/error.h:151 msgid "Invalid or unknown operation" msgstr ""