1
0
mirror of https://github.com/samba-team/samba.git synced 2024-12-25 23:21:54 +03:00
Commit Graph

50 Commits

Author SHA1 Message Date
Gary Lockyer
378ae342c4 strerror_r: provide XSI-compliant strerror_r
Provide a XSI-compliant strerror_r on GNU based systems.
The default GNU strerror_r is not XSI-compliant, this patch wraps the
GNU-specific call in an XSI-compliant wrapper.

This reverts 18ed32ce0821d11c0c06d82c07ba1c27b0c2b886 which tried to
make Heimdal use roken, rather than libreplace for strerror_r.

Signed-off-by: Gary Lockyer <gary@catalyst.net.nz>
Signed-off-by: Andrew Bartlett <abartlet@samba.org>
Reviewed-by: Jeremy Allison <jra@samba.org>
2017-06-13 18:38:14 +02:00
Christian Ambach
8f0d06fa5e heimdal_build: only enable libintl functions if everything was found
do not rely on intl.h being available but also on the functions being usable
This should fix the build on HP-UX

Bug: https://bugzilla.samba.org/show_bug.cgi?id=9911
Signed-off-by: Christian Ambach <ambi@samba.org>

Change-Id: I5dd88d2d5216b778624778455cca99b32d0be58f
Reviewed-by: Andrew Bartlett <abartlet@samba.org>

Autobuild-User(master): Andrew Bartlett <abartlet@samba.org>
Autobuild-Date(master): Thu Feb 20 01:28:24 CET 2014 on sn-devel-104
2014-02-20 01:28:24 +01:00
Stefan Metzmacher
cd86f9bb2e s4:heimdal_build: provide HEIMDAL_UNUSED_ATTRIBUTE
metze
2011-07-14 20:11:22 +02:00
Andrew Tridgell
1a65180728 s4-heimdal: ask for non-atomic heimdal
this allows us to build with compilers other than gcc
2010-11-17 23:55:39 +11:00
Andrew Bartlett
f20cf61080 Add attribute macros for Heimdal to use
Heimdal uses HEIMDAL_NORETURN_ATTRIBUTE and HEIMDAL_PRINTF_ATTRIBUTE,
and we need to provide a link between these and Samba's function
attribute handling.

Andrew Bartlett
2010-11-15 01:25:06 +00:00
Stefan Metzmacher
8ea6f41ec9 s4-waf: don't generate PACKAGE_* defines in config.h
- We don't use them anywhere (heimdal has special rules)
- They calculate the version at configure time
  and may contain the wrong git hash while building
- If we really need them in future we should add them
  to version.h and not config.h, as the changing git hash
  will trigger a full rebuild if config.h changes.

metze
2010-10-25 08:16:28 +00:00
Andrew Bartlett
3ca886b835 s4-heimdal_build fix up build after heimdal import
Heimdal has it's own dynconfig like system, and so we need the
LIBDIR etc in the CFLAGS here.

We also need to define build rules for the new files imported in
the merge commit, and fix up some header files.

This includes the work by Matthieu Patou <mat@matws.net>

Andrew Bartlett
2010-10-03 01:15:04 +00:00
Stefan Metzmacher
edecdab58f s4:heimdal_build: move #undef __APPLE__ to the end of roken.h
Some system includes need __APPLE__ defined.

metze
2010-05-14 10:37:22 +02:00
Stefan Metzmacher
1f9bce1c0d s4:heimdal_build: undefine __APPLE__ as we don't need that magic
This hopefully fixes the build on Mac OS 10.

metze
2010-05-12 09:42:44 +02:00
Andrew Tridgell
e4c75252a9 s4-heimdal: a better way of handling dirfd()
This prevents us getting thousands of warnings about dirfd() on
solaris
2010-03-30 12:31:03 +11:00
Andrew Bartlett
f47454a04d s4:heimdal_build Remove forced HAVE_STRERROR_R
This just causes warnings, now upstream has a more complete fix.
2010-03-27 19:12:33 +11:00
Andrew Bartlett
564d5cd2c4 s4:heimdal New files and supporting logic for heimdal update 2010-03-27 11:53:23 +11:00
Matthias Dieter Wallnöfer
16aa0744c6 s4:UID wrapper - Fix includes
The includes of the UID wrapper headers werent't really efficient according
to metze's post on the technical mailing list (http://lists.samba.org/archive/samba-technical/2010-February/069165.html).
To achieve this move the "uid_wrapper.h" includes into "lib/util/unix_privs.c",
 "lib/util/util.c", "ntvfs/posix/pvfs_acl.c" and "ntvfs/unixuid/vfs_unixuid.c".
