This is merely a historical archive of years 2008-2021, before the migration to mailman3.
A maintained and still updated list archive can be found at https://lists.osmocom.org/hyperkitty/list/OpenBSC@lists.osmocom.org/.
Pablo Neira Ayuso pablo at soleta.euOn Tue, Nov 17, 2015 at 11:09:46AM +0100, Andreas Schultz wrote:
> ----- Original Message -----
> > From: "Pablo Neira Ayuso" <pablo at soleta.eu>
> > To: "Andreas Schultz" <aschultz at tpip.net>
> > Cc: openbsc at lists.osmocom.org, "Harald Welte" <laforge at gnumonks.org>
> > Sent: Monday, November 16, 2015 6:43:55 PM
> > Subject: Re: [PATCH 05/16] gtp-rtnl: and netns support
>
> > On Mon, Nov 16, 2015 at 04:06:46PM +0100, Andreas Schultz wrote:
> >> diff --git a/libgtnl/src/gtp-genl.c b/libgtnl/src/gtp-genl.c
> >> index c1f60ab..9e68a30 100644
> >> --- a/libgtnl/src/gtp-genl.c
> >> +++ b/libgtnl/src/gtp-genl.c
> >> @@ -44,6 +44,8 @@
> >> static void gtp_build_payload(struct nlmsghdr *nlh, struct gtp_tunnel *t)
> >> {
> >> mnl_attr_put_u32(nlh, GTPA_VERSION, t->gtp_version);
> >> + if (t->ifns > 0)
> >> + mnl_attr_put_u32(nlh, GTPA_NET_NS_FD, t->ifns);
> >
> > Any reason not to consider descriptor zero as valid?
>
> ifns is a file descriptor and fd's are as far as I know always greater zero.
> So, I didn't see a reason to permit zero there when simply not setting the
> attribute would serve the same purpose.
You close(0) and then allocate a descriptor via open(...) and see what
it happens.
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
int main(void)
{
int fd;
close(0);
fd = open("/etc/passwd", O_RDONLY);
printf("fd = %d\n", fd);
}