diff options
author | delphij <delphij@FreeBSD.org> | 2015-09-02 09:46:15 +0800 |
---|---|---|
committer | delphij <delphij@FreeBSD.org> | 2015-09-02 09:46:15 +0800 |
commit | 7026f200866402a952601e517730ae4a5e7047e6 (patch) | |
tree | 544962306e7517315584e6bc7a78087535f7b123 | |
parent | 1faa21e4167f6725ee2accacf2133b15ab89ed20 (diff) | |
download | freebsd-ports-gnome-7026f200866402a952601e517730ae4a5e7047e6.tar.gz freebsd-ports-gnome-7026f200866402a952601e517730ae4a5e7047e6.tar.zst freebsd-ports-gnome-7026f200866402a952601e517730ae4a5e7047e6.zip |
Use sa_len instead of sizeof(struct sockaddr_storage) to work around a
FreeBSD kernel check, which would return EINVAL when the passed length
is larger than desired.
PR: ports/202819
Submitted by: brd
-rw-r--r-- | net/openldap24-server/Makefile | 4 | ||||
-rw-r--r-- | net/openldap24-server/files/patch-libraries__liblber__sockbuf.c | 12 |
2 files changed, 14 insertions, 2 deletions
diff --git a/net/openldap24-server/Makefile b/net/openldap24-server/Makefile index b1f4e5a238df..52db4d51df52 100644 --- a/net/openldap24-server/Makefile +++ b/net/openldap24-server/Makefile @@ -56,8 +56,8 @@ WANT_OPENLDAP_VER?= 24 BROKEN= incompatible OpenLDAP version: ${WANT_OPENLDAP_VER} .endif -PORTREVISION_CLIENT= 0 -PORTREVISION_SERVER= 0 +PORTREVISION_CLIENT= 1 +PORTREVISION_SERVER= 1 OPENLDAP_SHLIB_MAJOR= 2 OPENLDAP_SHLIB_MINOR= 10.4 OPENLDAP_MAJOR= ${DISTVERSION:R} diff --git a/net/openldap24-server/files/patch-libraries__liblber__sockbuf.c b/net/openldap24-server/files/patch-libraries__liblber__sockbuf.c new file mode 100644 index 000000000000..a9b6bff8ce99 --- /dev/null +++ b/net/openldap24-server/files/patch-libraries__liblber__sockbuf.c @@ -0,0 +1,12 @@ +--- libraries/liblber/sockbuf.c.orig 2015-09-01 16:43:54.707637190 -0600 ++++ libraries/liblber/sockbuf.c 2015-09-01 17:16:22.310503263 -0600 +@@ -937,8 +937,7 @@ + buf = (char *) buf + sizeof( struct sockaddr_storage ); + len -= sizeof( struct sockaddr_storage ); + +- rc = sendto( sbiod->sbiod_sb->sb_fd, buf, len, 0, dst, +- sizeof( struct sockaddr_storage ) ); ++ rc = sendto( sbiod->sbiod_sb->sb_fd, buf, len, 0, dst, dst->sa_len ); + + if ( rc < 0 ) return -1; + |