2010-02-05 19:47:26 +01:00
Torgeir Lerkerød
6e5dad49d9 S4: Building on a system with libintl
Heimdal's internal buildsystem uses a different define for checking for libintl than what samba uses. LIBINTL vs HAVE_LIBINTL_H. Since changing heimdals defineswould brake dropin merges of heimdal. This is a simple workaround in line with others in heimdal_build catalog.

Signed-off-by: Torgeir Lerkerød <torgeir.lerkerod@gmail.com>
Signed-off-by: Stefan Metzmacher <metze@samba.org>
2009-10-21 15:46:38 +02:00
Andrew Tridgell
58e5e1ea8d make the UID_WRAPPER skip checks at runtime
This fixes two issues pointed out by Andrew. It adds a runtime
uwrap_enabled() call that wraps the skips needed for uid emulation. It
also makes the skip in the directory_create_or_exist() function only
change the uid checking code, not the permissions code
2009-08-05 11:21:06 +10:00
Andrew Tridgell
fd43e0ee09 added a uid_wrapper library
This library intercepts seteuid and related calls, and simulates them
in a manner similar to the nss_wrapper and socket_wrapper
libraries. This allows us to enable the vfs_unixuid NTVFS module in
the build farm, which means we are more likely to catch errors in the
token manipulation.

The simulation is not complete, but it is enough for Samba4 for
now. The major areas of incompleteness are:

 - no emulation of setreuid, setresuid or saved uids. These would be
   needed for use in Samba3

 - no emulation of ruid changing. That would also be needed for Samba3

 - no attempt to emulate file ownership changing, so code that (for
   example) tests whether st.st_uid matches geteuid() needs special
   handling
2009-08-05 10:51:00 +10:00
Stefan Metzmacher
e8c2ed1d48 Revert "s4:heimdal_build: include "system/network.h" via config.h wrapper"
This reverts commit 334c6e6b78.

This breaks the build later in the ntvfs code...

metze
2009-01-30 19:24:50 +01:00
Stefan Metzmacher
9fa2e56488 s4:heimdal_build: add a dummy define for dirfd()
metze
2009-01-30 18:42:09 +01:00
Stefan Metzmacher
334c6e6b78 s4:heimdal_build: include "system/network.h" via config.h wrapper
This fixes build problems on Tru64.

metze
2009-01-30 17:53:04 +01:00
Jelmer Vernooij
0888ffa2b7 Make Samba 3 and Samba 4 both use the same single copy of libreplace. 2008-09-16 16:30:14 +02:00
Jelmer Vernooij
456c3b760f Undefine HAVE_KRB5_ENCRYPT_BLOCK because Heimdal really doesn't have it.
(This used to be commit 55a6e852c7)
2008-06-25 17:24:38 +02:00
Andrew Bartlett
576540b25c Supply HDB_DB_DIR macro
While we don't use the default HDB directories, the code needs this
macro defined.

Andrew Bartlett
(This used to be commit b5dbdef158)
2008-03-19 11:10:19 +11:00
Stefan Metzmacher
5de50f5a66 r20803: fix compiler warning about extra semicolon
metze
(This used to be commit 1feae45f28)
2007-10-10 14:43:32 -05:00
Stefan Metzmacher
4af2716c47 r20773: we need to include config.h and replace.h before we can use #ifdef statements
hopefully fix the build on solaris 9

metze
(This used to be commit 65ba2920a1)
2007-10-10 14:40:51 -05:00
Andrew Bartlett
08976cb3d2 r20639: Commit part 1 of 2.
This patch updates our build system and glue to support a new snapshot
of lorikeet-heimdal.

We now procude a [SUBSYTEM] in the ans1_deps.pl script, and can depend
on that in the heimdal_build/config.mk.  This is much easier than
listing every generated .o file individually.

