Package Details: libusrsctp 0.9.5.0-3

Git Clone URL: https://aur.archlinux.org/libusrsctp.git (read-only, click to copy)
Package Base: libusrsctp
Description: A portable SCTP userland stack
Upstream URL: https://github.com/sctplab/usrsctp
Licenses: custom
Conflicts: libusrsctp-git
Provides: libusrsctp-git
Submitter: aperez
Maintainer: aperez
Last Packager: aperez
Votes: 6
Popularity: 0.48
First Submitted: 2016-07-07 16:56
Last Updated: 2021-07-19 07:14

Latest Comments

aperez commented on 2021-07-19 07:15

I have pushed an update to the PKGBUILD which should fix all the current build issues, and make it more resistant to changes in default compiler warnings when the compiler packages are updated. Please let me know if you find further issues =)

Dreick commented on 2021-07-18 20:16

The given package does not build, like the comment below already said.

Removing the configure-flag "--disable-debug" from PKGBUILD gives the Error:

397 | # warning _FORTIFY_SOURCE requires compiling with optimization (-O)

This results in following solution:

Adding "-O" to _EXTRA_FLAGS in PKGBUILD leads to a buildable package.

dschopf commented on 2021-06-25 13:39

Does not compile using GCC 11.1.0:

In file included from user_mbuf.c:44:
In function 'm_move_pkthdr',
    inlined from 'm_prepend' at user_mbuf.c:1333:3:
user_mbuf.h:223:30: error: '*mret.m_hdr.mh_flags' may be used uninitialized [-Werror=maybe-uninitialized]
  223 | #define m_flags         m_hdr.mh_flags
user_mbuf.c:824:60: note: in expansion of macro 'm_flags'
  824 |         to->m_flags = (from->m_flags & M_COPYFLAGS) | (to->m_flags & M_EXT);
      |                                                            ^~~~~~~
user_mbuf.c: In function 'm_prepend':
user_mbuf.h:223:30: error: '*mret.m_hdr.mh_flags' may be used uninitialized [-Werror=maybe-uninitialized]
  223 | #define m_flags         m_hdr.mh_flags
