criu-3.15-7.el9
- add gating tests - Related: #1970747 Signed-off-by: Jindrich Novy <jnovy@redhat.com>
This commit is contained in:
parent
a510146207
commit
46e263795c
52
.gitignore
vendored
52
.gitignore
vendored
@ -1,51 +1 @@
|
|||||||
/crtools-0.3.tar.bz2
|
/*.tar.gz
|
||||||
/crtools-0.4.tar.bz2
|
|
||||||
/criu-0.5.tar.bz2
|
|
||||||
/criu-0.6.tar.bz2
|
|
||||||
/criu-0.7.tar.bz2
|
|
||||||
/criu-0.8.tar.bz2
|
|
||||||
/criu-1.0.tar.bz2
|
|
||||||
/criu-1.1.tar.bz2
|
|
||||||
/criu-1.2.tar.bz2
|
|
||||||
/criu-1.3.tar.bz2
|
|
||||||
/criu-1.3.1.tar.bz2
|
|
||||||
/criu-1.4.tar.bz2
|
|
||||||
/criu-1.5.tar.bz2
|
|
||||||
/criu-1.5.1.tar.bz2
|
|
||||||
/criu-1.5.2.tar.bz2
|
|
||||||
/criu-1.6.tar.bz2
|
|
||||||
/criu-1.6.1.tar.bz2
|
|
||||||
/criu-1.7.tar.bz2
|
|
||||||
/criu-1.7.2.tar.bz2
|
|
||||||
/criu-1.8.tar.bz2
|
|
||||||
/criu-2.0.tar.bz2
|
|
||||||
/criu-2.1.tar.bz2
|
|
||||||
/criu-2.2.tar.bz2
|
|
||||||
/criu-2.3.tar.bz2
|
|
||||||
/criu-2.4.tar.bz2
|
|
||||||
/criu-2.5.tar.bz2
|
|
||||||
/criu-2.6.tar.bz2
|
|
||||||
/criu-2.7.tar.bz2
|
|
||||||
/criu-2.8.tar.bz2
|
|
||||||
/criu-2.9.tar.bz2
|
|
||||||
/criu-2.10.tar.bz2
|
|
||||||
/criu-2.11.tar.bz2
|
|
||||||
/criu-2.11.1.tar.bz2
|
|
||||||
/criu-2.12.tar.bz2
|
|
||||||
/criu-3.0.tar.bz2
|
|
||||||
/criu-3.1.tar.bz2
|
|
||||||
/criu-3.2.1.tar.bz2
|
|
||||||
/criu-3.3.tar.bz2
|
|
||||||
/criu-3.4.tar.bz2
|
|
||||||
/criu-3.5.tar.bz2
|
|
||||||
/criu-3.6.tar.bz2
|
|
||||||
/criu-3.7.tar.bz2
|
|
||||||
/criu-3.8.tar.bz2
|
|
||||||
/criu-3.8.1.tar.bz2
|
|
||||||
/criu-3.9.tar.bz2
|
|
||||||
/criu-3.10.tar.bz2
|
|
||||||
/criu-3.11.tar.bz2
|
|
||||||
/criu-3.12.tar.bz2
|
|
||||||
/criu-3.13.tar.bz2
|
|
||||||
/criu-3.14.tar.bz2
|
|
||||||
/criu-3.15.tar.bz2
|
|
||||||
|
@ -1,11 +0,0 @@
|
|||||||
--- a/criu/aio.c 2015-07-01 11:02:50.360004543 -0400
|
|
||||||
+++ b/criu/aio.c 2015-07-01 11:03:33.099757812 -0400
|
|
||||||
@@ -74,7 +74,7 @@
|
|
||||||
* up back to the k_max_reqs.
|
|
||||||
*/
|
|
||||||
|
|
||||||
- return (k_max_reqs - 2) / 2;
|
|
||||||
+ return (k_max_reqs - 2);
|
|
||||||
}
|
|
||||||
|
|
||||||
unsigned long aio_rings_args_size(struct vm_area_list *vmas)
|
|
373
compel.1
373
compel.1
@ -1,373 +0,0 @@
|
|||||||
'\" t
|
|
||||||
.\" Title: compel
|
|
||||||
.\" Author: [see the "AUTHOR" section]
|
|
||||||
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
|
|
||||||
.\" Date: 09/12/2019
|
|
||||||
.\" Manual: CRIU Manual
|
|
||||||
.\" Source: criu 3.13
|
|
||||||
.\" Language: English
|
|
||||||
.\"
|
|
||||||
.TH "COMPEL" "1" "09/12/2019" "criu 3\&.13" "CRIU Manual"
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" * Define some portability stuff
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" http://bugs.debian.org/507673
|
|
||||||
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.ie \n(.g .ds Aq \(aq
|
|
||||||
.el .ds Aq '
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" * (re)Define some macros
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" toupper - uppercase a string (locale-aware)
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de toupper
|
|
||||||
.tr aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ
|
|
||||||
\\$*
|
|
||||||
.tr aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" SH-xref - format a cross-reference to an SH section
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de SH-xref
|
|
||||||
.ie n \{\
|
|
||||||
.\}
|
|
||||||
.toupper \\$*
|
|
||||||
.el \{\
|
|
||||||
\\$*
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" SH - level-one heading that works better for non-TTY output
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de1 SH
|
|
||||||
.\" put an extra blank line of space above the head in non-TTY output
|
|
||||||
.if t \{\
|
|
||||||
.sp 1
|
|
||||||
.\}
|
|
||||||
.sp \\n[PD]u
|
|
||||||
.nr an-level 1
|
|
||||||
.set-an-margin
|
|
||||||
.nr an-prevailing-indent \\n[IN]
|
|
||||||
.fi
|
|
||||||
.in \\n[an-margin]u
|
|
||||||
.ti 0
|
|
||||||
.HTML-TAG ".NH \\n[an-level]"
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
\." make the size of the head bigger
|
|
||||||
.ps +3
|
|
||||||
.ft B
|
|
||||||
.ne (2v + 1u)
|
|
||||||
.ie n \{\
|
|
||||||
.\" if n (TTY output), use uppercase
|
|
||||||
.toupper \\$*
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
.nr an-break-flag 0
|
|
||||||
.\" if not n (not TTY), use normal case (not uppercase)
|
|
||||||
\\$1
|
|
||||||
.in \\n[an-margin]u
|
|
||||||
.ti 0
|
|
||||||
.\" if not n (not TTY), put a border/line under subheading
|
|
||||||
.sp -.6
|
|
||||||
\l'\n(.lu'
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" SS - level-two heading that works better for non-TTY output
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de1 SS
|
|
||||||
.sp \\n[PD]u
|
|
||||||
.nr an-level 1
|
|
||||||
.set-an-margin
|
|
||||||
.nr an-prevailing-indent \\n[IN]
|
|
||||||
.fi
|
|
||||||
.in \\n[IN]u
|
|
||||||
.ti \\n[SN]u
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.ps \\n[PS-SS]u
|
|
||||||
\." make the size of the head bigger
|
|
||||||
.ps +2
|
|
||||||
.ft B
|
|
||||||
.ne (2v + 1u)
|
|
||||||
.if \\n[.$] \&\\$*
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" BB/EB - put background/screen (filled box) around block of text
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de BB
|
|
||||||
.if t \{\
|
|
||||||
.sp -.5
|
|
||||||
.br
|
|
||||||
.in +2n
|
|
||||||
.ll -2n
|
|
||||||
.gcolor red
|
|
||||||
.di BX
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.de EB
|
|
||||||
.if t \{\
|
|
||||||
.if "\\$2"adjust-for-leading-newline" \{\
|
|
||||||
.sp -1
|
|
||||||
.\}
|
|
||||||
.br
|
|
||||||
.di
|
|
||||||
.in
|
|
||||||
.ll
|
|
||||||
.gcolor
|
|
||||||
.nr BW \\n(.lu-\\n(.i
|
|
||||||
.nr BH \\n(dn+.5v
|
|
||||||
.ne \\n(BHu+.5v
|
|
||||||
.ie "\\$2"adjust-for-leading-newline" \{\
|
|
||||||
\M[\\$1]\h'1n'\v'+.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[]
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
\M[\\$1]\h'1n'\v'-.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[]
|
|
||||||
.\}
|
|
||||||
.in 0
|
|
||||||
.sp -.5v
|
|
||||||
.nf
|
|
||||||
.BX
|
|
||||||
.in
|
|
||||||
.sp .5v
|
|
||||||
.fi
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" BM/EM - put colored marker in margin next to block of text
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de BM
|
|
||||||
.if t \{\
|
|
||||||
.br
|
|
||||||
.ll -2n
|
|
||||||
.gcolor red
|
|
||||||
.di BX
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.de EM
|
|
||||||
.if t \{\
|
|
||||||
.br
|
|
||||||
.di
|
|
||||||
.ll
|
|
||||||
.gcolor
|
|
||||||
.nr BH \\n(dn
|
|
||||||
.ne \\n(BHu
|
|
||||||
\M[\\$1]\D'P -.75n 0 0 \\n(BHu -(\\n[.i]u - \\n(INu - .75n) 0 0 -\\n(BHu'\M[]
|
|
||||||
.in 0
|
|
||||||
.nf
|
|
||||||
.BX
|
|
||||||
.in
|
|
||||||
.fi
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" * set default formatting
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" * MAIN CONTENT STARTS HERE *
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.SH "Name"
|
|
||||||
compel \- Execute parasitic code within another process\&.
|
|
||||||
.SH "Synopsis"
|
|
||||||
.sp
|
|
||||||
\fBcompel\fR \fIhgen\fR [\fIoption\fR \&...]
|
|
||||||
.sp
|
|
||||||
\fBcompel\fR \fIplugins\fR [\fIPLUGIN_NAME\fR \&...]
|
|
||||||
.sp
|
|
||||||
\fBcompel\fR [\fI\-\-compat\fR] \fIincludes\fR | \fIcflags\fR | \fIldflags\fR
|
|
||||||
.sp
|
|
||||||
\fBcompel\fR [\fI\-\-compat\fR] [\fI\-\-static\fR] \fIlibs\fR
|
|
||||||
.SH "DESCRIPTION"
|
|
||||||
.sp
|
|
||||||
\fBcompel\fR is a utility to execute arbitrary code, also called parasite code, in the context of a foreign process\&. The parasitic code, once compiled with compel flags and packed, can be executed in the context of other tasks\&. Currently there is only one way to load the parasitic blob into victim task using libcompel\&.a, called c\-header\&.
|
|
||||||
.SH "ARGUMENTS"
|
|
||||||
.SS "Positional Arguments"
|
|
||||||
.PP
|
|
||||||
\fBhgen\fR
|
|
||||||
.RS 4
|
|
||||||
create a header from the \&.po file, which is the parasite binary\&.
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fBplugins\fR
|
|
||||||
.RS 4
|
|
||||||
prints the plugins available\&.
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fBldflags\fR
|
|
||||||
.RS 4
|
|
||||||
prints the ldflags available to compel during linking of parasite code\&.
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fBcflags\fR
|
|
||||||
.RS 4
|
|
||||||
prints the compel cflags to be used during compilation of parasitic code\&.
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fBincludes\fR
|
|
||||||
.RS 4
|
|
||||||
prints list of standard include directories\&.
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fBlibs\fR
|
|
||||||
.RS 4
|
|
||||||
prints list of static or dynamic libraries that compel can link with\&.
|
|
||||||
.RE
|
|
||||||
.SH "OPTIONS"
|
|
||||||
.PP
|
|
||||||
\fB\-f\fR, \fB\-\-file\fR \fIFILE\fR
|
|
||||||
.RS 4
|
|
||||||
Path to the binary file,
|
|
||||||
\fIFILE\fR, which
|
|
||||||
\fBcompel\fR
|
|
||||||
must turn into a header
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fB\-o\fR, \fB\-\-output\fR \fIFILE\fR
|
|
||||||
.RS 4
|
|
||||||
Path to the header file,
|
|
||||||
\fIFILE\fR, where compel must write the resulting header\&.
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fB\-p\fR, \fB\-\-prefix\fR \fINAME\fR
|
|
||||||
.RS 4
|
|
||||||
Specify prefix for var names
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fB\-l\fR, \fB\-\-log\-level\fR \fINUM\fR
|
|
||||||
.RS 4
|
|
||||||
Default log level of compel\&.
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fB\-h\fR, \fB\-\-help\fR
|
|
||||||
.RS 4
|
|
||||||
Prints usage and exits\&.
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fB\-V\fR, \fB\-\-version\fR
|
|
||||||
.RS 4
|
|
||||||
Prints version number of compel\&.
|
|
||||||
.RE
|
|
||||||
.SH "SOURCE EXAMPLES"
|
|
||||||
.SS "Parasitic Code"
|
|
||||||
.sp
|
|
||||||
\fB#include <compel/plugins/std\&.h>\fR
|
|
||||||
.sp
|
|
||||||
\fBint parasite_trap_cmd(int cmd, void *args);\fR //gets called by compel_run_in_thread()
|
|
||||||
.sp
|
|
||||||
\fBint parasite_daemon_cmd(int cmd, void *arg);\fR // gets called by compel_rpc_call() and compel_rpc_call_sync()
|
|
||||||
.sp
|
|
||||||
\fBvoid parasite_cleanup(void);\fR //gets called on parasite unload by compel_cure()
|
|
||||||
.SS "Infecting code"
|
|
||||||
.sp
|
|
||||||
The parasitic code is compiled and converted to a header using \fBcompel\fR, and included here\&.
|
|
||||||
.sp
|
|
||||||
\fB#include <compel/compel\&.h>\fR
|
|
||||||
.sp
|
|
||||||
\fB#include "parasite\&.h"\fR
|
|
||||||
.sp
|
|
||||||
Following steps are perfomed to infect the victim process:
|
|
||||||
.sp
|
|
||||||
.RS 4
|
|
||||||
.ie n \{\
|
|
||||||
\h'-04'\(bu\h'+03'\c
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
.sp -1
|
|
||||||
.IP \(bu 2.3
|
|
||||||
.\}
|
|
||||||
stop the task:
|
|
||||||
\fBint compel_stop_task(int pid);\fR
|
|
||||||
.RE
|
|
||||||
.sp
|
|
||||||
.RS 4
|
|
||||||
.ie n \{\
|
|
||||||
\h'-04'\(bu\h'+03'\c
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
.sp -1
|
|
||||||
.IP \(bu 2.3
|
|
||||||
.\}
|
|
||||||
prepare infection handler:
|
|
||||||
\fBstruct parasite_ctl *compel_prepare(int pid);\fR
|
|
||||||
.RE
|
|
||||||
.sp
|
|
||||||
.RS 4
|
|
||||||
.ie n \{\
|
|
||||||
\h'-04'\(bu\h'+03'\c
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
.sp -1
|
|
||||||
.IP \(bu 2.3
|
|
||||||
.\}
|
|
||||||
execute system call:
|
|
||||||
\fBint compel_syscall(ctl, int syscall_nr, long *ret, int arg \&...);\fR
|
|
||||||
.RE
|
|
||||||
.sp
|
|
||||||
.RS 4
|
|
||||||
.ie n \{\
|
|
||||||
\h'-04'\(bu\h'+03'\c
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
.sp -1
|
|
||||||
.IP \(bu 2.3
|
|
||||||
.\}
|
|
||||||
infect victim:
|
|
||||||
\fBint compel_infect(ctl, nr_thread, size_of_args_area);\fR
|
|
||||||
.RE
|
|
||||||
.sp
|
|
||||||
.RS 4
|
|
||||||
.ie n \{\
|
|
||||||
\h'-04'\(bu\h'+03'\c
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
.sp -1
|
|
||||||
.IP \(bu 2.3
|
|
||||||
.\}
|
|
||||||
cure the victim:
|
|
||||||
\fBint compel_cure(ctl);\fR
|
|
||||||
//ctl pointer is freed by this call
|
|
||||||
.RE
|
|
||||||
.sp
|
|
||||||
.RS 4
|
|
||||||
.ie n \{\
|
|
||||||
\h'-04'\(bu\h'+03'\c
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
.sp -1
|
|
||||||
.IP \(bu 2.3
|
|
||||||
.\}
|
|
||||||
Resume victim:
|
|
||||||
\fBint compel_resume_task(pid, orig_state, state);\fR
|
|
||||||
.RE
|
|
||||||
.sp
|
|
||||||
\fBctl\fR must be configured with blob information by calling \fBPREFIX_setup_c_header()\fR, with ctl as its argument\&. \fBPREFIX\fR is the argument given to \fB\-p\fR when calling hgen, else it is deduced from file name\&.
|
|
||||||
.SH "EXAMPLES"
|
|
||||||
.sp
|
|
||||||
To generate a header file(\&.h) from a parasite binary file(\&.po) use:
|
|
||||||
.sp
|
|
||||||
.if n \{\
|
|
||||||
.RS 4
|
|
||||||
.\}
|
|
||||||
.fam C
|
|
||||||
.ps -1
|
|
||||||
.nf
|
|
||||||
.BB lightgray
|
|
||||||
compel hgen \-f parasite\&.po \-o parasite\&.h
|
|
||||||
.EB lightgray
|
|
||||||
.fi
|
|
||||||
.fam
|
|
||||||
.ps +1
|
|
||||||
.if n \{\
|
|
||||||
.RE
|
|
||||||
.\}
|
|
||||||
.sp
|
|
||||||
\fIparasite\&.po\fR file is obtained by compiling the parasite source with compel flags and linking it with the compel plugins\&.
|
|
||||||
.SH "AUTHOR"
|
|
||||||
.sp
|
|
||||||
The CRIU team\&.
|
|
235
crit.1
235
crit.1
@ -1,235 +0,0 @@
|
|||||||
'\" t
|
|
||||||
.\" Title: crit
|
|
||||||
.\" Author: [see the "AUTHOR" section]
|
|
||||||
.\" Generator: DocBook XSL Stylesheets vsnapshot <http://docbook.sf.net/>
|
|
||||||
.\" Date: 04/23/2019
|
|
||||||
.\" Manual: CRIU Manual
|
|
||||||
.\" Source: criu 3.12
|
|
||||||
.\" Language: English
|
|
||||||
.\"
|
|
||||||
.TH "CRIT" "1" "04/23/2019" "criu 3\&.12" "CRIU Manual"
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" * Define some portability stuff
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" http://bugs.debian.org/507673
|
|
||||||
.\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.ie \n(.g .ds Aq \(aq
|
|
||||||
.el .ds Aq '
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" * (re)Define some macros
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" toupper - uppercase a string (locale-aware)
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de toupper
|
|
||||||
.tr aAbBcCdDeEfFgGhHiIjJkKlLmMnNoOpPqQrRsStTuUvVwWxXyYzZ
|
|
||||||
\\$*
|
|
||||||
.tr aabbccddeeffgghhiijjkkllmmnnooppqqrrssttuuvvwwxxyyzz
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" SH-xref - format a cross-reference to an SH section
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de SH-xref
|
|
||||||
.ie n \{\
|
|
||||||
.\}
|
|
||||||
.toupper \\$*
|
|
||||||
.el \{\
|
|
||||||
\\$*
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" SH - level-one heading that works better for non-TTY output
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de1 SH
|
|
||||||
.\" put an extra blank line of space above the head in non-TTY output
|
|
||||||
.if t \{\
|
|
||||||
.sp 1
|
|
||||||
.\}
|
|
||||||
.sp \\n[PD]u
|
|
||||||
.nr an-level 1
|
|
||||||
.set-an-margin
|
|
||||||
.nr an-prevailing-indent \\n[IN]
|
|
||||||
.fi
|
|
||||||
.in \\n[an-margin]u
|
|
||||||
.ti 0
|
|
||||||
.HTML-TAG ".NH \\n[an-level]"
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
\." make the size of the head bigger
|
|
||||||
.ps +3
|
|
||||||
.ft B
|
|
||||||
.ne (2v + 1u)
|
|
||||||
.ie n \{\
|
|
||||||
.\" if n (TTY output), use uppercase
|
|
||||||
.toupper \\$*
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
.nr an-break-flag 0
|
|
||||||
.\" if not n (not TTY), use normal case (not uppercase)
|
|
||||||
\\$1
|
|
||||||
.in \\n[an-margin]u
|
|
||||||
.ti 0
|
|
||||||
.\" if not n (not TTY), put a border/line under subheading
|
|
||||||
.sp -.6
|
|
||||||
\l'\n(.lu'
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" SS - level-two heading that works better for non-TTY output
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de1 SS
|
|
||||||
.sp \\n[PD]u
|
|
||||||
.nr an-level 1
|
|
||||||
.set-an-margin
|
|
||||||
.nr an-prevailing-indent \\n[IN]
|
|
||||||
.fi
|
|
||||||
.in \\n[IN]u
|
|
||||||
.ti \\n[SN]u
|
|
||||||
.it 1 an-trap
|
|
||||||
.nr an-no-space-flag 1
|
|
||||||
.nr an-break-flag 1
|
|
||||||
.ps \\n[PS-SS]u
|
|
||||||
\." make the size of the head bigger
|
|
||||||
.ps +2
|
|
||||||
.ft B
|
|
||||||
.ne (2v + 1u)
|
|
||||||
.if \\n[.$] \&\\$*
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" BB/EB - put background/screen (filled box) around block of text
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de BB
|
|
||||||
.if t \{\
|
|
||||||
.sp -.5
|
|
||||||
.br
|
|
||||||
.in +2n
|
|
||||||
.ll -2n
|
|
||||||
.gcolor red
|
|
||||||
.di BX
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.de EB
|
|
||||||
.if t \{\
|
|
||||||
.if "\\$2"adjust-for-leading-newline" \{\
|
|
||||||
.sp -1
|
|
||||||
.\}
|
|
||||||
.br
|
|
||||||
.di
|
|
||||||
.in
|
|
||||||
.ll
|
|
||||||
.gcolor
|
|
||||||
.nr BW \\n(.lu-\\n(.i
|
|
||||||
.nr BH \\n(dn+.5v
|
|
||||||
.ne \\n(BHu+.5v
|
|
||||||
.ie "\\$2"adjust-for-leading-newline" \{\
|
|
||||||
\M[\\$1]\h'1n'\v'+.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[]
|
|
||||||
.\}
|
|
||||||
.el \{\
|
|
||||||
\M[\\$1]\h'1n'\v'-.5v'\D'P \\n(BWu 0 0 \\n(BHu -\\n(BWu 0 0 -\\n(BHu'\M[]
|
|
||||||
.\}
|
|
||||||
.in 0
|
|
||||||
.sp -.5v
|
|
||||||
.nf
|
|
||||||
.BX
|
|
||||||
.in
|
|
||||||
.sp .5v
|
|
||||||
.fi
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.\" BM/EM - put colored marker in margin next to block of text
|
|
||||||
.\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
||||||
.de BM
|
|
||||||
.if t \{\
|
|
||||||
.br
|
|
||||||
.ll -2n
|
|
||||||
.gcolor red
|
|
||||||
.di BX
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.de EM
|
|
||||||
.if t \{\
|
|
||||||
.br
|
|
||||||
.di
|
|
||||||
.ll
|
|
||||||
.gcolor
|
|
||||||
.nr BH \\n(dn
|
|
||||||
.ne \\n(BHu
|
|
||||||
\M[\\$1]\D'P -.75n 0 0 \\n(BHu -(\\n[.i]u - \\n(INu - .75n) 0 0 -\\n(BHu'\M[]
|
|
||||||
.in 0
|
|
||||||
.nf
|
|
||||||
.BX
|
|
||||||
.in
|
|
||||||
.fi
|
|
||||||
.\}
|
|
||||||
..
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" * set default formatting
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.\" * MAIN CONTENT STARTS HERE *
|
|
||||||
.\" -----------------------------------------------------------------
|
|
||||||
.SH "Name"
|
|
||||||
crit \- CRiu Image Tool
|
|
||||||
.SH "Synopsis"
|
|
||||||
.sp
|
|
||||||
\fBcrit\fR \fIdecode\fR [\-h] [\-i IN] [\-o OUT] [\-\-pretty]
|
|
||||||
.sp
|
|
||||||
\fBcrit\fR \fIencode\fR [\-h] [\-i IN] [\-o OUT]
|
|
||||||
.sp
|
|
||||||
\fBcrit\fR \fIinfo\fR [\-h] in
|
|
||||||
.sp
|
|
||||||
\fBcrit\fR \fIx\fR [\-h] dir {ps,fds,mems}
|
|
||||||
.sp
|
|
||||||
\fBcrit\fR \fIshow\fR [\-h] in
|
|
||||||
.SH "DESCRIPTION"
|
|
||||||
.sp
|
|
||||||
\fBcrit\fR is a feature\-rich replacement for existing \fBcriu\fR show\&.
|
|
||||||
.SH "ARGUMENTS"
|
|
||||||
.SS "Positional Arguments"
|
|
||||||
.PP
|
|
||||||
\fBdecode\fR
|
|
||||||
.RS 4
|
|
||||||
convert
|
|
||||||
\fBcriu\fR
|
|
||||||
image from binary type JSON
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fBencode\fR
|
|
||||||
.RS 4
|
|
||||||
convert
|
|
||||||
\fBcriu\fR
|
|
||||||
image from JSON type to binary
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fBinfo\fR
|
|
||||||
.RS 4
|
|
||||||
show info about image
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fBx\fR
|
|
||||||
.RS 4
|
|
||||||
explore image directory
|
|
||||||
.RE
|
|
||||||
.PP
|
|
||||||
\fBshow\fR
|
|
||||||
.RS 4
|
|
||||||
convert
|
|
||||||
\fBcriu\fR
|
|
||||||
image from binary to human\-readable JSON
|
|
||||||
.RE
|
|
||||||
.SS "Optional Arguments"
|
|
||||||
.PP
|
|
||||||
\fB\-h\fR, \fB\-\-help\fR
|
|
||||||
.RS 4
|
|
||||||
Print some help and exit
|
|
||||||
.RE
|
|
||||||
.SH "SEE ALSO"
|
|
||||||
.sp
|
|
||||||
criu(8)
|
|
||||||
.SH "AUTHOR"
|
|
||||||
.sp
|
|
||||||
The CRIU team
|
|
93
criu.spec
93
criu.spec
@ -1,10 +1,5 @@
|
|||||||
%if 0%{?fedora} >= 27 || 0%{?rhel} > 7
|
|
||||||
%global py_prefix python3
|
%global py_prefix python3
|
||||||
%global py_binary %{py_prefix}
|
%global py_binary %{py_prefix}
|
||||||
%else
|
|
||||||
%global py_prefix python
|
|
||||||
%global py_binary python2
|
|
||||||
%endif
|
|
||||||
|
|
||||||
# With annobin enabled, CRIU does not work anymore. It seems CRIU's
|
# With annobin enabled, CRIU does not work anymore. It seems CRIU's
|
||||||
# parasite code breaks if annobin is enabled.
|
# parasite code breaks if annobin is enabled.
|
||||||
@ -12,45 +7,26 @@
|
|||||||
|
|
||||||
Name: criu
|
Name: criu
|
||||||
Version: 3.15
|
Version: 3.15
|
||||||
Release: 6%{?dist}
|
Release: 7%{?dist}
|
||||||
Provides: crtools = %{version}-%{release}
|
Provides: crtools = %{version}-%{release}
|
||||||
Obsoletes: crtools <= 1.0-2
|
Obsoletes: crtools <= 1.0-2
|
||||||
Summary: Tool for Checkpoint/Restore in User-space
|
Summary: Tool for Checkpoint/Restore in User-space
|
||||||
License: GPLv2
|
License: GPLv2
|
||||||
URL: http://criu.org/
|
URL: http://criu.org/
|
||||||
Source0: http://download.openvz.org/criu/criu-%{version}.tar.bz2
|
Source0: http://download.openvz.org/criu/criu-%{version}.tar.bz2
|
||||||
|
Source1: criu-tmpfiles.conf
|
||||||
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
||||||
BuildRequires: perl
|
|
||||||
# RHEL has no asciidoc; take man-page from Fedora 26
|
|
||||||
# zcat /usr/share/man/man8/criu.8.gz > criu.8
|
|
||||||
Source1: criu.8
|
|
||||||
Source2: crit.1
|
|
||||||
Source3: compel.1
|
|
||||||
# The patch aio-fix.patch is needed as RHEL7
|
|
||||||
# doesn't do "nr_events *= 2" in ioctx_alloc().
|
|
||||||
Patch100: aio-fix.patch
|
|
||||||
%endif
|
|
||||||
|
|
||||||
Source4: criu-tmpfiles.conf
|
|
||||||
|
|
||||||
BuildRequires: gcc
|
BuildRequires: gcc
|
||||||
BuildRequires: systemd
|
BuildRequires: systemd
|
||||||
BuildRequires: libnet-devel
|
BuildRequires: libnet-devel
|
||||||
BuildRequires: protobuf-devel protobuf-c-devel %{py_prefix}-devel libnl3-devel libcap-devel
|
BuildRequires: protobuf-devel protobuf-c-devel %{py_prefix}-devel libnl3-devel libcap-devel
|
||||||
%if 0%{?fedora} || 0%{?rhel} > 7
|
|
||||||
BuildRequires: asciidoc xmlto
|
BuildRequires: asciidoc xmlto
|
||||||
BuildRequires: perl-interpreter
|
BuildRequires: perl-interpreter
|
||||||
BuildRequires: libselinux-devel
|
BuildRequires: libselinux-devel
|
||||||
BuildRequires: gnutls-devel
|
BuildRequires: gnutls-devel
|
||||||
|
BuildRequires: nftables-devel
|
||||||
|
BuildRequires: make
|
||||||
# Checkpointing containers with a tmpfs requires tar
|
# Checkpointing containers with a tmpfs requires tar
|
||||||
Recommends: tar
|
Recommends: tar
|
||||||
%if 0%{?fedora}
|
|
||||||
BuildRequires: nftables-devel
|
|
||||||
BuildRequires: libbsd-devel
|
|
||||||
%endif
|
|
||||||
%endif
|
|
||||||
BuildRequires: make
|
|
||||||
|
|
||||||
# user-space and kernel changes are only available for x86_64, arm,
|
# user-space and kernel changes are only available for x86_64, arm,
|
||||||
# ppc64le, aarch64 and s390x
|
# ppc64le, aarch64 and s390x
|
||||||
@ -62,7 +38,6 @@ criu is the user-space part of Checkpoint/Restore in User-space
|
|||||||
(CRIU), a project to implement checkpoint/restore functionality for
|
(CRIU), a project to implement checkpoint/restore functionality for
|
||||||
Linux in user-space.
|
Linux in user-space.
|
||||||
|
|
||||||
%if 0%{?fedora} || 0%{?rhel} > 8
|
|
||||||
%package devel
|
%package devel
|
||||||
Summary: Header files and libraries for %{name}
|
Summary: Header files and libraries for %{name}
|
||||||
Requires: %{name} = %{version}-%{release}
|
Requires: %{name} = %{version}-%{release}
|
||||||
@ -76,18 +51,12 @@ Requires: %{name} = %{version}-%{release}
|
|||||||
|
|
||||||
%description libs
|
%description libs
|
||||||
This package contains the libraries for %{name}
|
This package contains the libraries for %{name}
|
||||||
%endif
|
|
||||||
|
|
||||||
%package -n %{py_prefix}-%{name}
|
%package -n %{py_prefix}-%{name}
|
||||||
%{?python_provide:%python_provide %{py_prefix}-%{name}}
|
%{?python_provide:%python_provide %{py_prefix}-%{name}}
|
||||||
Summary: Python bindings for %{name}
|
Summary: Python bindings for %{name}
|
||||||
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
||||||
Requires: protobuf-python
|
|
||||||
Requires: %{name} = %{version}-%{release} %{py_prefix}-ipaddr
|
|
||||||
%else
|
|
||||||
Requires: %{py_prefix}-protobuf
|
Requires: %{py_prefix}-protobuf
|
||||||
Obsoletes: python2-criu < 3.10-1
|
Obsoletes: python2-criu < 3.10-1
|
||||||
%endif
|
|
||||||
|
|
||||||
%description -n %{py_prefix}-%{name}
|
%description -n %{py_prefix}-%{name}
|
||||||
%{py_prefix}-%{name} contains Python bindings for %{name}.
|
%{py_prefix}-%{name} contains Python bindings for %{name}.
|
||||||
@ -100,69 +69,35 @@ Requires: %{py_prefix}-%{name} = %{version}-%{release}
|
|||||||
crit is a tool designed to decode CRIU binary dump files and show
|
crit is a tool designed to decode CRIU binary dump files and show
|
||||||
their content in human-readable form.
|
their content in human-readable form.
|
||||||
|
|
||||||
|
|
||||||
%prep
|
%prep
|
||||||
%setup -q
|
%setup -q
|
||||||
|
|
||||||
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
||||||
%patch100 -p1
|
|
||||||
%endif
|
|
||||||
|
|
||||||
%build
|
%build
|
||||||
# This package calls LD directly without specifying the LTO plugins. Until
|
|
||||||
# that is fixed, disable LTO.
|
|
||||||
%define _lto_cflags %{nil}
|
|
||||||
|
|
||||||
# %{?_smp_mflags} does not work
|
# %{?_smp_mflags} does not work
|
||||||
# -fstack-protector breaks build
|
# -fstack-protector breaks build
|
||||||
CFLAGS+=`echo %{optflags} | sed -e 's,-fstack-protector\S*,,g'` make V=1 WERROR=0 PREFIX=%{_prefix} RUNDIR=/run/criu PYTHON=%{py_binary}
|
CFLAGS+=`echo %{optflags} | sed -e 's,-fstack-protector\S*,,g'` make V=1 WERROR=0 PREFIX=%{_prefix} RUNDIR=/run/criu PYTHON=%{py_binary}
|
||||||
%if 0%{?fedora} || 0%{?rhel} > 7
|
|
||||||
make docs V=1
|
make docs V=1
|
||||||
%endif
|
|
||||||
|
|
||||||
|
|
||||||
%install
|
%install
|
||||||
make install-criu DESTDIR=$RPM_BUILD_ROOT PREFIX=%{_prefix} LIBDIR=%{_libdir}
|
make install-criu DESTDIR=$RPM_BUILD_ROOT PREFIX=%{_prefix} LIBDIR=%{_libdir}
|
||||||
make install-lib DESTDIR=$RPM_BUILD_ROOT PREFIX=%{_prefix} LIBDIR=%{_libdir} PYTHON=%{py_binary}
|
make install-lib DESTDIR=$RPM_BUILD_ROOT PREFIX=%{_prefix} LIBDIR=%{_libdir} PYTHON=%{py_binary}
|
||||||
%if 0%{?fedora} || 0%{?rhel} > 7
|
|
||||||
# only install documentation on Fedora as it requires asciidoc,
|
|
||||||
# which is not available on RHEL7
|
|
||||||
make install-man DESTDIR=$RPM_BUILD_ROOT PREFIX=%{_prefix} LIBDIR=%{_libdir}
|
make install-man DESTDIR=$RPM_BUILD_ROOT PREFIX=%{_prefix} LIBDIR=%{_libdir}
|
||||||
%else
|
|
||||||
install -p -m 644 -D %{SOURCE1} $RPM_BUILD_ROOT%{_mandir}/man8/%{name}.8
|
|
||||||
install -p -m 644 -D %{SOURCE2} $RPM_BUILD_ROOT%{_mandir}/man1/crit.1
|
|
||||||
install -p -m 644 -D %{SOURCE3} $RPM_BUILD_ROOT%{_mandir}/man1/compel.1
|
|
||||||
%endif
|
|
||||||
|
|
||||||
mkdir -p %{buildroot}%{_tmpfilesdir}
|
mkdir -p %{buildroot}%{_tmpfilesdir}
|
||||||
install -m 0644 %{SOURCE4} %{buildroot}%{_tmpfilesdir}/%{name}.conf
|
install -m 0644 %{SOURCE1} %{buildroot}%{_tmpfilesdir}/%{name}.conf
|
||||||
install -d -m 0755 %{buildroot}/run/%{name}/
|
install -d -m 0755 %{buildroot}/run/%{name}/
|
||||||
|
|
||||||
%if 0%{?rhel} < 9
|
# remove static libs
|
||||||
# remove devel and libs packages
|
rm $RPM_BUILD_ROOT%{_libdir}/*.a
|
||||||
rm -rf $RPM_BUILD_ROOT%{_includedir}/criu
|
|
||||||
rm $RPM_BUILD_ROOT%{_libdir}/*.so*
|
|
||||||
rm -rf $RPM_BUILD_ROOT%{_libdir}/pkgconfig
|
|
||||||
%endif
|
|
||||||
%if 0%{?rhel}
|
|
||||||
rm -rf $RPM_BUILD_ROOT%{_libexecdir}/%{name}
|
rm -rf $RPM_BUILD_ROOT%{_libexecdir}/%{name}
|
||||||
%endif
|
|
||||||
|
|
||||||
# remove static lib
|
|
||||||
rm -f $RPM_BUILD_ROOT%{_libdir}/libcriu.a
|
|
||||||
|
|
||||||
%files
|
%files
|
||||||
%{_sbindir}/%{name}
|
%{_sbindir}/%{name}
|
||||||
%doc %{_mandir}/man8/criu.8*
|
%{_mandir}/man8/criu.8*
|
||||||
%doc %{_mandir}/man1/compel.1*
|
%{_mandir}/man1/compel.1*
|
||||||
%if 0%{?fedora}
|
|
||||||
%{_libexecdir}/%{name}
|
|
||||||
%endif
|
|
||||||
%dir /run/%{name}
|
%dir /run/%{name}
|
||||||
%{_tmpfilesdir}/%{name}.conf
|
%{_tmpfilesdir}/%{name}.conf
|
||||||
%doc README.md COPYING
|
%doc README.md COPYING
|
||||||
|
|
||||||
%if 0%{?fedora} || 0%{?rhel} > 8
|
|
||||||
%files devel
|
%files devel
|
||||||
%{_includedir}/criu
|
%{_includedir}/criu
|
||||||
%{_libdir}/*.so
|
%{_libdir}/*.so
|
||||||
@ -170,23 +105,19 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/libcriu.a
|
|||||||
|
|
||||||
%files libs
|
%files libs
|
||||||
%{_libdir}/*.so.*
|
%{_libdir}/*.so.*
|
||||||
%endif
|
|
||||||
|
|
||||||
%files -n %{py_prefix}-%{name}
|
%files -n %{py_prefix}-%{name}
|
||||||
%if 0%{?rhel} && 0%{?rhel} <= 7
|
|
||||||
%{python2_sitelib}/pycriu/*
|
|
||||||
%{python2_sitelib}/*egg-info
|
|
||||||
%else
|
|
||||||
%{python3_sitelib}/pycriu/*
|
%{python3_sitelib}/pycriu/*
|
||||||
%{python3_sitelib}/*egg-info
|
%{python3_sitelib}/*egg-info
|
||||||
%endif
|
|
||||||
|
|
||||||
%files -n crit
|
%files -n crit
|
||||||
%{_bindir}/crit
|
%{_bindir}/crit
|
||||||
%doc %{_mandir}/man1/crit.1*
|
%doc %{_mandir}/man1/crit.1*
|
||||||
|
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Wed Aug 04 2021 Jindrich Novy <jnovy@redhat.com> - 3.15-7
|
||||||
|
- remove pre-RHEL9 hacks
|
||||||
|
|
||||||
* Wed May 05 2021 Adrian Reber <areber@redhat.com> - 3.15-6
|
* Wed May 05 2021 Adrian Reber <areber@redhat.com> - 3.15-6
|
||||||
- Enable criu-devel and criu-libs for RHEL 9
|
- Enable criu-devel and criu-libs for RHEL 9
|
||||||
- Remove nftables-devel dependency for now
|
- Remove nftables-devel dependency for now
|
||||||
|
Loading…
Reference in New Issue
Block a user