head 1.2; access; symbols RPM_4_2_1:1.1.1.5 RPM_4_2:1.1.1.5 RPM_4_1_1:1.1.1.5 RPM_4_1:1.1.1.4 RPM_4_0_5:1.1.1.3 RPM_4_0_4:1.1.1.2 RPM_4_0_3:1.1.1.1 RPM:1.1.1; locks; strict; comment @# @; 1.2 date 2008.01.02.09.54.53; author rse; state dead; branches; next 1.1; commitid z4cpSiAhOCXk5PLs; 1.1 date 2001.07.23.20.45.37; author rse; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2001.07.23.20.45.37; author rse; state Exp; branches; next 1.1.1.2; 1.1.1.2 date 2002.01.08.00.30.11; author rse; state Exp; branches; next 1.1.1.3; 1.1.1.3 date 2003.01.18.13.49.01; author rse; state Exp; branches; next 1.1.1.4; 1.1.1.4 date 2001.07.23.20.09.18; author rse; state Exp; branches; next 1.1.1.5; 1.1.1.5 date 2003.01.18.14.04.59; author rse; state Exp; branches; next ; desc @@ 1.2 log @remove the ancient RPM 4.2.1 source tree copy @ text @ Berkeley DB Reference Guide: FreeBSD

Berkeley DB Reference Guide:
Building Berkeley DB for UNIX systems

PrevRefNext

FreeBSD

  1. I can't compile and run multithreaded applications.

    Special compile-time flags are required when compiling threaded applications on FreeBSD. If you are compiling a threaded application, you must compile with the _THREAD_SAFE and -pthread flags:

    cc -D_THREAD_SAFE -pthread ...

    The Berkeley DB library will automatically build with the correct options.


  2. I get occasional failures when running RPC-based programs under FreeBSD clients.

    There is a known bug in the XDR implementation in the FreeBSD C library from version 2.2 up to version 4.0-RELEASE, that causes certain-sized messages to fail and return a zero-filled reply to the client. A bug report (#16028) has been filed with FreeBSD. The following patch is the FreeBSD fix:

    *** /usr/src/lib/libc/xdr/xdr_rec.c.orig	Mon Jan 10 10:20:42 2000
    --- /usr/src/lib/libc/xdr/xdr_rec.c	Wed Jan 19 10:53:45 2000
    ***************
    *** 558,564 ****
      	 * but we don't have any way to be certain that they aren't
      	 * what the client actually intended to send us.
      	 */
    ! 	if ((header & (~LAST_FRAG)) == 0)
      		return(FALSE);
      	rstrm->fbtbc = header & (~LAST_FRAG);
      	return (TRUE);
    --- 558,564 ----
      	 * but we don't have any way to be certain that they aren't
      	 * what the client actually intended to send us.
      	 */
    ! 	if (header == 0)
      		return(FALSE);
      	rstrm->fbtbc = header & (~LAST_FRAG);
      	return (TRUE);
    

PrevRefNext

Copyright Sleepycat Software @ 1.1 log @Initial revision @ text @d1 1 a1 1 @ 1.1.1.1 log @Import: RPM 4.0.3 @ text @@ 1.1.1.2 log @Import: RPM 4.0.4 @ text @d1 1 a1 1 @ 1.1.1.3 log @Import: RPM 4.0.5 @ text @d2 1 a2 1 a3 1 @ 1.1.1.4 log @Import: RPM 4.1 @ text @d2 1 a2 1 d4 1 @ 1.1.1.5 log @Import: RPM 4.1.1 @ text @d2 1 a2 1 a3 1 @