<!--
Kamailio Project uses GitHub Issues only for bugs in the code or feature requests. Please use this template only for bug reports.
If you have questions about using Kamailio or related to its configuration file, ask on sr-users mailing list:
* http://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
If you have questions about developing extensions to Kamailio or its existing C code, ask on sr-dev mailing list:
* http://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-dev
Please try to fill this template as much as possible for any issue. It helps the developers to troubleshoot the issue.
If there is no content to be filled in a section, the entire section can be removed.
You can delete the comments from the template sections when filling.
You can delete next line and everything above before submitting (it is a comment).
-->
### Description
<!--
Explain what you did, what you expected to happen, and what actually happened.
-->
### Troubleshooting
#### Reproduction
<!--
If the issue can be reproduced, describe how it can be done.
-->
Point your browser to https://deb.kamailio.org
#### Debugging Data
<!--
If you got a core dump, use gdb to extract troubleshooting data - full backtrace,
local variables and the list of the code at the issue location.
gdb /path/to/kamailio /path/to/corefile
bt full
info locals
list
If you are familiar with gdb, feel free to attach more of what you consider to
be relevant.
-->
The lets encrypt certificate expired on 2019-11-30
--
You are receiving this because you are subscribed to this thread.
Reply to this email directly or view it on GitHub:
https://github.com/kamailio/kamailio/issues/2161
Hello,
I would like to announce that Call for Presentations at Kamailio World
2020 is now open. You can submit your proposal or see more details at:
- https://www.kamailioworld.com/k08/call-for-speakers/
The 8th edition of the event takes place again in Berlin, Germany,
during April 27-29, 2020. Expect over 150 participants, developers and
community members as well as representatives of other popular open
source VoIP projects such as Asterisk or FreeSwitch.
Looking forward to meeting many of you there!
Cheers,
Daniel
--
Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
Kamailio World Conference - April 27-29, 2020, in Berlin -- www.kamailioworld.com
(I'm new and this issue is nonobvious, so I'm posting to the list
instead of opening an issue, hoping sr-dev is the right call.)
I am packaging kamailio for pkgsrc, a multi-OS multi-CPU portable
packaging system, with NetBSD and SmartOS being perhaps the biggest
targets. Mostly this is going well, and I'm probably doing a few things
wrong (but am not asking for help on those yet).
During the build (NetBSD 8 amd64), I got a failure in
src/lib/srdb1/db_ut.c:
CC (gcc) [L libsrdb1.so.1.0] db_ut.o
In file included from db_ut.c:63:0:
/usr/include/stdlib.h:273:28: error: unknown type name 'u_char'
void arc4random_addrandom(u_char *, int);
^
/usr/include/stdlib.h:306:1: error: unknown type name 'devmajor_t'
devmajor_t getdevmajor(const char *, mode_t);
^
gmake[3]: *** [../../Makefile.rules:100: db_ut.o] Error 1
This may be a NetBSD bug and I am investigating that in parallel.
In db_ut.c, several visibility defines are set. These have the effect
of ensuring that definitions mandated by a certain standard are visible,
but they also restrict visibility of definitions not mandated by that
standard.
The code is:
/**
* make strptime available
* use 600 for 'Single UNIX Specification, Version 3'
* _XOPEN_SOURCE creates conflict in swab definition in Solaris
*/
#ifndef __OS_solaris
#define _XOPEN_SOURCE 600 /* glibc2 on linux, bsd */
#define _BSD_SOURCE 1 /* needed on linux to "fix" the effect
* of the above define on
* features.h/unistd.h syscall() */
#define _DEFAULT_SOURCE 1 /* _BSD_SOURCE is deprecated */
#else
#define _XOPEN_SOURCE_EXTENDED 1 /* solaris */
#endif
#include <time.h>
#ifndef __OS_solaris
#undef _XOPEN_SOURCE
#undef _XOPEN_SOURCE_EXTENDED
#else /* solaris */
#undef _XOPEN_SOURCE_EXTENDED
#endif
strptime seems to have originally been XPG4, and now seems to be in base
POSIX:
https://pubs.opengroup.org/onlinepubs/9699919799/functions/strptime.html
_XOPEN_SOURCE being 600 seems to be "X/Open 6, incorporating POSIX 2004":
https://pubs.opengroup.org/onlinepubs/009695399/
I am not following the comment "_BSD_SOURCE is deprecated"; that is
perhaps referring to the situation on Linux. But that define is not
used on recent NetBSD.
Overall, feature tests macros are complicated, and while I'm sure there
were good reasons they was added over time, I suspect that today they
are not needed at all, or in a far more limited manner. (I'm unclear on
how far back on various systems kamailio intends to support.)
On NetBSD 8, removing all the visibility defines that I quoted results
in a clean build, and I have a patch in pkgsrc that does that.
I would advance the hypothesis that it would be preferable to remove the
visibility defines, and if there are systems on which they are needed,
to #ifdef system and perhaps #ifdef version <= OK_VERSION and then
define things. This would avoid setting visibility defines on systemss
where they haven't been tested and probably aren't needed.
I am therefore curious what happens on various systems if the
above-quoted text from db_ut is removed.
There are also POSIX and other XOPEN defines in other files, and I'm not
sure if they are ok or if I'm just not building those modules.
Alternatively I could prepare a PR to not set any defines on NetBSD, or
to define _NETBSD_SOURCE, which should be more or less equivalent.
Thanks,
Greg