user_mbuf.c:1336:16: note: in expansion of macro 'm_flags'
 1336 |         if (m->m_flags & M_PKTHDR) {
      |                ^~~~~~~
In function 'm_dup1',
    inlined from 'm_pulldown' at user_mbuf.c:990:7:
user_mbuf.h:221:30: error: '*mret.m_hdr.mh_data' may be used uninitialized [-Werror=maybe-uninitialized]
  221 | #define m_data          m_hdr.mh_data
      |                              ^
user_mbuf.h:96:35: note: in expansion of macro 'm_data'
   96 | #define mtod(m, t)      ((t)((m)->m_data))
      |                                   ^~~~~~
user_mbuf.c:926:33: note: in expansion of macro 'mtod'
  926 |         m_copydata(m, off, len, mtod(n, caddr_t));
      |                                 ^~~~
In function 'm_dup_pkthdr',
    inlined from 'm_dup1' at user_mbuf.c:922:18,
    inlined from 'm_pulldown' at user_mbuf.c:990:7:
user_mbuf.h:223:30: error: '*mret.m_hdr.mh_flags' may be used uninitialized [-Werror=maybe-uninitialized]
  223 | #define m_flags         m_hdr.mh_flags
user_mbuf.c:1218:60: note: in expansion of macro 'm_flags'
 1218 |         to->m_flags = (from->m_flags & M_COPYFLAGS) | (to->m_flags & M_EXT);
      |                                                            ^~~~~~~
user_mbuf.c: In function 'm_pulldown':
user_mbuf.h:221:30: error: '*mret.m_hdr.mh_data' may be used uninitialized [-Werror=maybe-uninitialized]
  221 | #define m_data          m_hdr.mh_data
      |                              ^
user_mbuf.h:96:35: note: in expansion of macro 'm_data'
   96 | #define mtod(m, t)      ((t)((m)->m_data))
      |                                   ^~~~~~
user_mbuf.c:1058:16: note: in expansion of macro 'mtod'
 1058 |         memcpy(mtod(o, caddr_t), mtod(n, caddr_t) + off, hlen);
      |                ^~~~
user_mbuf.c: In function 'm_split':
user_mbuf.h:393:21: error: '*mret.m_hdr.mh_data' may be used uninitialized [-Werror=maybe-uninitialized]
  393 |         (m)->m_data += (MLEN - (len)) & ~(sizeof(long) - 1);            \
      |                     ^~
user_mbuf.c:1531:17: note: in expansion of macro 'M_ALIGN'
 1531 |                 M_ALIGN(n, remain);
      |                 ^~~~~~~
cc1: all warnings being treated as errors

foxxy commented on 2021-05-31 11:30

These PKGBUILD lines don't work if the values in /etc/makepkg.conf are split across multiple lines (which is the case in the default). Maybe bash-source makepkg.conf and echo the value instead?

  eval "$(sed -e '/^CFLAGS=/p' -e d /etc/makepkg.conf)"
  eval "$(sed -e '/^CXXFLAGS=/p' -e d /etc/makepkg.conf)"
  eval "$(sed -e '/^LDFLAGS=/p' -e d /etc/makepkg.conf)"

aperez commented on 2019-07-19 13:36

@dimtych: I think it may be worth it to raise an issue to the developers, trying to build from the Git master branch also fails, and this seems like a legit case in which the compiler is detecting a problem in the code.

dimytch commented on 2019-07-01 11:27

Should I post the bugreport to authors?

libtool: compile:  gcc -DPACKAGE_NAME=\"libusrsctp\" -DPACKAGE_TARNAME=\"libusrsctp\" -DPACKAGE_VERSION=\"0.9.3.0\" "-DPACKAGE_STRING=\"libusrsctp 0.9.3.0\"" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE_URL=\"\" -DPACKAGE=\"libusrsctp\" -DVERSION=\"0.9.3.0\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_DLFCN_H=1 -DLT_OBJDIR=\".libs/\" -DINET=1 -DINET6=1 -DHAVE_SOCKET=1 -DHAVE_INET_ADDR=1 -DHAVE_SYS_QUEUE_H=1 -DHAVE_LINUX_IF_ADDR_H=1 -DHAVE_LINUX_RTNETLINK_H=1 -DHAVE_NETINET_IP_ICMP_H=1 -I. -D_FORTIFY_SOURCE=2 -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -Wno-error=unused-but-set-variable -std=c99 -pthread -D_GNU_SOURCE -pedantic -Wall -Werror -DSCTP_PROCESS_LEVEL_LOCKS -DSCTP_SIMPLE_ALLOCATOR -D__Userspace__ -D__Userspace_os_Linux -march=x86-64 -mtune=generic -O2 -pipe -fno-plt -Wno-error=unused-but-set-variable -std=c99 -pthread -D_GNU_SOURCE -pedantic -Wall -Werror -MT netinet/libusrsctp_la-sctp_input.lo -MD -MP -MF netinet/.deps/libusrsctp_la-sctp_input.Tpo -c netinet/sctp_input.c  -fPIC -DPIC -o netinet/.libs/libusrsctp_la-sctp_input.o
netinet/sctp_input.c: In function ‘sctp_process_cookie_existing’:
netinet/sctp_input.c:1712:14: error: taking address of packed member of ‘struct sctp_state_cookie’ may result in an unaligned pointer value [-Werror=address-of-packed-member]
 1712 |              &cookie->time_entered,
      |              ^~~~~~~~~~~~~~~~~~~~~
netinet/sctp_input.c: In function ‘sctp_process_cookie_new’:
netinet/sctp_input.c:2462:9: error: taking address of packed member of ‘struct sctp_state_cookie’ may result in an unaligned pointer value [-Werror=address-of-packed-member]
 2462 |         &cookie->time_entered, sctp_align_unsafe_makecopy,
      |         ^~~~~~~~~~~~~~~~~~~~~
netinet/sctp_input.c: In function ‘sctp_handle_stream_reset_response’:
netinet/sctp_input.c:3807:64: error: taking address of packed member of ‘struct sctp_stream_reset_out_request’ may result in an unaligned pointer value [-Werror=address-of-packed-member]
 3807 |      sctp_reset_out_streams(stcb, number_entries, req_out_param->list_of_streams);
      |                                                   ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
netinet/sctp_input.c:3820:66: error: taking address of packed member of ‘struct sctp_stream_reset_out_request’ may result in an unaligned pointer value [-Werror=address-of-packed-member]
 3820 |      sctp_reset_clear_pending(stcb, number_entries, req_out_param->list_of_streams);
      |                                                     ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~
netinet/sctp_input.c: In function ‘sctp_handle_str_reset_request_out’:
netinet/sctp_input.c:4098:50: error: taking address of packed member of ‘struct sctp_stream_reset_out_request’ may result in an unaligned pointer value [-Werror=address-of-packed-member]
 4098 |    sctp_reset_in_stream(stcb, number_entries, req->list_of_streams);
      |                                               ~~~^~~~~~~~~~~~~~~~~
cc1: all warnings being treated as errors
make[1]: *** [Makefile:710: netinet/libusrsctp_la-sctp_input.lo] Error 1
make[1]: Leaving directory '/tmp/yaourt-tmp-devuser/aur-libusrsctp/src/usrsctp-0.9.3.0/usrsctplib'
make: *** [Makefile:404: all-recursive] Error 1
==> ERROR: A failure occurred in build().
    Aborting...
==> ERROR: Makepkg was unable to build libusrsctp.

ekpyron commented on 2019-06-29 16:31

I needed to add -Wno-error=address-of-packed-member to _EXTRA_FLAGS in the PKGBUILD to get it to compile.

eimis commented on 2017-06-22 12:52

was able to compile this on a raspberry pi 1. had to change line 28:
./configure enable_warnings_as_errors=no --prefix=/usr --disable-debug

probably a bad idea but had to get it compile.
http://www.mediafire.com/file/7b1cy085qan3th7/libusrsctp-0.9.3.0-1-armv6h.pkg.tar