This required some small changes to the build system, due to the way
the parent directory was handled for the output of scripts.  I've also
cleaned up et_deps.pl to handle cleaning up it's generated files on
clean.

The PAC glue in Heimdal has changed significantly: we no longer have a
custom hack in the KDC, instead we have the windc plugin interface.
As such, pac-glue.c is much smaller.  In the future, when I'm
confident of the new code, we will also be able to 'downsize'
auth/kerberos/kerberos_pac.c.

(I'll include the updated copy of heimdal in the next chekin, to make
it clearer what's changed in Samba4 itself).

Andrew Bartlett
(This used to be commit 75fddbbc08)
2007-10-10 14:37:20 -05:00
Stefan Metzmacher
af1b64c92f r18210: - reenable autodependencies
- and add -MT $@ to the dependency generation
  to notice changes in depdendecies of header files

you may need a 'make clean' or at least you need to remove
heimdal_build/replace.hd

metze
(This used to be commit 5ecf98cc18)
2007-10-10 14:17:50 -05:00
Andrew Tridgell
820492ba79 r18203: rearranged the overrides in heimdal_build/*.h to avoid the use of
heimdal_build/config.h from interfering with libreplace

This is a workaround for the fact that with the current CFLAGS and
dependencies system, -Iheimdal_build is put at the front of the
includes list, which means it overrides the normal config.h
(This used to be commit 84335903ce)
2007-10-10 14:17:48 -05:00
Andrew Tridgell
4262be2e45 r18202: moved the overrides for HAVE_xxx from heimdal_build/config.h to
heimdal_build/roken.h

This is a workaround for the fact that with the current CFLAGS and
dependencies system, -Iheimdal_build is put at the front of the
includes list, which means it overrides the normal config.h
(This used to be commit dc2580f0fd)
2007-10-10 14:17:48 -05:00
Andrew Tridgell
6c85bcc972 r18154: try to get the heimdal_build code to use libreplace in a better way
(chasing down build failures ...)

added showflags as part of 'all' target, which makes tracking down
problems easier in the build farm
(This used to be commit d52aaccdf8)
2007-10-10 14:17:43 -05:00
Jelmer Vernooij
38fdde5d9b r18031: Merge my replace fixes:
* libreplace can now build stand-alone
 * add stub testsuite for libreplace
 * make talloc/tdb/ldb use libreplace
(This used to be commit fe7ca4b145)
2007-10-10 14:17:05 -05:00
Andrew Bartlett
d1a79b1f7e r15221: We don't need to have these rcsid strings in Samba's use of Heimdal.
Andrew Bartlett
(This used to be commit b2649aaf39)
2007-10-10 14:04:20 -05:00
Stefan Metzmacher
6b566e83a6 r12899: - fix warnings on AIX
- fix compilation of auth/kerberos/krb5_init_context.c on AIX

metze
(This used to be commit 0e1ad08a85)
2007-10-10 13:51:00 -05:00
Andrew Bartlett
fbf106f670 r12269: Update to current lorikeet-heimdal. This changed the way the hdb
interface worked, so hdb-ldb.c and the glue have been updated.

Andrew Bartlett
(This used to be commit 8fd5224c6b)
2007-10-10 13:47:26 -05:00
Jelmer Vernooij
f801ad3592 r10510: Decrease the amount of data included by includes.h a bit
(This used to be commit 03647e1321)
2007-10-10 13:38:58 -05:00
Jelmer Vernooij
eb5af8841a r10507: Let lib/replace take care of defining socklen_t for heimdal
(This used to be commit fe4ff2d241)
2007-10-10 13:38:57 -05:00
Jelmer Vernooij
70b52b02a7 r10476: Move some more types to libreplace. Fix missing strndup errors
for heimdal
(This used to be commit e09ffdfb1d)
2007-10-10 13:38:51 -05:00
Stefan Metzmacher
7fe42c9b18 r9473: - assume the case that happens on most boxes, to remove compiler warnings on them
metze
(This used to be commit 3b83cf6b5b)
2007-10-10 13:34:20 -05:00
Andrew Tridgell
5d899b8a35 r9369: an attempt to fix the build on HPUX. This is based on work by Don
McCall, but takes a slightly different approach that I hope will be
more generic
(This used to be commit e8260a81cf)
2007-10-10 13:33:28 -05:00
Andrew Tridgell
978bbb4f4d r8461: fixed integer64 handling on bit endian platforms. The ejs code used
%Ld, which is an invalid format code.

This will probably cause problems on systems that don't have %lld, but
do have a working snprintf otherwise. We will need to expand the
snprintf configure test to make sure we replace snprintf on those
platforms
(This used to be commit ccc87eb8aa)
2007-10-10 13:23:05 -05:00
Andrew Tridgell
af0574378b r8450: more configure tests for solaris. It now builds some binaries, but
fails in the ejs floating point code.
(This used to be commit 30e1b6140e)
2007-10-10 13:23:04 -05:00
Andrew Tridgell
833842f0aa r8424: bring in some more of heimdals m4 macros, and remove the hard-coding of several test
results
(This used to be commit b173c938b2)
2007-10-10 13:23:01 -05:00
Andrew Tridgell
2ea372afd9 r8420: slowly getting my way through some more heimdal portability fixes
(This used to be commit 59c3de6ca8)
2007-10-10 13:23:01 -05:00
Andrew Tridgell
c8461d737a r8419: in order to use our replace.h, heimdal needs stdarg.h
(This used to be commit 234fc1fb05)
2007-10-10 13:23:00 -05:00
Andrew Tridgell
3f27c9efb9 r8278: this should fix the heimdal h_errno warnings
(This used to be commit 5812e74c4f)
2007-10-10 13:19:30 -05:00
Andrew Bartlett
8a6b60e1e4 r7688: Fix the internal heimdal build - push one #define back to
heimdal_build/config.h

Andrew Bartlett
(This used to be commit 337cb20ac4)
2007-10-10 13:18:22 -05:00
Andrew Bartlett
4482cf72d4 r7682: Move the properties of our heimdal build from heimdal_build/config.h
(which gets included by heimdal, or shoudl be) into
auth/kerberos/kerberos.h (which is used by Samba, but not by the
Heimdal code).

Andrew Barteltt
(This used to be commit 3f473a9377)
2007-10-10 13:18:22 -05:00
Andrew Bartlett
e9fa8f7cce r7509: With the update to Heimdal 20050612 we no longer need krb5_freelog(),
as krb5_closelog() no longer leaks memory.

Andrew Bartlett
(This used to be commit b0bf8a4a5f)
2007-10-10 13:18:02 -05:00
Andrew Bartlett
70481f29a0 r7367: Replace the list of what our internal heimdal can do with data from a
real install.  (ie run ./configure against heimdal installed, and
record the output).

Andrew Bartlett
(This used to be commit 4cba1edd5c)
2007-10-10 13:17:47 -05:00
Andrew Tridgell
bce8cda061 r7352: the internal heimdal build change. This changes quite a few things:
- if you want kerberos now, you need to unpack a lorikeet heimdal
   tree in source/heimdal/. If source/heimdal/ does not exist at
   configure time then all kerberos features are disabled. You cannot
   use an external kerberos library for now. That may change later.

 - moved lib/replace/ config stuff to lib/replace/ and create a
   lib/replace/replace.h. That allows the heimdal build to use our
   portability layer, and prevenets duplicate definitions of functions
   like strlcat()

 - if you do enable heimdal, then you will need to do 'make
   HEIMDAL_EXTERNAL' before you build Samba. That should be fixed once
   I explain the problem to jelmer (the problem is the inability to
   set a depend without also dragging in the object list of the
   dependency. We need this for building the heimdal asn1 compiler and
   et compiler.

 - disabled all of the m4 checks for external kerberos libraries. I
   left them in place in auth/kerberos/, but disabled it in
   configure.in

some of the heimdal_build/ code is still very rough, for example I
don't correctly detect the correct awk, flex, bison replacements for
heimdal_build/build_external.sh. I expect to fix that stuff up over
the next few days.
(This used to be commit d4648249b2)
2007-10-10 13:17:45 -05:00
Andrew Tridgell
51edcea156 r7322: the beginnings of a in-tree heimdal
(This used to be commit e6a2174050)
2007-10-10 13:17:41 -05:00