* [gentoo-commits] repo/gentoo:master commit in: net-dialup/linux-atm/, net-dialup/linux-atm/files/
@ 2019-07-20 11:45 Sergei Trofimovich
0 siblings, 0 replies; 3+ messages in thread
From: Sergei Trofimovich @ 2019-07-20 11:45 UTC (permalink / raw
To: gentoo-commits
commit: 408621819a85bf67a73efd33a06ea371c20ea5a2
Author: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
AuthorDate: Sat Jul 20 11:45:09 2019 +0000
Commit: Sergei Trofimovich <slyfox <AT> gentoo <DOT> org>
CommitDate: Sat Jul 20 11:45:19 2019 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=40862181
net-dialup/linux-atm: tweak for linux-headers-5.2
Package-Manager: Portage-2.3.69, Repoman-2.3.16
Signed-off-by: Sergei Trofimovich <slyfox <AT> gentoo.org>
.../linux-atm-2.5.2-linux-5.2-SIOCGSTAMP.patch | 41 ++++++++++++++++++++++
net-dialup/linux-atm/linux-atm-2.5.2.ebuild | 1 +
2 files changed, 42 insertions(+)
diff --git a/net-dialup/linux-atm/files/linux-atm-2.5.2-linux-5.2-SIOCGSTAMP.patch b/net-dialup/linux-atm/files/linux-atm-2.5.2-linux-5.2-SIOCGSTAMP.patch
new file mode 100644
index 00000000000..ff91c7f16e0
--- /dev/null
+++ b/net-dialup/linux-atm/files/linux-atm-2.5.2-linux-5.2-SIOCGSTAMP.patch
@@ -0,0 +1,41 @@
+Fix build failure against linux-5.2+:
+ https://www.spinics.net/lists/linux-sh/msg53430.html
+
+--- a/src/maint/atmdump.c
++++ b/src/maint/atmdump.c
+@@ -17,6 +17,16 @@
+ #include <netinet/in.h> /* for htonl and ntohl */
+ #include <atm.h>
+
++#ifndef SIOCGSTAMP
++/* linux-5.2+ added support for 64-bit time_t into ioctls
++ that support 'struct timeval' and removed 'SIOCGSTAMP'
++ define.
++
++ Include 'SIOCGSTAMP' wrapper via linux/sockios.h
++ if does not exist.
++ */
++# include <linux/sockios.h>
++#endif
+
+ static const char *pti[] = { "Data SDU 0","Data SDU 1","Data SDU 0, CE",
+ "Data SDU 1, CE","Segment OAM F5","End-to-end OAM F5","Reserved (RM)",
+--- a/src/maint/saaldump.c
++++ b/src/maint/saaldump.c
+@@ -24,6 +24,16 @@
+
+ #define MAX_ITEM 2048 /* longest string emitted by q.dump */
+
++#ifndef SIOCGSTAMP
++/* linux-5.2+ added support for 64-bit time_t into ioctls
++ that support 'struct timeval' and removed 'SIOCGSTAMP'
++ define.
++
++ Include 'SIOCGSTAMP' wrapper via linux/sockios.h
++ if does not exist.
++ */
++# include <linux/sockios.h>
++#endif
+
+ static int interval = 0; /* display absolute time by default */
+ static int quiet = 0; /* decode Q.2931 messages by default */
diff --git a/net-dialup/linux-atm/linux-atm-2.5.2.ebuild b/net-dialup/linux-atm/linux-atm-2.5.2.ebuild
index 3ea9f3d5e19..7bc4fa72eed 100644
--- a/net-dialup/linux-atm/linux-atm-2.5.2.ebuild
+++ b/net-dialup/linux-atm/linux-atm-2.5.2.ebuild
@@ -25,6 +25,7 @@ CONFIG_CHECK="~ATM"
src_prepare() {
epatch "${FILESDIR}"/${P}-headers.patch
+ epatch "${FILESDIR}"/${P}-linux-5.2-SIOCGSTAMP.patch
sed -i '/#define _LINUX_NETDEVICE_H/d' \
src/arpd/*.c || die "sed command on arpd/*.c files failed"
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-dialup/linux-atm/, net-dialup/linux-atm/files/
@ 2022-08-07 4:24 WANG Xuerui
0 siblings, 0 replies; 3+ messages in thread
From: WANG Xuerui @ 2022-08-07 4:24 UTC (permalink / raw
To: gentoo-commits
commit: a041e5a65ffbd2004f9201f9bd87bac5419dabb0
Author: WANG Xuerui <xen0n <AT> gentoo <DOT> org>
AuthorDate: Sun Aug 7 04:20:58 2022 +0000
Commit: WANG Xuerui <xen0n <AT> gentoo <DOT> org>
CommitDate: Sun Aug 7 04:24:10 2022 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=a041e5a6
net-dialup/linux-atm: fix build with linux-headers-5.19
Closes: https://bugs.gentoo.org/863677
Suggested-by: Andreas K. Hüttel <dilfridge <AT> gentoo.org>
Signed-off-by: WANG Xuerui <xen0n <AT> gentoo.org>
| 24 ++++++++++++++++++++++
net-dialup/linux-atm/linux-atm-2.5.2-r1.ebuild | 1 +
2 files changed, 25 insertions(+)
--git a/net-dialup/linux-atm/files/linux-atm-2.5.2-linux-headers-5.19.patch b/net-dialup/linux-atm/files/linux-atm-2.5.2-linux-headers-5.19.patch
new file mode 100644
index 000000000000..eeb96f262f2e
--- /dev/null
+++ b/net-dialup/linux-atm/files/linux-atm-2.5.2-linux-headers-5.19.patch
@@ -0,0 +1,24 @@
+linux/atm_zatm.h was removed in >=linux-headers-5.19. As the hardware is
+said to be unlikely working on modern systems, just disable its utility
+program to keep the rest building.
+
+See: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=052e1f01bfae8be6
+
+--- a/src/maint/Makefile.am
++++ b/src/maint/Makefile.am
+@@ -1,5 +1,5 @@
+ BOOTPGMS=atmaddr esi
+-SYSPGMS=atmloop atmtcp enitune zntune hediag # nstune
++SYSPGMS=atmloop atmtcp enitune hediag # nstune zntune
+ USRPGMS=atmdiag atmdump sonetdiag saaldump
+
+ INCLUDES=-I$(srcdir)/../q2931 -I$(srcdir)/../saal -I.
+@@ -14,7 +14,7 @@ esi_SOURCES = esi.c
+ atmloop_SOURCES = atmloop.c
+ atmtcp_SOURCES = atmtcp.c
+ enitune_SOURCES = enitune.c
+-zntune_SOURCES = zntune.c
++#zntune_SOURCES = zntune.c
+ #nstune_SOURCES = nstune.c
+
+ atmdiag_SOURCES = atmdiag.c
diff --git a/net-dialup/linux-atm/linux-atm-2.5.2-r1.ebuild b/net-dialup/linux-atm/linux-atm-2.5.2-r1.ebuild
index 123c75c3009d..e86231713615 100644
--- a/net-dialup/linux-atm/linux-atm-2.5.2-r1.ebuild
+++ b/net-dialup/linux-atm/linux-atm-2.5.2-r1.ebuild
@@ -22,6 +22,7 @@ CONFIG_CHECK="~ATM"
PATCHES=(
"${FILESDIR}"/${P}-headers.patch
"${FILESDIR}"/${P}-linux-5.2-SIOCGSTAMP.patch
+ "${FILESDIR}"/${P}-linux-headers-5.19.patch
)
src_prepare() {
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: net-dialup/linux-atm/, net-dialup/linux-atm/files/
@ 2025-02-20 13:51 Sam James
0 siblings, 0 replies; 3+ messages in thread
From: Sam James @ 2025-02-20 13:51 UTC (permalink / raw
To: gentoo-commits
commit: c43b5fb511c078be274b6952fd041189982ea15c
Author: NHOrus <jy6x2b32pie9 <AT> yahoo <DOT> com>
AuthorDate: Thu Feb 20 09:06:24 2025 +0000
Commit: Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Thu Feb 20 13:50:12 2025 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c43b5fb5
net-dialup/linux-atm: fix build on musl, C23
As usual, wrong defines, missing includes, need for gnu extensions,
`int` instead of `socklen_t`, `Bool_t bool`, weird fixes for buggy
and outdated system libraries.
Included fixes for formatting in *printf(), partially cherry-picked
from debian patch
https://sources.debian.org/patches/linux-atm/1:2.5.1-7/misc/
Closes: https://bugs.gentoo.org/897842
Closes: https://bugs.gentoo.org/949721
Closes: https://bugs.gentoo.org/712860
Signed-off-by: NHOrus <jy6x2b32pie9 <AT> yahoo.com>
Closes: https://github.com/gentoo/gentoo/pull/40666
Signed-off-by: Sam James <sam <AT> gentoo.org>
.../linux-atm/files/linux-atm-2.5.2-c99-musl.patch | 113 ++++++++++++
.../files/linux-atm-2.5.2-fix-booleans.patch | 42 +++++
.../files/linux-atm-2.5.2-fix-formatting.patch | 192 +++++++++++++++++++++
.../files/linux-atm-2.5.2-remove-bad-define.patch | 31 ++++
.../files/linux-atm-2.5.2-socklen-types.patch | 182 +++++++++++++++++++
net-dialup/linux-atm/linux-atm-2.5.2-r2.ebuild | 48 ++++++
6 files changed, 608 insertions(+)
diff --git a/net-dialup/linux-atm/files/linux-atm-2.5.2-c99-musl.patch b/net-dialup/linux-atm/files/linux-atm-2.5.2-c99-musl.patch
new file mode 100644
index 000000000000..7c39bb0482c1
--- /dev/null
+++ b/net-dialup/linux-atm/files/linux-atm-2.5.2-c99-musl.patch
@@ -0,0 +1,113 @@
+Author: NHOrus <jy6x2b32pie9@yahoo.com>
+Bug: https://bugs.gentoo.org/897842
+Enabling the system extension that gate some POSIX features
+and fixing missing includes, 32/64 bit confusion, standard
+atexit function instead of non-standard, and function signature
+--- a/configure.in
++++ b/configure.in
+@@ -34,6 +34,7 @@ dnl We have some special PERL scripts wh
+ AC_PATH_PROG(PERL, perl)
+ AC_SUBST(PERL)
+
++AC_USE_SYSTEM_EXTENSIONS
+
+ dnl Check for needed header files
+ AC_CHECK_HEADER(asm/errno.h, ,
+--- a/src/lib/unix.c
++++ b/src/lib/unix.c
+@@ -10,6 +10,7 @@
+ #include <stdio.h>
+ #include <unistd.h>
+ #include <errno.h>
++#include <string.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <sys/socket.h>
+--- a/src/sigd/policy.c
++++ b/src/sigd/policy.c
+@@ -8,6 +8,7 @@
+
+ #include <atm.h>
+ #include <atmd.h>
++#include <string.h>
+
+ #include "proto.h" /* for "pretty" */
+ #include "policy.h"
+--- a/src/sigd/kernel.c
++++ b/src/sigd/kernel.c
+@@ -10,6 +10,7 @@
+ #include <stdio.h>
+ #include <errno.h>
+ #include <assert.h>
++#include <string.h>
+
+ #include <atm.h>
+ #include <linux/atmsvc.h>
+--- a/src/sigd/atmsigd.c
++++ b/src/sigd/atmsigd.c
+@@ -283,12 +283,12 @@ static void setup_signals(void)
+ /* ------------------------------- main ... ------------------------------- */
+
+
+-static void trace_on_exit(int status,void *dummy)
++static void trace_on_exit(void)
+ {
+ char path[PATH_MAX+1];
+ FILE *file;
+
+- if (!status) return;
++// if (!status) return;
+ if (!dump_dir) file = stderr;
+ else {
+ sprintf(path,"atmsigd.%d.trace.exit",getpid());
+@@ -517,7 +517,7 @@ int main(int argc,char **argv)
+ exit(0);
+ }
+ }
+- (void) on_exit(trace_on_exit,NULL);
++ (void) atexit(trace_on_exit);
+ poll_loop();
+ close_all();
+ for (sig = entities; sig; sig = sig->next) stop_saal(&sig->saal);
+--- a/src/led/address.c
++++ b/src/led/address.c
+@@ -33,6 +33,7 @@
+ #include <sys/ioctl.h>
+ #include <unistd.h>
+ #include <errno.h>
++#include <string.h>
+
+ #include <atm.h>
+ #include <linux/atmdev.h>
+--- a/src/led/conn.c
++++ b/src/led/conn.c
+@@ -405,7 +405,7 @@ Conn_t *accept_conn(Conn_t *conn)
+ {
+ Conn_t *new;
+ struct sockaddr_atmsvc addr;
+- size_t len;
++ socklen_t len;
+ int fd;
+ char buff[MAX_ATM_ADDR_LEN+1];
+
+--- a/src/led/display.c
++++ b/src/led/display.c
+@@ -6,6 +6,7 @@
+ #include <config.h>
+ #endif
+
++#include <string.h>
+ #include <atm.h>
+ #include <atmd.h>
+
+--- a/src/mpoad/io.c
++++ b/src/mpoad/io.c
+@@ -16,7 +16,7 @@
+ #include <syscall.h>
+ #include <linux/poll.h>
+ #define SYS_poll 168
+-_syscall3(int,poll,struct pollfd *,ufds,unsigned int,nfds,int,timeout);
++int _syscall3(int, int poll,struct pollfd *,int ufds,unsigned int,int nfds,int,int timeout);
+ #endif
+ #include <atm.h>
+ #include <linux/types.h>
diff --git a/net-dialup/linux-atm/files/linux-atm-2.5.2-fix-booleans.patch b/net-dialup/linux-atm/files/linux-atm-2.5.2-fix-booleans.patch
new file mode 100644
index 000000000000..3b563cbcdb19
--- /dev/null
+++ b/net-dialup/linux-atm/files/linux-atm-2.5.2-fix-booleans.patch
@@ -0,0 +1,42 @@
+Correct for building with C23, rename `bool` struct member
+https://bugs.gentoo.org/949721
+--- a/src/lane/load.c
++++ b/src/lane/load.c
+@@ -498,8 +498,8 @@
+ break;
+ case BOOLEAN:
+ Debug_unit(&load_unit, "Variable is boolean: %s",
+- g_return.bool==BL_TRUE?"True":"False");
+- set_var_bool(curr_unit, varname, g_return.bool);
++ g_return.boolval==BL_TRUE?"True":"False");
++ set_var_bool(curr_unit, varname, g_return.boolval);
+ break;
+ case INTEGER:
+ Debug_unit(&load_unit, "Variable is integer: %d", g_return.intti);
+--- a/src/lane/load_lex.h
++++ b/src/lane/load_lex.h
+@@ -24,7 +24,7 @@
+ #define END 0
+
+ typedef struct {
+- Bool_t bool;
++ Bool_t boolval;
+ int intti;
+ AtmAddr_t *atmaddress;
+ LaneDestination_t *destaddr;
+--- a/src/lane/load_lex.l
++++ b/src/lane/load_lex.l
+@@ -44,11 +44,11 @@
+ return ATMADDRESS;
+ }
+ True |
+-true {g_return.bool = BL_TRUE;
++true {g_return.boolval = BL_TRUE;
+ return BOOLEAN;
+ }
+ False |
+-false {g_return.bool = BL_FALSE;
++false {g_return.boolval = BL_FALSE;
+ return BOOLEAN;
+ }
+ \#.* {}
diff --git a/net-dialup/linux-atm/files/linux-atm-2.5.2-fix-formatting.patch b/net-dialup/linux-atm/files/linux-atm-2.5.2-fix-formatting.patch
new file mode 100644
index 000000000000..00d5d29060e2
--- /dev/null
+++ b/net-dialup/linux-atm/files/linux-atm-2.5.2-fix-formatting.patch
@@ -0,0 +1,192 @@
+Changes cherry-picked from
+https://sources.debian.org/patches/linux-atm/1:2.5.1-7/misc/
+https://sources.debian.org/patches/linux-atm/1:2.5.1-7/linux-atm-2.5.2-c99-musl.patch/
+to fix -Werror=format
+Also all changes I did on second pass for printing size_t and friends
+https://bugs.gentoo.org/949721
+--- a/src/ilmid/asn1/asn_int.c
++++ b/src/ilmid/asn1/asn_int.c
+@@ -185,7 +185,7 @@ FILE* f _AND_
+ AsnInt* v _AND_
+ unsigned short int indent)
+ {
+- fprintf(f,"%d", *v);
++ fprintf(f,"%ld", *v);
+ }
+
+
+--- a/src/ilmid/asn1/asn_oid.c
++++ b/src/ilmid/asn1/asn_oid.c
+@@ -127,7 +127,7 @@ unsigned short int indent)
+ if (firstArcNum > 2)
+ firstArcNum = 2;
+
+- fprintf(f,"%u %u", firstArcNum, arcNum - (firstArcNum * 40));
++ fprintf(f,"%d %lu", firstArcNum, arcNum - (firstArcNum * 40));
+
+ for (; i < v->octetLen ; )
+ {
+@@ -136,7 +136,7 @@ unsigned short int indent)
+
+ arcNum = (arcNum << 7) + (v->octs[i] & 0x7f);
+ i++;
+- fprintf(f," %u", arcNum);
++ fprintf(f," %lu", arcNum);
+ }
+ fprintf(f,"}");
+
+--- a/src/lib/ans.c
++++ b/src/lib/ans.c
+@@ -41,7 +41,7 @@
+ static int ans(const char *text,int wanted,void *result,int res_len)
+ {
+ unsigned char answer[MAX_ANSWER];
+- unsigned char name[MAX_NAME];
++ char name[MAX_NAME];
+ unsigned char *pos,*data,*found;
+ int answer_len,name_len,data_len,found_len;
+ int questions,answers;
+--- a/src/test/ttcp.c
++++ b/src/test/ttcp.c
+@@ -664,7 +664,7 @@ int no_check = 0;
+ exit(0);
+
+ usage:
+- fprintf(stderr, Usage);
++ fprintf(stderr, "%s", Usage);
+ exit(1);
+ }
+
+Further changes are novel and fix size_t formatting
+--- a/src/arpd/atmarp.c
++++ b/src/arpd/atmarp.c
+@@ -67,7 +67,7 @@
+ }
+ if (req->type == art_query) return query_result(&reply);
+ if (len != sizeof(int)) {
+- fprintf(stderr,"bad read: %d != %d\n",len,sizeof(int));
++ fprintf(stderr,"bad read: %d != %zu\n",len,sizeof(int));
+ exit(1);
+ }
+ if (*(int *) &reply < 0) {
+--- a/src/ilmid/asn1/asn_int.c
++++ b/src/ilmid/asn1/asn_int.c
+@@ -370,5 +370,5 @@
+ UAsnInt* v _AND_
+ unsigned short int indent)
+ {
+- fprintf(f,"%u", *v);
++ fprintf(f,"%lu", *v);
+ }
+--- a/src/lane/mem_lecs.c
++++ b/src/lane/mem_lecs.c
+@@ -77,7 +77,7 @@
+ free(tmp->start);
+ free(tmp);
+ } else {
+- printf("Trying to free memory by %s, allocated by %s, size %d\n",
++ printf("Trying to free memory by %s, allocated by %s, size %zu\n",
+ unit, tmp->unit, tmp->size);
+ }
+ }
+@@ -89,6 +89,6 @@
+
+ printf("Dumping memory allocation\n");
+ for (tmp=memlist;tmp;tmp=tmp->next)
+- printf("%s : %d bytes from %p\n", tmp->unit, tmp->size, tmp->start);
++ printf("%s : %zu bytes from %p\n", tmp->unit, tmp->size, tmp->start);
+ printf("-------------------------\n");
+ }
+--- a/src/maint/atmaddr.c
++++ b/src/maint/atmaddr.c
+@@ -97,7 +97,7 @@
+ }
+ if (cmd != ATM_GETADDR) return 0;
+ if (req.length % sizeof(*addr)) {
+- fprintf(stderr,"internal error: len %d %% %d\n",req.length,
++ fprintf(stderr,"internal error: len %d %% %zu\n",req.length,
+ sizeof(*addr));
+ return 1;
+ }
+--- a/src/maint/atmtcp.c
++++ b/src/maint/atmtcp.c
+@@ -579,7 +579,7 @@
+ exit(1);
+ }
+ if (wrote != sizeof(stream)) {
+- fprintf(stderr,"short write (%d < %d)\n",wrote,sizeof(stream));
++ fprintf(stderr,"short write (%d < %zu)\n",wrote,sizeof(stream));
+ exit(1);
+ }
+ wrote = write(fd,data,size);
+--- a/src/mpoad/lecs.c
++++ b/src/mpoad/lecs.c
+@@ -157,7 +157,7 @@
+ /* Sampo-Add: end */
+ }
+ if (end_of_tlvs - tlvs != 0)
+- printf("mpcd: lecs.c: get_reply: ignoring %d bytes of trailing TLV carbage\n",
++ printf("mpcd: lecs.c: get_reply: ignoring %ld bytes of trailing TLV carbage\n",
+ end_of_tlvs - tlvs);
+ return 1;
+ }
+--- a/src/switch/swc.c
++++ b/src/switch/swc.c
+@@ -28,7 +28,7 @@
+ exit(1);
+ }
+ if (size != sizeof(*msg)) {
+- fprintf(stderr,"bad write: %d != %d\n",size,sizeof(*msg));
++ fprintf(stderr,"bad write: %d != %zu\n",size,sizeof(*msg));
+ exit(1);
+ }
+ size = read(s,msg,sizeof(*msg));
+@@ -37,7 +37,7 @@
+ exit(1);
+ }
+ if (size != sizeof(*msg)) {
+- fprintf(stderr,"bad read: %d != %d\n",size,sizeof(*msg));
++ fprintf(stderr,"bad read: %d != %zu\n",size,sizeof(*msg));
+ exit(1);
+ }
+ }
+--- a/src/test/isp.c
++++ b/src/test/isp.c
+@@ -37,7 +37,7 @@
+ wrote = write(sock,msg,sizeof(*msg));
+ if (wrote == sizeof(*msg)) return;
+ if (wrote < 0) perror("write");
+- else fprintf(stderr,"bad write: %d != %d\n",wrote,sizeof(*msg));
++ else fprintf(stderr,"bad write: %d != %zu\n",wrote,sizeof(*msg));
+ exit(1);
+ }
+
+@@ -49,7 +49,7 @@
+ got = read(sock,msg,sizeof(*msg));
+ if (got == sizeof(*msg)) return;
+ if (got < 0) perror("read");
+- else fprintf(stderr,"bad read: %d != %d\n",got,sizeof(*msg));
++ else fprintf(stderr,"bad read: %d != %zu\n",got,sizeof(*msg));
+ exit(1);
+ }
+
+--- a/src/test/window.c
++++ b/src/test/window.c
+@@ -180,7 +180,7 @@
+ /* Get a reply */
+ size = read(s2, buffer2, REPLY_SIZE);
+ if (size != REPLY_SIZE) {
+- fprintf(stderr,"Received reply of length %d, should be %d.\n",
++ fprintf(stderr,"Received reply of length %zd, should be %d.\n",
+ size,REPLY_SIZE);
+ }
+ #endif
+@@ -264,7 +264,7 @@
+ }
+
+ } else {
+- fprintf(stderr,"Received message of length %d, should be %d.\n",
++ fprintf(stderr,"Received message of length %zd, should be %d.\n",
+ size,PINGPONG_SIZE);
+ }
+ }
diff --git a/net-dialup/linux-atm/files/linux-atm-2.5.2-remove-bad-define.patch b/net-dialup/linux-atm/files/linux-atm-2.5.2-remove-bad-define.patch
new file mode 100644
index 000000000000..8eb17463bc15
--- /dev/null
+++ b/net-dialup/linux-atm/files/linux-atm-2.5.2-remove-bad-define.patch
@@ -0,0 +1,31 @@
+previously was sed -i '/#define _LINUX_NETDEVICE_H/d' src/arpd/*.c in ebuild
+--- a/src/arpd/arp.c
++++ b/src/arpd/arp.c
+@@ -15,7 +15,6 @@
+ #include <sys/types.h>
+ #include <sys/socket.h> /* for linux/if_arp.h */
+ #include <netinet/in.h> /* for ntohs, etc. */
+-#define _LINUX_NETDEVICE_H /* very crude hack for glibc2 */
+ #include <linux/types.h>
+ #include <linux/if_arp.h>
+ #include <linux/if_ether.h>
+--- a/src/arpd/io.c
++++ b/src/arpd/io.c
+@@ -21,7 +21,6 @@
+ #include <atm.h>
+ #include <linux/atmclip.h> /* for CLIP_DEFAULT_IDLETIMER */
+ #include <linux/atmarp.h>
+-#define _LINUX_NETDEVICE_H /* glibc2 */
+ #include <linux/types.h>
+ #include <linux/if_arp.h>
+
+--- a/src/arpd/itf.c
++++ b/src/arpd/itf.c
+@@ -12,7 +12,6 @@
+ #include <sys/types.h>
+ #include <linux/atmclip.h>
+ #include <sys/socket.h>
+-#define _LINUX_NETDEVICE_H /* glibc2 */
+ #include <linux/types.h>
+ #include <linux/if_arp.h>
+
diff --git a/net-dialup/linux-atm/files/linux-atm-2.5.2-socklen-types.patch b/net-dialup/linux-atm/files/linux-atm-2.5.2-socklen-types.patch
new file mode 100644
index 000000000000..f6ae96e6d1e7
--- /dev/null
+++ b/net-dialup/linux-atm/files/linux-atm-2.5.2-socklen-types.patch
@@ -0,0 +1,182 @@
+Correct type used for all calls to socket-related business,
+so the won't throw errors.
+https://bugs.gentoo.org/949721
+--- a/src/arpd/io.c
++++ b/src/arpd/io.c
+@@ -276,7 +276,8 @@
+ struct atm_qos qos;
+ ENTRY *entry;
+ VCC *vcc;
+- int fd,len,size,error;
++ int fd,error;
++ socklen_t len,size;
+
+ len = sizeof(addr);
+ if ((fd = accept(incoming,(struct sockaddr *) &addr,&len)) < 0) {
+@@ -613,7 +614,8 @@
+
+ int get_local(int fd,struct sockaddr_atmsvc *addr)
+ {
+- int length,result;
++ int result;
++ socklen_t length;
+
+ length = sizeof(struct sockaddr_atmsvc);
+ result = getsockname(fd,(struct sockaddr *) addr,&length);
+--- a/src/arpd/table.c
++++ b/src/arpd/table.c
+@@ -101,7 +101,8 @@
+ char addr_buf[MAX_ATM_ADDR_LEN+1];
+ char qos_buf[MAX_ATM_QOS_LEN+1];
+ struct atm_qos qos;
+- int size,sndbuf;
++ int sndbuf;
++ socklen_t size;
+
+ size = sizeof(addr);
+ if (getpeername(vcc->fd,(struct sockaddr *) &addr,&size) < 0) {
+--- a/src/include/atmd.h
++++ b/src/include/atmd.h
+@@ -104,7 +104,7 @@
+ typedef struct {
+ int s; /* socket */
+ struct sockaddr_un addr; /* reply address */
+- int size; /* address size */
++ socklen_t size; /* address size */
+ } UN_CTX;
+
+
+--- a/src/lane/connect_bus.c
++++ b/src/lane/connect_bus.c
+@@ -170,7 +170,8 @@
+ data_handler(const Event_t *event, void *funcdata)
+ {
+ Conn_t *tmp, *newconn;
+- int fd, nbytes;
++ int fd;
++ socklen_t nbytes;
+ static char buffer[BUFSIZE];
+ struct sockaddr_atmsvc addr;
+
+--- a/src/lane/connect.c
++++ b/src/lane/connect.c
+@@ -258,7 +258,8 @@
+ data_handler(const Event_t *event, void *funcdata)
+ {
+ Conn_t *tmp, *newconn;
+- int fd, nbytes;
++ int fd;
++ socklen_t nbytes;
+ static char buffer[BUFSIZE];
+ LaneControl_t *ctmp;
+ struct sockaddr_atmsvc addr;
+--- a/src/lane/lane_atm.c
++++ b/src/lane/lane_atm.c
+@@ -138,7 +138,7 @@
+ struct atm_blli blli;
+ struct atm_qos qos;
+ int fd, ret;
+- int len = sizeof(address);
++ socklen_t len = sizeof(address);
+
+ fd = socket(PF_ATMSVC, SOCK_DGRAM, 0);
+ if (fd <0) {
+--- a/src/lane/lecs.c
++++ b/src/lane/lecs.c
+@@ -119,7 +119,7 @@
+ int just_dump=0;
+ fd_set fds;
+ struct sockaddr_atmsvc client;
+- int len;
++ socklen_t len;
+ unsigned char buffer[P_SIZE];
+
+ while(i!=-1) {
+--- a/src/lib/sdu2cell.c
++++ b/src/lib/sdu2cell.c
+@@ -15,7 +15,8 @@
+ {
+ struct atm_qos qos;
+ int trailer,total,cells;
+- int size,i;
++ int i;
++ socklen_t size;
+
+ size = sizeof(qos);
+ if (getsockopt(s,SOL_AAL,SO_ATMQOS,&qos,&size) < 0) return -1;
+--- a/src/lib/unix.c
++++ b/src/lib/unix.c
+@@ -64,7 +64,7 @@
+ int un_recv_connect(int s,void *buf,int size)
+ {
+ struct sockaddr_un addr;
+- int addr_size;
++ socklen_t addr_size;
+ int len;
+
+ addr_size = sizeof(addr);
+--- a/src/maint/atmtcp.c
++++ b/src/maint/atmtcp.c
+@@ -817,7 +817,8 @@
+ }
+ else if (!strcmp(ARG,"listen") ||
+ (do_background = !strcmp(ARG,"listen-bg"))) {
+- int fd,port,addr_len;
++ int fd,port;
++ socklen_t addr_len;
+ int *fd2 = alloc_t(int);
+
+ if ((fd = socket(PF_INET,SOCK_STREAM,0)) < 0) {
+--- a/src/mpoad/io.c
++++ b/src/mpoad/io.c
+@@ -521,7 +521,8 @@
+ static int accept_conn(int slot)
+ {
+ struct sockaddr_atmsvc sa;
+- int i, new_fd, sa_len;
++ int i, new_fd;
++ socklen_t sa_len;
+
+ sa_len = sizeof(sa);
+ new_fd = accept(fds[slot].fd, (struct sockaddr *)&sa, &sa_len);
+--- a/src/sigd/io.c
++++ b/src/sigd/io.c
+@@ -355,7 +355,7 @@
+ error = 0;
+ if (bind(s,(struct sockaddr *) &addr,sizeof(addr)) < 0) error = errno;
+ else {
+- int size;
++ socklen_t size;
+
+ size = sizeof(addr);
+ if (getsockname(s,(struct sockaddr *) &addr,&size) < 0)
+--- a/src/test/ttcp.c
++++ b/src/test/ttcp.c
+@@ -92,7 +92,8 @@
+ struct sockaddr_atmsvc satm;
+ struct atm_qos qos;
+
+-int domain, fromlen;
++int domain;
++socklen_t fromlen;
+ int fd; /* fd of network socket */
+
+ int buflen = 8 * 1024; /* length of buffer */
+@@ -466,7 +467,7 @@
+
+ {
+ struct sockaddr_atmsvc peer;
+- int peerlen = sizeof(peer);
++ socklen_t peerlen = sizeof(peer);
+ if (getpeername(fd, (struct sockaddr *) &peer,
+ &peerlen) < 0) {
+ err("getpeername");
+@@ -498,7 +499,7 @@
+ /* set socket buffer size */
+ #if defined(SO_SNDBUF) || defined(SO_RCVBUF)
+ if (sockbufsize) {
+- int len;
++ socklen_t len;
+
+ if (trans) {
+ /* set send socket buffer if we are transmitting */
diff --git a/net-dialup/linux-atm/linux-atm-2.5.2-r2.ebuild b/net-dialup/linux-atm/linux-atm-2.5.2-r2.ebuild
new file mode 100644
index 000000000000..6c17e028c243
--- /dev/null
+++ b/net-dialup/linux-atm/linux-atm-2.5.2-r2.ebuild
@@ -0,0 +1,48 @@
+# Copyright 1999-2025 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+inherit autotools flag-o-matic linux-info
+
+DESCRIPTION="Tools for ATM"
+HOMEPAGE="https://linux-atm.sourceforge.net/"
+SRC_URI="https://downloads.sourceforge.net/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~loong ~m68k ~mips ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+BDEPEND="sys-devel/bison"
+
+RESTRICT="test"
+
+CONFIG_CHECK="~ATM"
+
+PATCHES=(
+ "${FILESDIR}"/${P}-headers.patch
+ "${FILESDIR}"/${P}-linux-5.2-SIOCGSTAMP.patch
+ "${FILESDIR}"/${P}-linux-headers-5.19.patch
+ "${FILESDIR}"/${P}-c99-musl.patch
+ "${FILESDIR}"/${P}-remove-bad-define.patch
+ "${FILESDIR}"/${P}-fix-booleans.patch
+ "${FILESDIR}"/${P}-socklen-types.patch
+ "${FILESDIR}"/${P}-fix-formatting.patch
+)
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ append-flags -fno-strict-aliasing
+ export YACC=bison
+ econf
+}
+
+src_install() {
+ default
+ find "${ED}" -name '*.la' -delete || die
+ dodoc doc/README* doc/atm*
+}
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2025-02-20 13:51 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-07-20 11:45 [gentoo-commits] repo/gentoo:master commit in: net-dialup/linux-atm/, net-dialup/linux-atm/files/ Sergei Trofimovich
-- strict thread matches above, loose matches on Subject: below --
2022-08-07 4:24 WANG Xuerui
2025-02-20 13:51 Sam James
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox