• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

BuildH A D14-Feb-2001348 141

MakefileH A D16-Aug-2006346 2014

Makefile.m4H A D16-Aug-20062.1 KiB4841

READMEH A D20-Dec-20034.4 KiB133100

assert.cH A D05-Dec-20034.1 KiB18882

b-strcmp.cH A D14-Jun-20053.4 KiB153130

b-strl.cH A D14-Jun-20055 KiB203144

cf.cH A D11-Sep-20012 KiB10164

clock.cH A D14-Jun-200515.1 KiB676495

clrerr.cH A D11-Sep-2001876 4013

config.cH A D14-Mar-20075.3 KiB277190

debug.cH A D03-Aug-20047.4 KiB395167

errstring.cH A D10-Dec-20036.3 KiB288171

exc.cH A D19-Dec-200613.1 KiB652369

fclose.cH A D14-Jun-20053.1 KiB15082

feof.cH A D11-Sep-2001965 4313

ferror.cH A D11-Sep-2001936 4213

fflush.cH A D03-Mar-20063.1 KiB15577

fget.cH A D11-Sep-20012.4 KiB11156

findfp.cH A D28-Aug-200610.9 KiB431243

flags.cH A D19-Dec-20061.3 KiB6534

fopen.cH A D14-Jun-20058.3 KiB375177

fpos.cH A D14-Jun-20053.1 KiB15472

fprintf.cH A D11-Sep-20011.4 KiB5625

fpurge.cH A D11-Sep-20011.2 KiB5424

fput.cH A D11-Sep-20011.3 KiB5323

fread.cH A D11-Sep-20012.3 KiB10149

fscanf.cH A D11-Sep-20011.3 KiB5625

fseek.cH A D14-Jun-20057.3 KiB341203

fvwrite.cH A D11-Sep-20016.3 KiB282205

fvwrite.hH A D02-Mar-2001738 3112

fwalk.cH A D11-Sep-20011.4 KiB6234

fwrite.cH A D11-Sep-20011.5 KiB6830

get.cH A D11-Sep-20011.1 KiB4714

glue.hH A D22-Jan-2001729 286

heap.cH A D03-Aug-200417.3 KiB821501

ldap.cH A D17-Nov-200830.9 KiB1,433995

local.hH A D19-Dec-20069.7 KiB308189

makebuf.cH A D31-Oct-20013.4 KiB15593

match.cH A D11-Sep-20012.8 KiB13894

mbdb.cH A D10-Dec-200316.5 KiB780483

memstat.cH A D20-Mar-20075.1 KiB337150

mpeix.cH A D11-May-200713.8 KiB647299

niprop.cH A D11-Sep-20014.7 KiB214117

path.cH A D11-Sep-20011.4 KiB7234

put.cH A D19-Dec-20011.6 KiB8135

refill.cH A D28-Feb-20067.2 KiB312177

rewind.cH A D11-Sep-20011.1 KiB4516

rpool.cH A D03-Aug-200411.7 KiB525267

sem.cH A D30-May-20084.5 KiB248142

setvbuf.cH A D11-Sep-20014.2 KiB193102

shm.cH A D14-Jul-20054.6 KiB236139

signal.cH A D14-Jun-20057.2 KiB357228

smstdio.cH A D03-Aug-20046.1 KiB364210

snprintf.cH A D12-Oct-20062.3 KiB8845

sscanf.cH A D01-Feb-20022.3 KiB10353

stdio.cH A D14-Jun-200510.3 KiB548326

strcasecmp.cH A D11-Sep-20013.1 KiB10775

strdup.cH A D10-Oct-20032.8 KiB16763

strerror.cH A D11-Sep-20011.3 KiB6127

strexit.cH A D11-Sep-20012.8 KiB12870

string.cH A D11-Sep-2001946 5725

stringf.cH A D11-Sep-20011.8 KiB8739

strio.cH A D09-Jun-20059.2 KiB491285

strl.cH A D20-Jan-20027.5 KiB325133

strrevcmp.cH A D11-Sep-20011.6 KiB10263

strto.cH A D30-Dec-20015.4 KiB255173

syslogio.cH A D11-Sep-20014.1 KiB22188

t-cf.cH A D11-Sep-2001938 4733

t-event.cH A D14-Jun-20052 KiB9565

t-exc.cH A D11-Sep-20012.8 KiB146113

t-float.cH A D11-Sep-20011.8 KiB7352

t-fopen.cH A D06-Feb-2002872 3925

t-heap.cH A D11-Sep-20011.3 KiB6546

t-match.cH A D11-Sep-20011.1 KiB4832

t-memstat.cH A D14-Mar-20072.1 KiB11178

t-path.cH A D11-Sep-20011.1 KiB5338

t-rpool.cH A D11-Sep-20011.5 KiB7052

t-scanf.cH A D13-Nov-20011.4 KiB6042

t-sem.cH A D30-May-20085.9 KiB401321

t-shm.cH A D14-Jan-20054.4 KiB277198

t-smstdio.cH A D11-Sep-20011.6 KiB7643

t-string.cH A D11-Sep-2001972 4730

t-strio.cH A D11-Sep-2001779 3422

t-strl.cH A D11-Sep-20013.5 KiB137108

t-strrevcmp.cH A D11-Sep-2001998 5434

t-types.cH A D13-Mar-20022.7 KiB10466

test.cH A D08-Jan-20022.7 KiB15696

ungetc.cH A D14-Jun-20053.9 KiB18293

util.cH A D30-Aug-20064.5 KiB251165

vasprintf.cH A D03-Jun-20032.9 KiB10554

vfprintf.cH A D16-May-200524.1 KiB1,119826

