Skip to content
Toggle navigation
Toggle navigation
This project
Loading...
Sign in
John McEleney
/
mailutils
Go to a project
Toggle navigation
Toggle navigation pinning
Projects
Groups
Snippets
Help
Project
Activity
Repository
Pipelines
Graphs
Issues
0
Merge Requests
0
Wiki
Network
Create a new issue
Builds
Commits
Issue Boards
Files
Commits
Network
Compare
Branches
Tags
Commit
cc8b7b90
...
cc8b7b906d9cd1541b422eebc5f88d06b002c057
authored
2001-04-14 22:09:55 +0000
by
Alain Magloire
Browse Files
Options
Browse Files
Tag
Download
Email Patches
Plain Diff
Support for strncasemp.
1 parent
a2118175
Show whitespace changes
Inline
Side-by-side
Showing
4 changed files
with
70 additions
and
2 deletions
ChangeLog
configure.in
lib/strcasecmp.c
lib/strncasecmp.c
ChangeLog
View file @
cc8b7b9
...
...
@@ -23,7 +23,7 @@
* mailbox/attachement.c (message_create_attachment): Use base_name().
* mailbox/mbx_mbox.c (mbox_tmpfile): Use base_name().
* configure.in: AC_REP_FUNC(vasprintf).
* configure.in: AC_REP_FUNC(vasprintf
strcasecmp strncasecmp
).
* include/mailutils/Makefile.am: Add property.h, parse822.h.
* lib/vasprintf.c: Taken from libit.
* lib/basename.c: Taken from libit/fileutils.
...
...
configure.in
View file @
cc8b7b9
...
...
@@ -68,7 +68,7 @@ AC_FUNC_ALLOCA
AC_FUNC_MMAP
# FIXME: Provide the GNU one for loosing platforms
AC_FUNC_FNMATCH
AC_REPLACE_FUNCS(snprintf strtok_r vasprintf)
AC_REPLACE_FUNCS(snprintf strtok_r vasprintf
strncasecmp strcasecmp
)
AC_CHECK_FUNCS(mkstemp)
dnl Check for libraries
...
...
lib/strcasecmp.c
0 → 100644
View file @
cc8b7b9
/* strcasecmp.c -- case insensitive string comparator
Copyright (C) 1998, 1999 Free Software Foundation, Inc.
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2, or (at your option)
any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software Foundation,
Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */
#if HAVE_CONFIG_H
# include <config.h>
#endif
#ifdef LENGTH_LIMIT
# define STRXCASECMP_FUNCTION strncasecmp
# define STRXCASECMP_DECLARE_N , size_t n
# define LENGTH_LIMIT_EXPR(Expr) Expr
#else
# define STRXCASECMP_FUNCTION strcasecmp
# define STRXCASECMP_DECLARE_N
/* empty */
# define LENGTH_LIMIT_EXPR(Expr) 0
#endif
#include <sys/types.h>
#include <ctype.h>
#define TOLOWER(Ch) (isupper (Ch) ? tolower (Ch) : (Ch))
/* Compare {{no more than N characters of }}strings S1 and S2,
ignoring case, returning less than, equal to or
greater than zero if S1 is lexicographically less
than, equal to or greater than S2. */
int
STRXCASECMP_FUNCTION
(
const
char
*
s1
,
const
char
*
s2
STRXCASECMP_DECLARE_N
)
{
register
const
unsigned
char
*
p1
=
(
const
unsigned
char
*
)
s1
;
register
const
unsigned
char
*
p2
=
(
const
unsigned
char
*
)
s2
;
unsigned
char
c1
,
c2
;
if
(
p1
==
p2
||
LENGTH_LIMIT_EXPR
(
n
==
0
))
return
0
;
do
{
c1
=
TOLOWER
(
*
p1
);
c2
=
TOLOWER
(
*
p2
);
if
(
LENGTH_LIMIT_EXPR
(
--
n
==
0
)
||
c1
==
'\0'
)
break
;
++
p1
;
++
p2
;
}
while
(
c1
==
c2
);
return
c1
-
c2
;
}
lib/strncasecmp.c
0 → 100644
View file @
cc8b7b9
#define LENGTH_LIMIT
#include "strcasecmp.c"
Please
register
or
sign in
to post a comment