[Lsb-messages] /var/www/bzr/lsb/4.1/lsbspec r3834: add various 4.1 errata

Mats Wichmann mats at linuxfoundation.org
Tue Sep 17 22:05:11 UTC 2013


------------------------------------------------------------
revno: 3834
committer: Mats Wichmann <mats at linuxfoundation.org>
branch nick: lsbspec
timestamp: Tue 2013-09-17 16:05:11 -0600
message:
  add various 4.1 errata
added:
  errata/errata_41/2832-libc.txt
  errata/errata_41/3717-libc.txt
  errata/errata_41/3718-libc.txt
  errata/errata_41/3731-libc.txt
  errata/errata_41/3732-libc.txt
-------------- next part --------------
=== added file 'errata/errata_41/2832-libc.txt'
--- a/errata/errata_41/2832-libc.txt	1970-01-01 00:00:00 +0000
+++ b/errata/errata_41/2832-libc.txt	2013-09-17 22:05:11 +0000
@@ -0,0 +1,38 @@
+Specification: LSB Core generic
+Edition of Specification: 4.1
+Type: Error
+Status: Unapproved
+Bug reference: http://bugs.linuxbase.org/show_bug.cgi?id=2832
+
+Rationale: the macro offsetof, required by ISO C, fails when applied
+in certain circumstances.  The circumstances are particular to certain
+compilation environments, but to facilitate application development on
+a range of platforms, the following adjustment is made to accomodate
+implementations.  The __builtin_offsetof compiler builtin in the special
+case meets the requirement of POSIX 2003, which is a restatement of the
+ISO C requirement:
+
+  offsetof(type, member-designator)
+
+      Integer constant expression of type size_t, the value of which is
+      the offset in bytes to the structure member (member-designator),
+      from the beginning of its structure (type).
+
+
+In LSB Core generic:
+
+In 12.4. Data Definitions for libc
+12.4.56. stddef.h
+
+Change:
+
+#define offsetof(TYPE,MEMBER)   ((size_t)&((TYPE*)0)->MEMBER)
+
+To:
+
+#if !defined(__GNUC__)
+#define __builtin_offsetof (TYPE, MEMBER)       ((size_t)&((TYPE*)0)->MEMBER)
+#endif
+#define offsetof(TYPE,MEMBER)   __builtin_offsetof (TYPE, MEMBER)
+
+

=== added file 'errata/errata_41/3717-libc.txt'
--- a/errata/errata_41/3717-libc.txt	1970-01-01 00:00:00 +0000
+++ b/errata/errata_41/3717-libc.txt	2013-09-17 22:05:11 +0000
@@ -0,0 +1,67 @@
+Specification: LSB Core generic
+Edition of Specification: 4.1
+Type: Error
+Status: Unapproved
+Bug reference: http://bugs.linuxbase.org/show_bug.cgi?id=3717
+
+Rationale: several items in Data Definitions are defined in places other
+than described by POSIX 2003 and other specifications. In practical
+use, this caused some issues with portable software which could be
+compiled in other environments but not when attempting conformance
+with this specification.  The changes to constants SEEK_SET, SEEK_CUR,
+SEEK_END and function select() are intended to align with POSIX 2003,
+and the change to type off64_t is intended to align with LFS (and
+consistency with POSIX as to where related type off_t is defined).
+
+In LSB Core generic:
+
+In 12.4. Data Definitions for libc
+12.4.11. fcntl.h
+
+Add:
+#ifndef SEEK_SET
+#define SEEK_SET        0
+
+#ifndef SEEK_CUR
+#define SEEK_CUR        1
+
+#ifndef SEEK_END
+#define SEEK_END        2
+
+
+12.4.73. sys/select.h
+
+Add:
+
+extern int select(int __nfds, fd_set * __readfds, fd_set * __writefds,
+                  fd_set * __exceptfds, struct timeval *__timeout);
+
+
+12.4.85. sys/types.h
+
+Add:
+
+typedef long long int off64_t;
+
+
+12.4.96. unistd.h
+
+Delete:
+
+#ifndef SEEK_SET
+#define SEEK_SET        0
+
+#ifndef SEEK_CUR
+#define SEEK_CUR        1
+
+#ifndef SEEK_END
+#define SEEK_END        2
+
+Delete:
+
+typedef long long int off64_t;
+
+Delete:
+
+extern int select(int __nfds, fd_set * __readfds, fd_set * __writefds,
+                  fd_set * __exceptfds, struct timeval *__timeout);

=== added file 'errata/errata_41/3718-libc.txt'
--- a/errata/errata_41/3718-libc.txt	1970-01-01 00:00:00 +0000
+++ b/errata/errata_41/3718-libc.txt	2013-09-17 22:05:11 +0000
@@ -0,0 +1,23 @@
+Specification: LSB Core generic
+Edition of Specification: 4.1
+Type: Error
+Status: Unapproved
+Bug reference: http://bugs.linuxbase.org/show_bug.cgi?id=3718
+
+Rationale: As specified in ISO POSIX 2003, the sigevent structure shall
+contain at least certain members, including the notifcation callback
+function sigev_not.  In implementations described by this specification
+sigev_notify_function and an additional member sigev_notify_attributes
+are defined by macro, but the macros were omitted from this specification.
+Portable application code which referenced sigev_notify_function could
+thuse not be compiled.
+
+In LSB Core generic:
+
+In 12.4. Data Definitions for libc
+12.4.54. signal.h
+
+Add:
+
+#define sigev_notify_attributes _sigev_un._sigev_thread._attribute
+#define sigev_notify_function   _sigev_un._sigev_thread._function

=== added file 'errata/errata_41/3731-libc.txt'
--- a/errata/errata_41/3731-libc.txt	1970-01-01 00:00:00 +0000
+++ b/errata/errata_41/3731-libc.txt	2013-09-17 22:05:11 +0000
@@ -0,0 +1,28 @@
+Specification: LSB Core generic
+Edition of Specification: 4.1
+Type: Error
+Status: Unapproved
+Bug reference: http://bugs.linuxbase.org/show_bug.cgi?id=3731
+
+Rationale: the function mkstemp() is defined by ISO POSIX 2001
+as having a prototype in <stdlib.h>, but was described by this
+specification in a different header. For better alignment,
+move the prototype.
+
+
+In LSB Core generic:
+
+In 12.4. Data Definitions for libc
+
+12.4.59. stdlib.h
+
+Add:
+
+extern int mkstemp(char *__template);
+
+
+12.4.96. unistd.h
+
+Delete:
+
+extern int mkstemp(char *__template);

=== added file 'errata/errata_41/3732-libc.txt'
--- a/errata/errata_41/3732-libc.txt	1970-01-01 00:00:00 +0000
+++ b/errata/errata_41/3732-libc.txt	2013-09-17 22:05:11 +0000
@@ -0,0 +1,28 @@
+Specification: LSB Core generic
+Edition of Specification: 4.1
+Type: Error
+Status: Unapproved
+Bug reference: http://bugs.linuxbase.org/show_bug.cgi?id=3732
+
+Rationale: the function rename() is defined by ISO POSIX 2001
+as having a prototype in <stdio.h>, but was described by this
+specification in a different header. For better alignment,
+move the prototype.
+
+
+In LSB Core generic:
+
+In 12.4. Data Definitions for libc
+
+12.4.58. stdio.h
+
+Add:
+
+extern int rename(const char *__old, const char *__new);
+
+
+12.4.96. unistd.h
+
+Remove:
+
+extern int rename(const char *__old, const char *__new);



More information about the lsb-messages mailing list