Compare commits
No commits in common. "c8" and "c9s" have entirely different histories.
32
.gitignore
vendored
32
.gitignore
vendored
@ -1,3 +1,29 @@
|
||||
SOURCES/man-pages-4.15.tar.xz
|
||||
SOURCES/man-pages-additional-20140218.tar.xz
|
||||
SOURCES/man-pages-posix-2013-a.tar.xz
|
||||
/man-pages-additional-20140218.tar.xz
|
||||
/man-pages-posix-2013-a.tar.xz
|
||||
/man-pages-posix-2017-a.tar.xz
|
||||
/man-pages-4.02.tar.xz
|
||||
/man-pages-4.03.tar.xz
|
||||
/man-pages-4.04.tar.xz
|
||||
/man-pages-4.05.tar.xz
|
||||
/man-pages-4.06.tar.xz
|
||||
/man-pages-4.07.tar.xz
|
||||
/man-pages-4.08.tar.xz
|
||||
/man-pages-4.09.tar.xz
|
||||
/man-pages-4.10.tar.xz
|
||||
/man-pages-4.11.tar.xz
|
||||
/man-pages-4.12.tar.xz
|
||||
/man-pages-4.13.tar.xz
|
||||
/man-pages-4.14.tar.xz
|
||||
/man-pages-4.15.tar.xz
|
||||
/man-pages-4.16.tar.xz
|
||||
/man-pages-5.00.tar.xz
|
||||
/man-pages-5.01.tar.xz
|
||||
/man-pages-5.02.tar.xz
|
||||
/man-pages-5.03.tar.xz
|
||||
/man-pages-5.04.tar.xz
|
||||
/man-pages-5.06.tar.xz
|
||||
/man-pages-5.07.tar.xz
|
||||
/man-pages-5.08.tar.xz
|
||||
/man-pages-5.09.tar.xz
|
||||
/man-pages-5.10.tar.xz
|
||||
/man-pages-6.04.tar.xz
|
||||
|
@ -1,3 +0,0 @@
|
||||
05ec29cc69586f276fbeaccd3b466f3456292010 SOURCES/man-pages-4.15.tar.xz
|
||||
315c9144f71c0edf1af823fb3f7735e93f6f17c3 SOURCES/man-pages-additional-20140218.tar.xz
|
||||
91b5b10a7a596615789782dad0adb477a8bf9f84 SOURCES/man-pages-posix-2013-a.tar.xz
|
173
0000-ctime.3-Document-how-to-check-errors-from-mktime.patch
Normal file
173
0000-ctime.3-Document-how-to-check-errors-from-mktime.patch
Normal file
@ -0,0 +1,173 @@
|
||||
commit e541b219854e6be90b5628f88cd62edb44c9e9f2
|
||||
Author: Alejandro Colomar <alx@kernel.org>
|
||||
Date: Fri Aug 23 14:34:00 2024 +0200
|
||||
|
||||
ctime.3: Document how to check errors from mktime(3)
|
||||
|
||||
-1 is a valid successful time_t, for one second before the Epoch. And
|
||||
mktime(3) is allowed (like most libc calls) to set errno on success.
|
||||
This makes it impossible to determine errors from the return value or
|
||||
errno.
|
||||
|
||||
ISO C specifies that tp->tm_wday is unmodified after a failed call, and
|
||||
puts an example where this is used to determine errors. It is indeed
|
||||
the only way to check for errors from this call.
|
||||
|
||||
Document this detail in the RETURN VALUE section, add a CAVEATS section
|
||||
that warns about this, and write an example program that shows how to
|
||||
properly call this function.
|
||||
|
||||
Most code I've been able to find in several search engines either
|
||||
doesn't check for errors after mktime(3), or checks them incorrectly, so
|
||||
this documentation should help fix those.
|
||||
|
||||
This is guaranteed since ISO C23 and POSIX.1-2024. Prior to those
|
||||
standards, there was no standard way to check for errors. However,
|
||||
there are no known implementations that do not conform to this.
|
||||
|
||||
Link: <https://lore.kernel.org/linux-man/20240823131024.GD2713@cventin.lip.ens-lyon.fr/T/#t>
|
||||
Link: <https://lore.kernel.org/linux-man/6un6baaq5tez23irtycuvzqtuh7a4sdrf2px7tnyb3y6iqoxmq@2ofln4cd27ep/T/#t>
|
||||
Link: <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3147.txt>
|
||||
Link: <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3148.doc>
|
||||
Link: <https://austingroupbugs.net/view.php?id=1614>
|
||||
Link: <https://www.open-std.org/jtc1/sc22/wg14/www/docs/n3220.pdf#subsubsection.7.29.2.3>
|
||||
Reported-by: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Cc: Vincent Lefevre <vincent@vinc17.net>
|
||||
Cc: DJ Delorie <dj@redhat.com>
|
||||
Cc: Carlos O'Donell <carlos@redhat.com>
|
||||
Cc: Xi Ruoyao <xry111@xry111.site>
|
||||
Cc: Brian Inglis <Brian.Inglis@SystematicSW.ab.ca>
|
||||
Cc: "Robert C. Seacord" <rcseacord@gmail.com>
|
||||
Cc: Jens Gustedt <jens.gustedt@inria.fr>
|
||||
Cc: Robert Elz <kre@munnari.oz.au>
|
||||
Cc: Andrew Josey <ajosey@opengroup.org>
|
||||
Cc: Geoff Clare <gwc@opengroup.org>
|
||||
Cc: Hans Åberg <haberg-1@telia.com>
|
||||
Cc: GNU C Library <libc-alpha@sourceware.org>
|
||||
Cc: Austin Group <austin-group-l@opengroup.org>
|
||||
Signed-off-by: Alejandro Colomar <alx@kernel.org>
|
||||
|
||||
Conflicts:
|
||||
Minor wording differences
|
||||
|
||||
diff -Nrup a/man3/ctime.3 b/man3/ctime.3
|
||||
--- a/man3/ctime.3 2023-04-02 20:27:24.000000000 -0400
|
||||
+++ b/man3/ctime.3 2025-06-18 09:39:54.782440669 -0400
|
||||
@@ -247,7 +247,10 @@ expressed as a value of type
|
||||
On error,
|
||||
.BR mktime ()
|
||||
returns the value
|
||||
-.IR "(time_t)\ \-1" .
|
||||
+.IR "(time_t)\ \-1" ,
|
||||
+and leaves the
|
||||
+.I tm->tm_wday
|
||||
+member unmodified.
|
||||
The remaining functions return NULL on error.
|
||||
On error,
|
||||
.I errno
|
||||
@@ -400,6 +403,105 @@ a broken-down time structure and an arra
|
||||
Execution of any of the functions may overwrite the information returned
|
||||
in either of these objects by any of the other functions."
|
||||
This can occur in the glibc implementation.
|
||||
+.SH CAVEATS
|
||||
+.SS mktime()
|
||||
+.I (time_t) \-1
|
||||
+can represent a valid time
|
||||
+(one second before the Epoch).
|
||||
+To determine whether
|
||||
+.BR mktime ()
|
||||
+failed,
|
||||
+one must use the
|
||||
+.I tm->tm_wday
|
||||
+field.
|
||||
+See the example program in EXAMPLES.
|
||||
+.SH EXAMPLES
|
||||
+The following shell session shows sample runs of the program:
|
||||
+.P
|
||||
+.in +4n
|
||||
+.EX
|
||||
+.RB $\~ "TZ=UTC ./a.out 1969 12 31 23 59 59 0" ;
|
||||
+\-1
|
||||
+$
|
||||
+.RB $\~ "export TZ=Europe/Madrid" ;
|
||||
+$
|
||||
+.RB $\~ "./a.out 2147483647 2147483647 00 00 00 00 -1" ;
|
||||
+a.out: mktime: Value too large for defined data type
|
||||
+$
|
||||
+.RB $\~ "./a.out 2024 08 23 00 17 53 \-1" ;
|
||||
+1724365073
|
||||
+.RB $\~ "./a.out 2024 08 23 00 17 53 0" ;
|
||||
+1724368673
|
||||
+.RB $\~ "./a.out 2024 08 23 00 17 53 1" ;
|
||||
+1724365073
|
||||
+$
|
||||
+.RB $\~ "./a.out 2024 02 23 00 17 53 \-1" ;
|
||||
+1708643873
|
||||
+.RB $\~ "./a.out 2024 02 23 00 17 53 0" ;
|
||||
+1708643873
|
||||
+.RB $\~ "./a.out 2024 02 23 00 17 53 1" ;
|
||||
+1708640273
|
||||
+$
|
||||
+.RB $\~ "./a.out 2023 03 26 02 17 53 \-1" ;
|
||||
+1679793473
|
||||
+$
|
||||
+.RB $\~ "./a.out 2023 10 29 02 17 53 \-1" ;
|
||||
+1698542273
|
||||
+.RB $\~ "./a.out 2023 10 29 02 17 53 0" ;
|
||||
+1698542273
|
||||
+.RB $\~ "./a.out 2023 10 29 02 17 53 1" ;
|
||||
+1698538673
|
||||
+$
|
||||
+.RB $\~ "./a.out 2023 02 29 12 00 00 \-1" ;
|
||||
+1677668400
|
||||
+.EE
|
||||
+.SS Program source: mktime.c
|
||||
+\&
|
||||
+.\" SRC BEGIN (mktime.c)
|
||||
+.EX
|
||||
+#include <err.h>
|
||||
+#include <stdint.h>
|
||||
+#include <stdio.h>
|
||||
+#include <stdlib.h>
|
||||
+#include <time.h>
|
||||
+\&
|
||||
+#define is_signed(T) ((T) \-1 < 1)
|
||||
+\&
|
||||
+int
|
||||
+main(int argc, char *argv[])
|
||||
+{
|
||||
+ char **p;
|
||||
+ time_t t;
|
||||
+ struct tm tm;
|
||||
+\&
|
||||
+ if (argc != 8) {
|
||||
+ fprintf(stderr, "Usage: %s yyyy mm dd HH MM SS isdst\[rs]n", argv[0]);
|
||||
+ exit(EXIT_FAILURE);
|
||||
+ }
|
||||
+\&
|
||||
+ p = &argv[1];
|
||||
+ tm.tm_year = atoi(*p++) \- 1900;
|
||||
+ tm.tm_mon = atoi(*p++) \- 1;
|
||||
+ tm.tm_mday = atoi(*p++);
|
||||
+ tm.tm_hour = atoi(*p++);
|
||||
+ tm.tm_min = atoi(*p++);
|
||||
+ tm.tm_sec = atoi(*p++);
|
||||
+ tm.tm_isdst = atoi(*p++);
|
||||
+\&
|
||||
+ tm.tm_wday = \-1;
|
||||
+ t = mktime(&tm);
|
||||
+ if (tm.tm_wday == \-1)
|
||||
+ err(EXIT_FAILURE, "mktime");
|
||||
+\&
|
||||
+ if (is_signed(time_t))
|
||||
+ printf("%jd\[rs]n", (intmax_t) t);
|
||||
+ else
|
||||
+ printf("%ju\[rs]n", (uintmax_t) t);
|
||||
+\&
|
||||
+ exit(EXIT_SUCCESS);
|
||||
+}
|
||||
+.EE
|
||||
+.\" SRC END
|
||||
.SH SEE ALSO
|
||||
.BR date (1),
|
||||
.BR gettimeofday (2),
|
76
0000-sched.7-Clarifications-corrections.patch
Normal file
76
0000-sched.7-Clarifications-corrections.patch
Normal file
@ -0,0 +1,76 @@
|
||||
commit ca69daf45f94fda061f796efcc4f24ca76d8e380
|
||||
Author: Phil Auld <pauld@redhat.com>
|
||||
Date: Thu Jan 16 14:37:47 2025 +0000
|
||||
|
||||
man/man7/sched.7: Mention autogroup disabled behavior
|
||||
|
||||
The autogroup feature can be contolled at runtime when built into the
|
||||
kernel. Disabling it in this case still creates autogroups and still
|
||||
shows the autogroup membership for the task in /proc. The scheduler
|
||||
code will just not use the the autogroup task group. This can be
|
||||
confusing to users. Add a sentence to this effect to sched.7 to point
|
||||
this out.
|
||||
|
||||
The kernel code shows how this is used. The sched_autogroup_enabled
|
||||
toggle is only used in one place.
|
||||
|
||||
kernel/sched/autogroup.h:
|
||||
|
||||
static inline struct task_group *
|
||||
autogroup_task_group(struct task_struct *p, struct task_group *tg)
|
||||
{
|
||||
extern unsigned int sysctl_sched_autogroup_enabled;
|
||||
int enabled = READ_ONCE(sysctl_sched_autogroup_enabled);
|
||||
|
||||
if (enabled && task_wants_autogroup(p, tg))
|
||||
return p->signal->autogroup->tg;
|
||||
|
||||
return tg;
|
||||
}
|
||||
|
||||
task_wants_autogroup() is in kernel/sched/autogroup.c:
|
||||
|
||||
bool task_wants_autogroup(struct task_struct *p, struct task_group *tg)
|
||||
{
|
||||
if (tg != &root_task_group)
|
||||
return false;
|
||||
...
|
||||
|
||||
return true;
|
||||
}
|
||||
|
||||
One can see that any group set other than root also bypasses the use of
|
||||
the autogroup. All of the machinery around the creation of the
|
||||
autogroup is not effected by the toggle.
|
||||
|
||||
From userspace:
|
||||
0
|
||||
/autogroup-112 nice 0
|
||||
|
||||
Note, systemd based system these days is not really using autogroups at
|
||||
all anyway because any task in a non-root cgroup bypasses the autogroup
|
||||
as well.
|
||||
|
||||
Cc: Carlos O'Donell <codonell@redhat.com>
|
||||
Signed-off-by: Phil Auld <pauld@redhat.com>
|
||||
Message-ID: <20250116143747.2366152-1-pauld@redhat.com>
|
||||
Signed-off-by: Alejandro Colomar <alx@kernel.org>
|
||||
|
||||
Conflicts:
|
||||
man7/sched.7 - one line .P vs .PP difference
|
||||
|
||||
diff -Nrup a/man7/sched.7 b/man7/sched.7
|
||||
--- a/man7/sched.7 2023-04-02 20:27:35.000000000 -0400
|
||||
+++ b/man7/sched.7 2025-07-08 14:20:38.627388430 -0400
|
||||
@@ -724,6 +724,11 @@ in the group terminates.
|
||||
.PP
|
||||
When autogrouping is enabled, all of the members of an autogroup
|
||||
are placed in the same kernel scheduler "task group".
|
||||
+When disabled,
|
||||
+the group creation happens as above,
|
||||
+and autogroup membership is still visible in
|
||||
+.IR /proc ,
|
||||
+but the autogroups are not used.
|
||||
The CFS scheduler employs an algorithm that equalizes the
|
||||
distribution of CPU cycles across task groups.
|
||||
The benefits of this for interactive desktop performance
|
32
0001-ctime.3-Move-NOTES-to-a-subsection-within-CAVEATS.patch
Normal file
32
0001-ctime.3-Move-NOTES-to-a-subsection-within-CAVEATS.patch
Normal file
@ -0,0 +1,32 @@
|
||||
commit 6a7f1461b0e5474d50ef1920558dec103c0c058f
|
||||
Author: Alejandro Colomar <alx@kernel.org>
|
||||
Date: Sat Aug 24 00:20:49 2024 +0200
|
||||
|
||||
ctime.3: Move NOTES to a subsection within CAVEATS
|
||||
|
||||
Signed-off-by: Alejandro Colomar <alx@kernel.org>
|
||||
|
||||
Conflicts:
|
||||
Minor wording differences
|
||||
|
||||
diff -Nrup a/man3/ctime.3 b/man3/ctime.3
|
||||
--- a/man3/ctime.3 2025-06-18 16:14:51.847871469 -0400
|
||||
+++ b/man3/ctime.3 2025-06-18 16:25:22.406139771 -0400
|
||||
@@ -374,7 +374,8 @@ POSIX.1-2001.
|
||||
POSIX.1-2001.
|
||||
Marked obsolete in POSIX.1-2008 (recommending
|
||||
.BR strftime (3)).
|
||||
-.SH NOTES
|
||||
+.SH CAVEATS
|
||||
+.SS Thread safety
|
||||
The four functions
|
||||
.BR asctime (),
|
||||
.BR ctime (),
|
||||
@@ -403,7 +404,6 @@ a broken-down time structure and an arra
|
||||
Execution of any of the functions may overwrite the information returned
|
||||
in either of these objects by any of the other functions."
|
||||
This can occur in the glibc implementation.
|
||||
-.SH CAVEATS
|
||||
.SS mktime()
|
||||
.I (time_t) \-1
|
||||
can represent a valid time
|
44
0001-dlinfo.3-Document-the-RTLD_DI_PHDR-request.patch
Normal file
44
0001-dlinfo.3-Document-the-RTLD_DI_PHDR-request.patch
Normal file
@ -0,0 +1,44 @@
|
||||
From f1016b60769174da8e396e30fd25f58bb58d4232 Mon Sep 17 00:00:00 2001
|
||||
From: Florian Weimer <fweimer@redhat.com>
|
||||
Date: Wed, 28 Aug 2024 13:01:56 +0200
|
||||
Subject: [PATCH] dlinfo.3: Document the RTLD_DI_PHDR request
|
||||
|
||||
First added in glibc 2.36, backported upstream to glibc 2.34,
|
||||
so mention 2.34.1 for the first version.
|
||||
|
||||
Signed-off-by: Florian Weimer <fweimer@redhat.com>
|
||||
Message-ID: <87o75chpwb.fsf@oldenburg.str.redhat.com>
|
||||
Signed-off-by: Alejandro Colomar <alx@kernel.org>
|
||||
---
|
||||
man/man3/dlinfo.3 | 15 ++++++++++++++-
|
||||
1 file changed, 14 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/man3/dlinfo.3 b/man3/dlinfo.3
|
||||
index bc331dc..a77e514 100644
|
||||
--- a/man3/dlinfo.3
|
||||
+++ b/man3/dlinfo.3
|
||||
@@ -194,10 +194,23 @@ If this object does not define a PT_TLS segment,
|
||||
or if the calling thread has not allocated a block for it,
|
||||
NULL is placed in
|
||||
.IR *info .
|
||||
+.TP
|
||||
+.BR RTLD_DI_PHDR " (\fIconst ElfW(Phdr *)\fP, since glibc 2.34.1)"
|
||||
+.\" glibc commit d056c212130280c0a54d9a4f72170ec621b70ce5 (2.36)
|
||||
+.\" glibc commit 28ea43f8d64f0dd1f2de75525157730e1532e600 (2.35.1)
|
||||
+.\" glibc commit 91c2e6c3db44297bf4cb3a2e3c40236c5b6a0b23 (2.34.1)
|
||||
+Obtain the address of this shared object's program header and place it
|
||||
+in
|
||||
+.IR *info .
|
||||
+This
|
||||
+.B dlinfo
|
||||
+call returns the number of program headers in the shared object.
|
||||
.SH RETURN VALUE
|
||||
On success,
|
||||
.BR dlinfo ()
|
||||
-returns 0.
|
||||
+returns 0
|
||||
+(if not specified explicitly),
|
||||
+or a positive value corresponding to the request.
|
||||
On failure, it returns \-1; the cause of the error can be diagnosed using
|
||||
.BR dlerror (3).
|
||||
.SH ATTRIBUTES
|
@ -0,0 +1,76 @@
|
||||
From 9fdca71e4aba3605caa88b0c9eff3dc2c3f6fcfe Mon Sep 17 00:00:00 2001
|
||||
From: DJ Delorie <dj@redhat.com>
|
||||
Date: Thu, 29 Aug 2024 21:10:32 -0400
|
||||
Subject: [PATCH] ctime.3: CAVEATS: Add note about tm_isdst handling in
|
||||
mktime(3)
|
||||
|
||||
Handling of "invalid" values for tm_isdst is not clearly specified
|
||||
in any standard, and implementations vary as to how they react when you
|
||||
(for example) pass tm_isdst=1 at a time when DST is not in effect.
|
||||
Add a note about this, and a suggestion for a workaround.
|
||||
|
||||
I go into further detail about this in the link below.
|
||||
|
||||
Link: <https://www.redhat.com/en/blog/brief-history-mktime>
|
||||
Cc: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Cc: Carlos O'Donell <carlos@redhat.com>
|
||||
Signed-off-by: DJ Delorie <dj@redhat.com>
|
||||
Message-ID: <xncylqiznb.fsf@greed.delorie.com>
|
||||
Signed-off-by: Alejandro Colomar <alx@kernel.org>
|
||||
---
|
||||
man/man3/ctime.3 | 39 +++++++++++++++++++++++++++++++++++++++
|
||||
1 file changed, 39 insertions(+)
|
||||
|
||||
diff --git a/man/man3/ctime.3 b/man/man3/ctime.3
|
||||
index 0ad2b530f..53abab6d9 100644
|
||||
--- a/man3/ctime.3
|
||||
+++ b/man3/ctime.3
|
||||
@@ -427,6 +427,45 @@ one must use the
|
||||
.I tm->tm_wday
|
||||
field.
|
||||
See the example program in EXAMPLES.
|
||||
+.P
|
||||
+The handling of a non-negative
|
||||
+.I tm_isdst
|
||||
+in
|
||||
+.BR mktime ()
|
||||
+is poorly specified,
|
||||
+and passing a value that is incorrect for the time specified
|
||||
+yields unspecified results.
|
||||
+Since
|
||||
+.BR mktime ()
|
||||
+is one of the few functions that knows when DST is in effect,
|
||||
+providing a correct value may be difficult.
|
||||
+One workaround for this is to call
|
||||
+.BR mktime ()
|
||||
+twice,
|
||||
+once with
|
||||
+.I tm_isdst
|
||||
+set to zero,
|
||||
+and once with
|
||||
+.I tm_isdst
|
||||
+set to a positive value,
|
||||
+and discarding the results from the call that changes it.
|
||||
+If neither call changes
|
||||
+.I tm_isdst
|
||||
+then the time specified probably happens during a fall-back period
|
||||
+where DST begins or ends,
|
||||
+and both results are valid
|
||||
+but represent two different times.
|
||||
+If both calls change it, that could indicate a fall-forward transition,
|
||||
+or some other reason why the time specified does not exist.
|
||||
+.P
|
||||
+The specification of time zones and daylight saving time
|
||||
+are up to regional governments, change often,
|
||||
+and may include discontinuities beyond
|
||||
+.IR mktime 's
|
||||
+ability to document a result.
|
||||
+For example, a change in the timezone definition
|
||||
+may cause a clock time to be repeated or skipped
|
||||
+without a corresponding DST change.
|
||||
.SH EXAMPLES
|
||||
The following shell session shows sample runs of the program:
|
||||
.P
|
||||
--
|
||||
2.46.1
|
||||
|
@ -0,0 +1,162 @@
|
||||
commit bd576aaf5fce40100133c1d48c02eacbf25594c8
|
||||
Author: Alejandro Colomar <alx@kernel.org>
|
||||
Date: Sat Aug 24 00:51:55 2024 +0200
|
||||
|
||||
ctime.3: EXAMPLES: Document how to detect invalid or ambiguous times
|
||||
|
||||
This example documents how to detect some corner cases of mktime(3),
|
||||
such as DST transitions and other jumps in the calendar.
|
||||
|
||||
Link: <https://www.redhat.com/en/blog/brief-history-mktime>
|
||||
Cc: DJ Delorie <dj@redhat.com>
|
||||
Cc: Carlos O'Donell <carlos@redhat.com>
|
||||
Cc: Paul Eggert <eggert@cs.ucla.edu>
|
||||
Signed-off-by: Alejandro Colomar <alx@kernel.org>
|
||||
|
||||
diff --git a/man3/ctime.3 b/man/man3/ctime.3
|
||||
index 53abab6d9..acd6f1565 100644
|
||||
--- a/man3/ctime.3
|
||||
+++ b/man3/ctime.3
|
||||
@@ -467,6 +467,14 @@ For example, a change in the timezone definition
|
||||
may cause a clock time to be repeated or skipped
|
||||
without a corresponding DST change.
|
||||
.SH EXAMPLES
|
||||
+The program below defines a wrapper that
|
||||
+allows detecting invalid and ambiguous times,
|
||||
+with
|
||||
+.B EINVAL
|
||||
+and
|
||||
+.BR ENOTUNIQ ,
|
||||
+respectively.
|
||||
+.P
|
||||
The following shell session shows sample runs of the program:
|
||||
.P
|
||||
.in +4n
|
||||
@@ -482,6 +490,7 @@ $
|
||||
.RB $\~ "./a.out 2024 08 23 00 17 53 \-1" ;
|
||||
1724365073
|
||||
.RB $\~ "./a.out 2024 08 23 00 17 53 0" ;
|
||||
+a.out: my_mktime: Invalid argument
|
||||
1724368673
|
||||
.RB $\~ "./a.out 2024 08 23 00 17 53 1" ;
|
||||
1724365073
|
||||
@@ -491,12 +500,15 @@ $
|
||||
.RB $\~ "./a.out 2024 02 23 00 17 53 0" ;
|
||||
1708643873
|
||||
.RB $\~ "./a.out 2024 02 23 00 17 53 1" ;
|
||||
+a.out: my_mktime: Invalid argument
|
||||
1708640273
|
||||
$
|
||||
.RB $\~ "./a.out 2023 03 26 02 17 53 \-1" ;
|
||||
+a.out: my_mktime: Invalid argument
|
||||
1679793473
|
||||
$
|
||||
.RB $\~ "./a.out 2023 10 29 02 17 53 \-1" ;
|
||||
+a.out: my_mktime: Name not unique on network
|
||||
1698542273
|
||||
.RB $\~ "./a.out 2023 10 29 02 17 53 0" ;
|
||||
1698542273
|
||||
@@ -504,6 +516,7 @@ $
|
||||
1698538673
|
||||
$
|
||||
.RB $\~ "./a.out 2023 02 29 12 00 00 \-1" ;
|
||||
+a.out: my_mktime: Invalid argument
|
||||
1677668400
|
||||
.EE
|
||||
.SS Program source: mktime.c
|
||||
@@ -511,13 +524,17 @@ $
|
||||
.\" SRC BEGIN (mktime.c)
|
||||
.EX
|
||||
#include <err.h>
|
||||
+#include <errno.h>
|
||||
#include <stdint.h>
|
||||
#include <stdio.h>
|
||||
#include <stdlib.h>
|
||||
+#include <string.h>
|
||||
#include <time.h>
|
||||
\&
|
||||
#define is_signed(T) ((T) \-1 < 1)
|
||||
\&
|
||||
+time_t my_mktime(struct tm *tp);
|
||||
+\&
|
||||
int
|
||||
main(int argc, char *argv[])
|
||||
{
|
||||
@@ -539,10 +556,13 @@ main(int argc, char *argv[])
|
||||
tm.tm_sec = atoi(*p++);
|
||||
tm.tm_isdst = atoi(*p++);
|
||||
\&
|
||||
+ errno = 0;
|
||||
tm.tm_wday = \-1;
|
||||
- t = mktime(&tm);
|
||||
+ t = my_mktime(&tm);
|
||||
if (tm.tm_wday == \-1)
|
||||
err(EXIT_FAILURE, "mktime");
|
||||
+ if (errno == EINVAL || errno == ENOTUNIQ)
|
||||
+ warn("my_mktime");
|
||||
\&
|
||||
if (is_signed(time_t))
|
||||
printf("%jd\[rs]n", (intmax_t) t);
|
||||
@@ -551,6 +571,62 @@ main(int argc, char *argv[])
|
||||
\&
|
||||
exit(EXIT_SUCCESS);
|
||||
}
|
||||
+\&
|
||||
+time_t
|
||||
+my_mktime(struct tm *tp)
|
||||
+{
|
||||
+ int e, isdst;
|
||||
+ time_t t;
|
||||
+ struct tm tm;
|
||||
+ unsigned char wday[sizeof(tp\->tm_wday)];
|
||||
+\&
|
||||
+ e = errno;
|
||||
+\&
|
||||
+ tm = *tp;
|
||||
+ isdst = tp\->tm_isdst;
|
||||
+\&
|
||||
+ memcpy(wday, &tp\->tm_wday, sizeof(wday));
|
||||
+ tp\->tm_wday = \-1;
|
||||
+ t = mktime(tp);
|
||||
+ if (tp\->tm_wday == \-1) {
|
||||
+ memcpy(&tp\->tm_wday, wday, sizeof(wday));
|
||||
+ return \-1;
|
||||
+ }
|
||||
+\&
|
||||
+ if (isdst == \-1)
|
||||
+ tm.tm_isdst = tp\->tm_isdst;
|
||||
+\&
|
||||
+ if ( tm.tm_sec != tp\->tm_sec
|
||||
+ || tm.tm_min != tp\->tm_min
|
||||
+ || tm.tm_hour != tp\->tm_hour
|
||||
+ || tm.tm_mday != tp\->tm_mday
|
||||
+ || tm.tm_mon != tp\->tm_mon
|
||||
+ || tm.tm_year != tp\->tm_year
|
||||
+ || tm.tm_isdst != tp\->tm_isdst)
|
||||
+ {
|
||||
+ errno = EINVAL;
|
||||
+ return t;
|
||||
+ }
|
||||
+\&
|
||||
+ if (isdst != \-1)
|
||||
+ goto out;
|
||||
+\&
|
||||
+ tm = *tp;
|
||||
+ tm.tm_isdst = !tm.tm_isdst;
|
||||
+\&
|
||||
+ tm.tm_wday = \-1;
|
||||
+ mktime(&tm);
|
||||
+ if (tm.tm_wday == \-1)
|
||||
+ goto out;
|
||||
+\&
|
||||
+ if (tm.tm_isdst != tp\->tm_isdst) {
|
||||
+ errno = ENOTUNIQ;
|
||||
+ return t;
|
||||
+ }
|
||||
+out:
|
||||
+ errno = e;
|
||||
+ return t;
|
||||
+}
|
||||
.EE
|
||||
.\" SRC END
|
||||
.SH SEE ALSO
|
File diff suppressed because it is too large
Load Diff
@ -1,29 +0,0 @@
|
||||
From b5f194248f0c38d0e254b71f98e1b9e9783198dd Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
|
||||
Date: Fri, 27 Jul 2018 17:15:47 +0200
|
||||
Subject: [PATCH 2/5] host.conf.5: fix default value of multi option
|
||||
|
||||
---
|
||||
man5/host.conf.5 | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/man5/host.conf.5 b/man5/host.conf.5
|
||||
index 1f65840..15e9aa7 100644
|
||||
--- a/man5/host.conf.5
|
||||
+++ b/man5/host.conf.5
|
||||
@@ -65,9 +65,9 @@ appears in the
|
||||
file,
|
||||
instead of only the first.
|
||||
This is
|
||||
-.I off
|
||||
-by default, as it may cause a substantial performance loss at sites
|
||||
-with large hosts files.
|
||||
+.I on
|
||||
+by default.
|
||||
+On systems with DNS, hosts files are much smaller and the performance loss of multiple search is negligible. On sites with large hosts files, turning it on may cause a substantial performance loss.
|
||||
.TP
|
||||
.I reorder
|
||||
Valid values are
|
||||
--
|
||||
2.17.1
|
||||
|
@ -1,37 +0,0 @@
|
||||
From 41b7763e490bddbc3308dfd32924bd19972c0604 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
|
||||
Date: Tue, 15 May 2018 13:29:24 +0200
|
||||
Subject: [PATCH] host.conf.5: Clarify glibc versions in which spoof options
|
||||
were removed
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
The nospoof, spoofalert and spoof options as well as the
|
||||
RESOLV_SPOOF_CHECK environment variable were all removed
|
||||
from glibc in version 2.25 (with commit
|
||||
7d68cdaa4f748e87ee921f587ee2d483db624b3d).
|
||||
|
||||
Signed-off-by: Nikola Forró <nforro@redhat.com>
|
||||
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
|
||||
---
|
||||
man5/host.conf.5 | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/man5/host.conf.5 b/man5/host.conf.5
|
||||
index 15e9aa7..66e6fb4 100644
|
||||
--- a/man5/host.conf.5
|
||||
+++ b/man5/host.conf.5
|
||||
@@ -150,7 +150,8 @@ Overrides the
|
||||
.I order
|
||||
command.
|
||||
.PP
|
||||
-Since glibc 2.0.7, the following keywords and environment variable have
|
||||
+.\" commit 7d68cdaa4f748e87ee921f587ee2d483db624b3d
|
||||
+Since glibc 2.0.7, and up through glibc 2.24, the following keywords and environment variable have
|
||||
been recognized but never implemented:
|
||||
.TP
|
||||
.I nospoof
|
||||
--
|
||||
2.17.1
|
||||
|
@ -1,45 +0,0 @@
|
||||
From 260d71520ec0c96ef20670eca17d7b08cc9601ad Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
|
||||
Date: Fri, 27 Jul 2018 17:10:43 +0200
|
||||
Subject: [PATCH 1/5] nl_langinfo.3: note that Latin-1 is the default codeset
|
||||
for en_US locale charsets.7: note that UTF-8 is the recommended encoding for
|
||||
all locales
|
||||
|
||||
---
|
||||
man3/nl_langinfo.3 | 6 ++++++
|
||||
man7/charsets.7 | 2 ++
|
||||
2 files changed, 8 insertions(+)
|
||||
|
||||
diff --git a/man3/nl_langinfo.3 b/man3/nl_langinfo.3
|
||||
index e37f07b..63de5c2 100644
|
||||
--- a/man3/nl_langinfo.3
|
||||
+++ b/man3/nl_langinfo.3
|
||||
@@ -167,6 +167,12 @@ or
|
||||
.PP
|
||||
POSIX specifies that the application may not modify
|
||||
the string returned by these functions.
|
||||
+.PP
|
||||
+Codeset for en_US defaults to ISO-8859-1 (Latin-1).
|
||||
+The Latin-1 default has historical reasons,
|
||||
+since all Unix systems originally used only 8-bit character encoding.
|
||||
+For more information about ISO-8859-1 see
|
||||
+.BR charsets (7).
|
||||
.SH ATTRIBUTES
|
||||
For an explanation of the terms used in this section, see
|
||||
.BR attributes (7).
|
||||
diff --git a/man7/charsets.7 b/man7/charsets.7
|
||||
index 5f91784..9de88fe 100644
|
||||
--- a/man7/charsets.7
|
||||
+++ b/man7/charsets.7
|
||||
@@ -29,6 +29,8 @@ ASCII, GB 2312, ISO 8859, JIS, KOI8-R, KS, and Unicode.
|
||||
The primary emphasis is on character sets that were actually used by
|
||||
locale character sets, not the myriad others that could be found in data
|
||||
from other systems.
|
||||
+.LP
|
||||
+The recommended encoding in all settings and locales is UTF-8.
|
||||
.SS ASCII
|
||||
ASCII (American Standard Code For Information Interchange) is the original
|
||||
7-bit character set, originally designed for American English.
|
||||
--
|
||||
2.17.1
|
||||
|
@ -1,43 +0,0 @@
|
||||
From ca56d826dbaa05403454d8971b59fabe8b5642d5 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
|
||||
Date: Fri, 27 Jul 2018 17:23:26 +0200
|
||||
Subject: [PATCH 3/5] nsswitch.conf.5: add information about sss service
|
||||
|
||||
---
|
||||
man5/nsswitch.conf.5 | 13 +++++++++++++
|
||||
1 file changed, 13 insertions(+)
|
||||
|
||||
diff --git a/man5/nsswitch.conf.5 b/man5/nsswitch.conf.5
|
||||
index 38ef64e..dcf09e6 100644
|
||||
--- a/man5/nsswitch.conf.5
|
||||
+++ b/man5/nsswitch.conf.5
|
||||
@@ -165,6 +165,16 @@ may be 1 for glibc 2.0, or 2 for glibc 2.1 and later.
|
||||
On systems with additional libraries installed, you may have access to
|
||||
further services such as "hesiod", "ldap", "winbind" and "wins".
|
||||
.PP
|
||||
+If System Security Services Daemon (SSSD)
|
||||
+is installed on your system, you can use
|
||||
+this service with the "sss" keyword.
|
||||
+SSSD supports the following databases:
|
||||
+.BR passwd ,
|
||||
+.BR group ,
|
||||
+.BR services
|
||||
+and
|
||||
+.BR netgroup .
|
||||
+.PP
|
||||
An action may also be specified following a service specification.
|
||||
The action modifies the behavior following a result obtained
|
||||
from the preceding data source.
|
||||
@@ -329,6 +339,9 @@ as the source for the pseudo-databases
|
||||
.BR group_compat ,
|
||||
and
|
||||
.BR shadow_compat .
|
||||
+.PP
|
||||
+If SSSD is installed on your system, you can use "sss" as the source
|
||||
+for these pseudo-databases.
|
||||
.SH FILES
|
||||
A service named
|
||||
.I SERVICE
|
||||
--
|
||||
2.17.1
|
||||
|
@ -1,43 +0,0 @@
|
||||
From 2d5049d33ee608c48efd0c02e48d135ddb766fa2 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
|
||||
Date: Mon, 23 Jul 2018 14:02:18 +0200
|
||||
Subject: [PATCH 2/2] proc.5: Document /proc/[pid]/status
|
||||
Speculation_Store_Bypass field
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Nikola Forró <nforro@redhat.com>
|
||||
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
|
||||
---
|
||||
man5/proc.5 | 7 +++++++
|
||||
1 file changed, 7 insertions(+)
|
||||
|
||||
diff --git a/man5/proc.5 b/man5/proc.5
|
||||
index 9ae9e02..dc83c22 100644
|
||||
--- a/man5/proc.5
|
||||
+++ b/man5/proc.5
|
||||
@@ -2262,6 +2262,7 @@ CapBnd: ffffffffffffffff
|
||||
CapAmb: 0000000000000000
|
||||
NoNewPrivs: 0
|
||||
Seccomp: 0
|
||||
+Speculation_Store_Bypass: vulnerable
|
||||
Cpus_allowed: 00000001
|
||||
Cpus_allowed_list: 0
|
||||
Mems_allowed: 1
|
||||
@@ -2485,6 +2486,12 @@ This field is provided only if the kernel was built with the
|
||||
.BR CONFIG_SECCOMP
|
||||
kernel configuration option enabled.
|
||||
.IP *
|
||||
+.IR Speculation_Store_Bypass :
|
||||
+.\" commit fae1fa0fc6cca8beee3ab8ed71d54f9a78fa3f64
|
||||
+Speculation flaw mitigation state
|
||||
+(since Linux 4.17, see
|
||||
+.BR prctl (2)).
|
||||
+.IP *
|
||||
.IR Cpus_allowed :
|
||||
Mask of CPUs on which this process may run
|
||||
(since Linux 2.6.24, see
|
||||
--
|
||||
2.17.1
|
||||
|
@ -1,36 +0,0 @@
|
||||
From 7285d6b10356c43c94a252c63ffcd332c4e54b4b Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
|
||||
Date: Wed, 11 Jul 2018 10:58:38 +0200
|
||||
Subject: [PATCH 1/2] resolv.conf.5: Document no-reload (RES_NPRELOAD) option
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
Signed-off-by: Nikola Forró <nforro@redhat.com>
|
||||
Signed-off-by: Michael Kerrisk <mtk.manpages@gmail.com>
|
||||
---
|
||||
man5/resolv.conf.5 | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/man5/resolv.conf.5 b/man5/resolv.conf.5
|
||||
index bc42004..93c6b47 100644
|
||||
--- a/man5/resolv.conf.5
|
||||
+++ b/man5/resolv.conf.5
|
||||
@@ -302,6 +302,14 @@ Sets
|
||||
in
|
||||
.IR _res.options .
|
||||
This option forces the use of TCP for DNS resolutions.
|
||||
+.\" aef16cc8a4c670036d45590877d411a97f01e0cd
|
||||
+.TP
|
||||
+.BR no\-reload " (since glibc 2.26)"
|
||||
+Sets
|
||||
+.BR RES_NORELOAD
|
||||
+in
|
||||
+.IR _res.options .
|
||||
+This option disables automatic reloading of a changed configuration file.
|
||||
.RE
|
||||
.PP
|
||||
The \fIdomain\fP and \fIsearch\fP keywords are mutually exclusive.
|
||||
--
|
||||
2.17.1
|
||||
|
@ -1,35 +0,0 @@
|
||||
From 0409c3370ddd08cec10586f6f52fe1fbe3c717ef Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Nikola=20Forr=C3=B3?= <nforro@redhat.com>
|
||||
Date: Tue, 24 Jan 2017 16:35:02 +0100
|
||||
Subject: [PATCH] pthread_once.3p: fix return type of initialize_random()
|
||||
function
|
||||
|
||||
---
|
||||
man-pages-posix-2013-a/man3p/pthread_once.3p | 4 ++--
|
||||
1 file changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/man-pages-posix-2013-a/man3p/pthread_once.3p b/man-pages-posix-2013-a/man3p/pthread_once.3p
|
||||
index 316b1e9..db83d63 100644
|
||||
--- a/man-pages-posix-2013-a/man3p/pthread_once.3p
|
||||
+++ b/man-pages-posix-2013-a/man3p/pthread_once.3p
|
||||
@@ -86,7 +86,7 @@ on entry to a routine, as follows:
|
||||
.nf
|
||||
\fB
|
||||
static int random_is_initialized = 0;
|
||||
-extern int initialize_random();
|
||||
+extern void initialize_random();
|
||||
.P
|
||||
int random_function()
|
||||
{
|
||||
@@ -125,7 +125,7 @@ becomes:
|
||||
\fB
|
||||
#include <pthread.h>
|
||||
static pthread_once_t random_is_initialized = PTHREAD_ONCE_INIT;
|
||||
-extern int initialize_random();
|
||||
+extern void initialize_random();
|
||||
.P
|
||||
int random_function()
|
||||
{
|
||||
--
|
||||
2.7.4
|
||||
|
6
gating.yaml
Normal file
6
gating.yaml
Normal file
@ -0,0 +1,6 @@
|
||||
--- !Policy
|
||||
product_versions:
|
||||
- rhel-9
|
||||
decision_context: osci_compose_gate
|
||||
rules:
|
||||
- !PassingTestCaseRule {test_case_name: baseos-ci.brew-build.tier1.functional}
|
@ -1,7 +1,8 @@
|
||||
diff -up man-pages-3.59/man2/close.2.orig man-pages-3.59/man2/close.2
|
||||
--- man-pages-3.59/man2/close.2.orig 2014-02-16 08:33:52.000000000 +0100
|
||||
+++ man-pages-3.59/man2/close.2 2014-02-18 13:49:27.685917162 +0100
|
||||
@@ -120,6 +120,13 @@ other threads in the same process.
|
||||
diff --git a/man2/close.2 b/man2/close.2
|
||||
index c920b24..a57b0f4 100644
|
||||
--- a/man2/close.2
|
||||
+++ b/man2/close.2
|
||||
@@ -123,6 +123,13 @@ other threads in the same process.
|
||||
Since a file descriptor may be reused,
|
||||
there are some obscure race conditions
|
||||
that may cause unintended side effects.
|
@ -1,24 +1,43 @@
|
||||
%global posix_version 2013
|
||||
%global posix_version 2017
|
||||
%global posix_release a
|
||||
%global posix_name man-pages-posix-%{posix_version}-%{posix_release}
|
||||
%global posix_name man-pages-posix-%{posix_version}
|
||||
%global posix_name_rel %{posix_name}-%{posix_release}
|
||||
%global additional_version 20140218
|
||||
%global additional_name man-pages-additional-%{additional_version}
|
||||
|
||||
%global debug_package %{nil}
|
||||
|
||||
Summary: Linux kernel and C library user-space interface documentation
|
||||
Name: man-pages
|
||||
Version: 4.15
|
||||
Release: 7%{?dist}
|
||||
License: GPL+ and GPLv2+ and BSD and MIT and Copyright only and IEEE
|
||||
Group: Documentation
|
||||
Version: 6.04
|
||||
Release: 5%{?dist}
|
||||
# List of licenses with examples of man-pages using them
|
||||
# BSD-2-Clause: man-pages/man5/elf.5
|
||||
# BSD-3-Clause: man-pages/man3/list.3
|
||||
# BSD-4.3TAHOE: man-pages/man5/resolv.conf.5
|
||||
# BSD-4-Clause-UC: man-pages/man2/accept.2
|
||||
# GPL-1.0-or-later: man-pages/man1/ldd.1
|
||||
# GPL-2.0-only: man-pages/man2/fallocate.2
|
||||
# GPL-2.0-or-later: man-pages/man1/getent.1
|
||||
# LicenseRef-Fedora-Public-Domain: man-pages/man2/nfsservctl.2
|
||||
# LicenseRef-Fedora-UltraPermissive: man-pages/man2/futex.2
|
||||
# Linux-man-pages-1-para: man-pages/man2/getcpu.2
|
||||
# Linux-man-pages-copyleft: man-pages/man2/chdir.2
|
||||
# Linux-man-pages-copyleft-2-para: man-pages/man2/move_pages.2
|
||||
# Linux-man-pages-copyleft-var: man-pages/man2/get_mempolicy.2
|
||||
# MIT: man-pages/man3/program_invocation_name.3
|
||||
# Spencer-94: man-pages/man7/regex.7
|
||||
License: BSD-2-Clause AND BSD-3-Clause AND BSD-4.3TAHOE AND BSD-4-Clause-UC AND GPL-1.0-or-later AND GPL-2.0-only AND GPL-2.0-or-later AND LicenseRef-Fedora-Public-Domain AND LicenseRef-Fedora-UltraPermissive AND Linux-man-pages-1-para AND Linux-man-pages-copyleft AND Linux-man-pages-copyleft-2-para AND Linux-man-pages-copyleft-var AND MIT AND Spencer-94
|
||||
URL: http://www.kernel.org/doc/man-pages/
|
||||
Source: http://www.kernel.org/pub/linux/docs/man-pages/man-pages-%{version}.tar.xz
|
||||
# POSIX man pages
|
||||
Source1: http://www.kernel.org/pub/linux/docs/man-pages/man-pages-posix/%{posix_name}.tar.xz
|
||||
Source1: http://www.kernel.org/pub/linux/docs/man-pages/man-pages-posix/%{posix_name_rel}.tar.xz
|
||||
# additional man-pages, the source tarball is fedora/rhel only
|
||||
Source2: %{additional_name}.tar.xz
|
||||
|
||||
BuildRequires: make
|
||||
Requires(post): %{_sbindir}/update-alternatives
|
||||
Requires(postun): %{_sbindir}/update-alternatives
|
||||
Requires(preun): %{_sbindir}/update-alternatives
|
||||
|
||||
# attr.5 man page was moved from attr to man-pages in attr-2.4.47-11
|
||||
Conflicts: attr < 2.4.47-11
|
||||
|
||||
@ -28,27 +47,30 @@ Conflicts: attr < 2.4.47-11
|
||||
Conflicts: keyutils-libs < 1.5.10
|
||||
|
||||
Autoreq: false
|
||||
BuildArch: noarch
|
||||
|
||||
## Patches ##
|
||||
|
||||
# POSIX man pages
|
||||
# resolves: #1415757
|
||||
Patch0: man-pages-posix-2013-a-pthread_once.patch
|
||||
|
||||
# Regular man pages
|
||||
# resolves: #650985
|
||||
# https://bugzilla.kernel.org/show_bug.cgi?id=53781
|
||||
Patch21: man-pages-3.42-close.patch
|
||||
|
||||
# patches from MPO
|
||||
Patch22: man-pages-4.15-nl_langinfo.3-charsets.7-codesets.patch
|
||||
Patch23: man-pages-4.15-host.conf.5-multi.patch
|
||||
Patch24: man-pages-4.15-nsswitch.conf.5-sss.patch
|
||||
Patch25: man-pages-4.15-host.conf.5-spoof-options.patch
|
||||
# aarch64 specific patch
|
||||
Patch26: man-pages-4.15-aarch64-syscalls.patch
|
||||
Patch27: man-pages-4.15-resolv.conf.5-no-reload.patch
|
||||
Patch28: man-pages-4.15-proc.5-Speculation_Store_Bypass.patch
|
||||
# Upstream commit: https://git.kernel.org/pub/scm/docs/man-pages/man-pages.git/commit/?id=f1016b60769174da8e396e30fd25f58bb58d4232
|
||||
# Resolves: RHEL-53953
|
||||
Patch22: 0001-dlinfo.3-Document-the-RTLD_DI_PHDR-request.patch
|
||||
|
||||
# Upstream patches to provide more info on mktime().
|
||||
# Resolves: RHEL-58342
|
||||
Patch23: 0000-ctime.3-Document-how-to-check-errors-from-mktime.patch
|
||||
Patch24: 0001-ctime.3-Move-NOTES-to-a-subsection-within-CAVEATS.patch
|
||||
Patch25: 0002-ctime.3-CAVEATS-Add-note-about-tm_isdst-handling-in-.patch
|
||||
Patch26: 0003-ctime.3-EXAMPLES-Document-how-to-detect-invalid-or-ambiguous-times.patch
|
||||
|
||||
# Upstream patch providing sched(7) corrections/clarifications
|
||||
Patch27: 0000-sched.7-Clarifications-corrections.patch
|
||||
|
||||
%description
|
||||
A large collection of manual pages from the Linux Documentation Project (LDP).
|
||||
@ -56,83 +78,215 @@ A large collection of manual pages from the Linux Documentation Project (LDP).
|
||||
%prep
|
||||
%setup -q -a 1 -a 2
|
||||
|
||||
%patch0 -p1
|
||||
%patch21 -p1
|
||||
%patch22 -p1
|
||||
%patch23 -p1
|
||||
%patch24 -p1
|
||||
%patch25 -p1
|
||||
|
||||
%ifarch aarch64
|
||||
%patch26 -p1
|
||||
%endif
|
||||
|
||||
%patch27 -p1
|
||||
%patch28 -p1
|
||||
%patch -p1 -P 21
|
||||
%patch -p1 -P 22
|
||||
%patch -p1 -P 23
|
||||
%patch -p1 -P 24
|
||||
%patch -p1 -P 25
|
||||
%patch -p1 -P 26
|
||||
%patch -p1 -P 27
|
||||
|
||||
# rename posix README so we don't have conflict
|
||||
%{__mv} %{posix_name}/README %{posix_name}/%{posix_name}.README
|
||||
mv %{posix_name}/README %{posix_name}/%{posix_name_rel}.README
|
||||
|
||||
## Remove man pages we are not going to use ##
|
||||
|
||||
# deprecated
|
||||
%{__rm} man2/pciconfig_{write,read,iobase}.2
|
||||
rm man2/pciconfig_{write,read,iobase}.2
|
||||
|
||||
# problem with db x db4 (#198597) - man pages are obsolete
|
||||
%{__rm} man3/{db,btree,dbopen,hash,mpool,recno}.3
|
||||
rm man3/{db,btree,dbopen,hash,mpool,recno}.3
|
||||
|
||||
# we are not using SystemV anymore
|
||||
%{__rm} man7/boot.7
|
||||
rm man7/boot.7
|
||||
|
||||
# we do not have sccs (#203302)
|
||||
%{__rm} %{posix_name}/man1p/{admin,delta,get,prs,rmdel,sact,sccs,unget,val,what}.1p
|
||||
rm %{posix_name}/man1p/{admin,delta,get,prs,rmdel,sact,sccs,unget,val,what}.1p
|
||||
|
||||
# remove man pages deprecated by libxcrypt
|
||||
%{__rm} man3/crypt{,_r}.3
|
||||
|
||||
# remove rpc.3 and xdr.3 man pages documenting deprecated glibc RPC implementation (#1980919)
|
||||
%{__rm} man3/{rpc,xdr}.3
|
||||
# remove man pages deprecated by libxcrypt (#1610307)
|
||||
rm man3/crypt{,_r}.3
|
||||
|
||||
%build
|
||||
# nothing to build
|
||||
|
||||
%install
|
||||
make install DESTDIR=$RPM_BUILD_ROOT
|
||||
make install prefix=/usr DESTDIR=$RPM_BUILD_ROOT
|
||||
pushd %{posix_name}
|
||||
make install DESTDIR=$RPM_BUILD_ROOT
|
||||
make install prefix=/usr DESTDIR=$RPM_BUILD_ROOT
|
||||
popd
|
||||
pushd %{additional_name}
|
||||
make install DESTDIR=$RPM_BUILD_ROOT
|
||||
make install prefix=/usr DESTDIR=$RPM_BUILD_ROOT
|
||||
popd
|
||||
|
||||
# rename files for alternative usage
|
||||
mv %{buildroot}%{_mandir}/man7/man.7 %{buildroot}%{_mandir}/man7/man.%{name}.7
|
||||
touch %{buildroot}%{_mandir}/man7/man.7
|
||||
|
||||
%pre
|
||||
# remove alternativized files if they are not symlinks
|
||||
[ -L %{_mandir}/man7/man.7.gz ] || rm -f %{_mandir}/man7/man.7.gz >/dev/null 2>&1 || :
|
||||
|
||||
%post
|
||||
# set up the alternatives files
|
||||
%{_sbindir}/update-alternatives --install %{_mandir}/man7/man.7.gz man.7.gz %{_mandir}/man7/man.%{name}.7.gz 300 \
|
||||
>/dev/null 2>&1 || :
|
||||
|
||||
%preun
|
||||
if [ $1 -eq 0 ]; then
|
||||
%{_sbindir}/update-alternatives --remove man.7.gz %{_mandir}/man7/man.%{name}.7.gz >/dev/null 2>&1 || :
|
||||
fi
|
||||
|
||||
%postun
|
||||
if [ $1 -ge 1 ]; then
|
||||
if [ "$(readlink %{_sysconfdir}/alternatives/man.7.gz)" == "%{_mandir}/man7/man.%{name}.7.gz" ]; then
|
||||
%{_sbindir}/update-alternatives --set man.7.gz %{_mandir}/man7/man.%{name}.7.gz >/dev/null 2>&1 || :
|
||||
fi
|
||||
fi
|
||||
|
||||
%files
|
||||
%doc README man-pages-%{version}.Announce Changes
|
||||
%doc %{posix_name}/POSIX-COPYRIGHT %{posix_name}/%{posix_name}.{README,Announce}
|
||||
%doc README Changes
|
||||
%doc %{posix_name}/POSIX-COPYRIGHT %{posix_name}/%{posix_name_rel}.{README,Announce}
|
||||
%ghost %{_mandir}/man7/man.7*
|
||||
%{_mandir}/man*/*
|
||||
|
||||
%changelog
|
||||
* Tue Feb 01 2022 Nikola Forró <nforro@redhat.com> - 4.15-7
|
||||
- remove rpc.3 and xdr.3 man pages documenting deprecated glibc RPC implementation
|
||||
resolves: #1980919
|
||||
* Fri Jul 11 2025 Patsy Griffin <patsy@redhat.com> - 6.04-5
|
||||
- sched(7): Mention autogroup disabled behavior.
|
||||
Resolves: RHEL-67690
|
||||
|
||||
* Thu Aug 30 2018 Nikola Forró <nforro@redhat.com> - 4.15-6
|
||||
- proc.5: document /proc/[pid]/status Speculation_Store_Bypass field
|
||||
resolves: #1623808
|
||||
* Wed Jun 18 2025 Patsy Griffin <patsy@redhat.com> - 6.04-4
|
||||
- Activate previously added patch to improve mktime documentation and
|
||||
add 3 related upstream patches including an example.
|
||||
Related: RHEL-58342
|
||||
|
||||
* Thu Aug 30 2018 Nikola Forró <nforro@redhat.com> - 4.15-5
|
||||
- resolv.conf.5: document no-reload option
|
||||
resolves: #1623806
|
||||
* Tue Oct 01 2024 Lukas Javorsky <ljavorsk@redhat.com> - 6.04-3
|
||||
- Add note about tm_isdst handling in mktime(3)
|
||||
- Resolves: RHEL-58342
|
||||
|
||||
* Mon Aug 13 2018 Nikola Forró <nforro@redhat.com> - 4.15-4
|
||||
- host.conf.5: clarify glibc versions in which spoof options were removed
|
||||
resolves: #1615294
|
||||
* Fri Sep 13 2024 Lukas Javorsky <ljavorsk@redhat.com> - 6.04-2
|
||||
- Add RTLD_DI_PHDR to dlinfo(3)
|
||||
- Resolves: RHEL-53953
|
||||
|
||||
* Fri Aug 03 2018 Nikola Forró <nforro@redhat.com> - 4.15-3
|
||||
* Thu Jul 13 2023 Lukas Javorsky <ljavorsk@redhat.com> - 6.04-1
|
||||
- Rebase to 6.04 version per request from RHIVOS team
|
||||
- Resolves: RHEL-683
|
||||
|
||||
* Wed May 03 2023 Lukas Javorsky <ljavorsk@redhat.com> - 5.10-7
|
||||
- resolv.conf.5 no-aaaa option
|
||||
resolves: RHEL-454
|
||||
|
||||
* Fri Nov 04 2022 Lukas Javorsky <ljavorsk@redhat.com> - 5.10-6
|
||||
- Fix the resolv.conf typo
|
||||
- Source from upstream commit 076fbe061333bdfecbd5765c782c477233e38e2f
|
||||
|
||||
* Tue Aug 23 2022 Nikola Forró <nforro@redhat.com> - 5.10-5
|
||||
- nsswitch.conf.5: Mention subid database
|
||||
resolves: #2059981
|
||||
|
||||
* Mon Aug 09 2021 Mohan Boddu <mboddu@redhat.com> - 5.10-4
|
||||
- Rebuilt for IMA sigs, glibc 2.34, aarch64 flags
|
||||
Related: rhbz#1991688
|
||||
|
||||
* Fri Apr 16 2021 Mohan Boddu <mboddu@redhat.com> - 5.10-3
|
||||
- Rebuilt for RHEL 9 BETA on Apr 15th 2021. Related: rhbz#1947937
|
||||
|
||||
* Tue Jan 26 2021 Fedora Release Engineering <releng@fedoraproject.org> - 5.10-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild
|
||||
|
||||
* Thu Dec 24 2020 Nikola Forró <nforro@redhat.com> - 5.10-1
|
||||
- update to 5.10
|
||||
resolves: #1909987
|
||||
|
||||
* Fri Nov 06 2020 Nikola Forró <nforro@redhat.com> - 5.09-2
|
||||
- update POSIX man pages to 2017-a
|
||||
resolves: #1691808
|
||||
|
||||
* Mon Nov 02 2020 Nikola Forró <nforro@redhat.com> - 5.09-1
|
||||
- update to 5.09
|
||||
resolves: #1893576
|
||||
|
||||
* Mon Aug 17 2020 Nikola Forró <nforro@redhat.com> - 5.08-1
|
||||
- update to 5.08
|
||||
resolves: #1868674
|
||||
|
||||
* Tue Jul 28 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.07-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild
|
||||
|
||||
* Sun Jun 21 2020 Nikola Forró <nforro@redhat.com> - 5.07-1
|
||||
- update to 5.07
|
||||
|
||||
* Thu Apr 16 2020 Nikola Forró <nforro@redhat.com> - 5.06-3
|
||||
- Fix another typo in postun scriptlet
|
||||
|
||||
* Thu Apr 16 2020 Igor Raits <ignatenkobrain@fedoraproject.org> - 5.06-2
|
||||
- Fix typo in postun scriptlet
|
||||
|
||||
* Tue Apr 14 2020 Nikola Forró <nforro@redhat.com> - 5.06-1
|
||||
- update to 5.06
|
||||
resolves: #1823161
|
||||
|
||||
* Sun Mar 01 2020 Nikola Forró <nforro@redhat.com> - 5.04-6
|
||||
- fix %pre scriptlet
|
||||
|
||||
* Fri Feb 28 2020 Nikola Forró <nforro@redhat.com> - 5.04-5
|
||||
- fix upgrades from non-alternativized versions
|
||||
|
||||
* Thu Feb 27 2020 Nikola Forró <nforro@redhat.com> - 5.04-4
|
||||
- use alternatives for man.7
|
||||
|
||||
* Mon Feb 03 2020 Nikola Forró <nforro@redhat.com> - 5.04-3
|
||||
- add kernel_lockdown.7 man page
|
||||
resolves: #1797591
|
||||
|
||||
* Wed Jan 29 2020 Fedora Release Engineering <releng@fedoraproject.org> - 5.04-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild
|
||||
|
||||
* Wed Nov 20 2019 Nikola Forró <nforro@redhat.com> - 5.04-1
|
||||
- update to 5.04
|
||||
resolves #1774584
|
||||
|
||||
* Wed Oct 16 2019 Nikola Forró <nforro@redhat.com> - 5.03-1
|
||||
- update to 5.03
|
||||
resolves #1761010
|
||||
|
||||
* Thu Oct 10 2019 Nikola Forró <nforro@redhat.com> - 5.02-2
|
||||
- resolv.conf.5: update information about search list
|
||||
resolves #1758515
|
||||
|
||||
* Tue Aug 06 2019 Nikola Forró <nforro@redhat.com> - 5.02-1
|
||||
- update to 5.02
|
||||
|
||||
* Thu Jul 25 2019 Fedora Release Engineering <releng@fedoraproject.org> - 5.01-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild
|
||||
|
||||
* Thu May 09 2019 Nikola Forró <nforro@redhat.com> - 5.01-1
|
||||
- update to 5.01
|
||||
resolves #1708251
|
||||
|
||||
* Wed Mar 06 2019 Nikola Forró <nforro@redhat.com> - 5.00-1
|
||||
- update to 5.00
|
||||
resolves #1686085
|
||||
|
||||
* Tue Feb 26 2019 Nikola Forró <nforro@redhat.com> - 4.16-5
|
||||
- socket.2: fix dead link in AF_ALG note
|
||||
resolves #1679505
|
||||
|
||||
* Fri Feb 01 2019 Fedora Release Engineering <releng@fedoraproject.org> - 4.16-4
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild
|
||||
|
||||
* Fri Aug 03 2018 Nikola Forró <nforro@redhat.com> - 4.16-3
|
||||
- remove man pages deprecated by libxcrypt
|
||||
resolves #1610307
|
||||
|
||||
* Tue Jul 31 2018 Nikola Forró <nforro@redhat.com> - 4.15-2
|
||||
- add patches from MPO
|
||||
- remove/adjust pages for syscalls deprecated on aarch64
|
||||
* Fri Jul 13 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.16-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild
|
||||
|
||||
* Thu May 03 2018 Nikola Forró <nforro@redhat.com> - 4.16-1
|
||||
- update to 4.16
|
||||
resolves #1574060
|
||||
|
||||
* Thu Feb 08 2018 Fedora Release Engineering <releng@fedoraproject.org> - 4.15-2
|
||||
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
|
||||
|
||||
* Sun Feb 04 2018 Nikola Forró <nforro@redhat.com> - 4.15-1
|
||||
- update to 4.15
|
3
sources
Normal file
3
sources
Normal file
@ -0,0 +1,3 @@
|
||||
SHA512 (man-pages-posix-2017-a.tar.xz) = dac6bd5bb3e1d5f8918bad3eb15e08eeb3e06ae160c04ccd5619bfb0c536139ac06faa62b6856656a1bb9a7496f3148e52a5227b83e4099be6e6b93230de211d
|
||||
SHA512 (man-pages-additional-20140218.tar.xz) = c7874db32a9bdefaea6c6be6549e6e6538fa1d93260bf342dd0d9821fa05754aa79a723e701493c81b2e1f460918429eb9b5edb704b55878b1e5ed585a3ff07d
|
||||
SHA512 (man-pages-6.04.tar.xz) = 3f95d15dda419e824f902947a268d8021e9e04c5ba8503e4fe9f96a9ab8363fde8088b2712cc9c795638163ad8432bc5f8c6a3ea320293ec6aa79bb748e85b9e
|
Loading…
Reference in New Issue
Block a user