vfscanf.cH A D12-Oct-200618.8 KiB878608

vprintf.cH A D11-Sep-20011,003 4012

vsnprintf.cH A D11-Sep-20011.9 KiB7940

vsprintf.cH A D11-Sep-20011.6 KiB6731

vsscanf.cH A D01-Feb-20022.1 KiB8837

wbuf.cH A D11-Sep-20012.5 KiB8933

wsetup.cH A D07-Feb-20021.9 KiB8540

xtrap.cH A D11-Sep-2001657 228

README

1# Copyright (c) 2000-2002 Sendmail, Inc. and its suppliers.
2#	All rights reserved.
3#
4# By using this file, you agree to the terms and conditions set
5# forth in the LICENSE file which can be found at the top level of
6# the sendmail distribution.
7#
8#	$Id: README,v 1.24 2003/12/20 09:23:48 gshapiro Exp $
9#
10
11Libsm is a library of generally useful C abstractions.
12For documentation, see index.html.
13
14Libsm stands alone; it depends on no other sendmail libraries,
15and the only sendmail header files it depends on are its own,
16which reside in ../include/sm.
17
18The t-*.c files are regression tests.
19These tests are incomplete: we do not yet test all of the APIs,
20and we have not yet converted all tests to use the test harness.
21If a test fails read the explanation it generates.  Sometimes it
22is sufficient to change a compile time flag, which are also listed
23below.  If that does not help, check the sendmail/README files for
24problems on your OS.
25
26The b-*.c files are benchmarks that compare system routines with
27those provided by libsm. By default sendmail uses the routines
28provided by the OS. In several cases, the routines provided by
29libsm are faster than those of the OS. If your OS provides the
30routines, you can compare the performance of them with the libsm
31versions by running the programs with the option -d (by default
32the programs just issue an explanation when/how to use them).
33The programs are:
34
35b-strcmp.c	tests strcasecmp().
36
37+----------------------+
38| CONFIGURATION MACROS |
39+----------------------+
40
41Libsm uses a set of C preprocessor macros to specify platform specific
42features of the C compiler and standard C libraries.
43
44If you are porting sendmail to a new platform, you may need to tweak
45the values of some of these macros.
46
47The following macros are given default values in <sm/config.h>.
48If the default value is wrong for a given platform, then a platform
49specific value is specified in one of two ways:
50
51  - A -D option is added to the confENVDEF macro; this change can be made
52    to the platform M4 file in devtools/OS, or to the site.config.m4
53    file in devtools/Site.
54
55  - The confSM_OS_HEADER macro in the platform M4 file defines sm_os_foo,
56    which forces "sm/os/sm_os_foo.h" to be included by "sm/config.h" via a
57    link that is made from "sm_os.h" to "sm/os/sm_os_foo.h".  Platform
58    specific configuration macro settings are added to <sm/os/sm_os_foo.h>.
59
60SM_CONF_STDBOOL_H
61	Set to 1 if the header file <stdbool.h> exists,
62	and defines true, false and bool.
63
64SM_CONF_SYS_CDEFS_H
65	Set to 1 if the header file <sys/cdefs.h> exists,
66	and defines __P.  You may need to do this to eliminate
67	warnings about __P being multiply defined.
68
69SM_CONF_STDDEF_H
70	Set to 0 if the header file <stddef.h> does not exist.
71
72SM_CONF_SETITIMER
73	Set to 0 if the setitimer function is not available.
74
75SM_CONF_SYSEXITS_H
76	Set to 1 if <sysexits.h> exists, and sets the EX_* macros
77	to values different from the default BSD values in <sm/sysexits.h>.
78
79SM_CONF_UID_GID
80	Set to 0 if <sys/types.h> does not define uid_t and gid_t.
81
82SM_CONF_SSIZE_T
83	Set to 0 if <sys/types.h> does not define ssize_t.
84
85SM_CONF_BROKEN_SIZE_T
86	Set to 1 if size_t is not unsigned.
87
88SM_CONF_LONGLONG
89	Set to 1 if your C compiler supports the 'long long' type.
90	This will be set automatically if you use gcc or a C compiler
91	that conforms to the 1999 ISO C standard.
92
93SM_CONF_QUAD_T
94	Set to 1 if your C compiler does not support 'long long',
95	but <sys/types.h> defines quad_t as an integral type.
96
97SM_CONF_SHM
98	Set to 1 if System V shared memory APIs are available.
99
100SM_CONF_MSG
101	Set to 1 if System V message queues are available.
102
103SM_CONF_SEM
104	Set to 1 if semaphores are available.
105
106SM_CONF_BROKEN_STRTOD
107	Set to 1 if your strtod() does not work properly.
108
109SM_CONF_GETOPT
110	Set to 1 if your operating system does not include getopt(3).
111
112SM_CONF_LDAP_INITIALIZE
113	Set to 1 if your LDAP client libraries include ldap_initialize(3).
114
115SM_CONF_LDAP_MEMFREE
116	Set to 1 if your LDAP client libraries include ldap_memfree(3).
117
118SM_IO_MAX_BUF_FILE
119	Set this to a useful buffer size for regular files if stat(2)
120	does not return a value for st_blksize that is the
121	"optimal blocksize for I/O".
122
123SM_IO_MAX_BUF
124	Set this to a useful maximum buffer size for other than
125	regular files if stat(2) does not return a value for
126	st_blksize that is the "optimal blocksize for I/O".
127
128SM_IO_MIN_BUF
129	Set this to a useful minimum buffer size for other than
130	regular files if stat(2) does not return a value for
131	st_blksize that is the "optimal blocksize for I/O".
132
133