mirror of https://github.com/ipxe/ipxe.git
[libc] Remove unused string functions
Signed-off-by: Michael Brown <mcb30@ipxe.org>pull/34/head
parent
14fc311271
commit
b54167b8b6
|
@ -38,122 +38,6 @@ FILE_LICENCE ( GPL2_ONLY );
|
||||||
|
|
||||||
/* *** FROM string.c *** */
|
/* *** FROM string.c *** */
|
||||||
|
|
||||||
#ifndef __HAVE_ARCH_STRNICMP
|
|
||||||
/**
|
|
||||||
* strnicmp - Case insensitive, length-limited string comparison
|
|
||||||
* @s1: One string
|
|
||||||
* @s2: The other string
|
|
||||||
* @len: the maximum number of characters to compare
|
|
||||||
*/
|
|
||||||
int strnicmp(const char *s1, const char *s2, size_t len)
|
|
||||||
{
|
|
||||||
/* Yes, Virginia, it had better be unsigned */
|
|
||||||
unsigned char c1, c2;
|
|
||||||
|
|
||||||
c1 = 0; c2 = 0;
|
|
||||||
if (len) {
|
|
||||||
do {
|
|
||||||
c1 = *s1; c2 = *s2;
|
|
||||||
s1++; s2++;
|
|
||||||
if (!c1)
|
|
||||||
break;
|
|
||||||
if (!c2)
|
|
||||||
break;
|
|
||||||
if (c1 == c2)
|
|
||||||
continue;
|
|
||||||
c1 = tolower(c1);
|
|
||||||
c2 = tolower(c2);
|
|
||||||
if (c1 != c2)
|
|
||||||
break;
|
|
||||||
} while (--len);
|
|
||||||
}
|
|
||||||
return (int)c1 - (int)c2;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
char * ___strtok;
|
|
||||||
|
|
||||||
#ifndef __HAVE_ARCH_STRNCAT
|
|
||||||
/**
|
|
||||||
* strncat - Append a length-limited, %NUL-terminated string to another
|
|
||||||
* @dest: The string to be appended to
|
|
||||||
* @src: The string to append to it
|
|
||||||
* @count: The maximum numbers of bytes to copy
|
|
||||||
*
|
|
||||||
* Note that in contrast to strncpy, strncat ensures the result is
|
|
||||||
* terminated.
|
|
||||||
*/
|
|
||||||
char * strncat(char *dest, const char *src, size_t count)
|
|
||||||
{
|
|
||||||
char *tmp = dest;
|
|
||||||
|
|
||||||
if (count) {
|
|
||||||
while (*dest)
|
|
||||||
dest++;
|
|
||||||
while ((*dest++ = *src++)) {
|
|
||||||
if (--count == 0) {
|
|
||||||
*dest = '\0';
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return tmp;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef __HAVE_ARCH_STRSPN
|
|
||||||
/**
|
|
||||||
* strspn - Calculate the length of the initial substring of @s which only
|
|
||||||
* contain letters in @accept
|
|
||||||
* @s: The string to be searched
|
|
||||||
* @accept: The string to search for
|
|
||||||
*/
|
|
||||||
size_t strspn(const char *s, const char *accept)
|
|
||||||
{
|
|
||||||
const char *p;
|
|
||||||
const char *a;
|
|
||||||
size_t count = 0;
|
|
||||||
|
|
||||||
for (p = s; *p != '\0'; ++p) {
|
|
||||||
for (a = accept; *a != '\0'; ++a) {
|
|
||||||
if (*p == *a)
|
|
||||||
break;
|
|
||||||
}
|
|
||||||
if (*a == '\0')
|
|
||||||
return count;
|
|
||||||
++count;
|
|
||||||
}
|
|
||||||
|
|
||||||
return count;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef __HAVE_ARCH_STRCSPN
|
|
||||||
/**
|
|
||||||
* strcspn - Calculate the length of the initial substring of @s which only
|
|
||||||
* contain letters not in @reject
|
|
||||||
* @s: The string to be searched
|
|
||||||
* @accept: The string to search for
|
|
||||||
*/
|
|
||||||
size_t strcspn(const char *s, const char *reject)
|
|
||||||
{
|
|
||||||
const char *p;
|
|
||||||
const char *r;
|
|
||||||
size_t count = 0;
|
|
||||||
|
|
||||||
for (p = s; *p != '\0'; ++p) {
|
|
||||||
for (r = reject; *r != '\0'; ++r) {
|
|
||||||
if (*p == *r)
|
|
||||||
return count;
|
|
||||||
}
|
|
||||||
++count;
|
|
||||||
}
|
|
||||||
|
|
||||||
return count;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef __HAVE_ARCH_STRPBRK
|
#ifndef __HAVE_ARCH_STRPBRK
|
||||||
/**
|
/**
|
||||||
* strpbrk - Find the first occurrence of a set of characters
|
* strpbrk - Find the first occurrence of a set of characters
|
||||||
|
@ -174,35 +58,6 @@ char * strpbrk(const char * cs,const char * ct)
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef __HAVE_ARCH_STRTOK
|
|
||||||
/**
|
|
||||||
* strtok - Split a string into tokens
|
|
||||||
* @s: The string to be searched
|
|
||||||
* @ct: The characters to search for
|
|
||||||
*
|
|
||||||
* WARNING: strtok is deprecated, use strsep instead.
|
|
||||||
*/
|
|
||||||
char * strtok(char * s,const char * ct)
|
|
||||||
{
|
|
||||||
char *sbegin, *send;
|
|
||||||
|
|
||||||
sbegin = s ? s : ___strtok;
|
|
||||||
if (!sbegin) {
|
|
||||||
return NULL;
|
|
||||||
}
|
|
||||||
sbegin += strspn(sbegin,ct);
|
|
||||||
if (*sbegin == '\0') {
|
|
||||||
___strtok = NULL;
|
|
||||||
return( NULL );
|
|
||||||
}
|
|
||||||
send = strpbrk( sbegin, ct);
|
|
||||||
if (send && *send != '\0')
|
|
||||||
*send++ = '\0';
|
|
||||||
___strtok = send;
|
|
||||||
return (sbegin);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef __HAVE_ARCH_STRSEP
|
#ifndef __HAVE_ARCH_STRSEP
|
||||||
/**
|
/**
|
||||||
* strsep - Split a string into tokens
|
* strsep - Split a string into tokens
|
||||||
|
@ -230,46 +85,3 @@ char * strsep(char **s, const char *ct)
|
||||||
return sbegin;
|
return sbegin;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#ifndef __HAVE_ARCH_BCOPY
|
|
||||||
/**
|
|
||||||
* bcopy - Copy one area of memory to another
|
|
||||||
* @src: Where to copy from
|
|
||||||
* @dest: Where to copy to
|
|
||||||
* @count: The size of the area.
|
|
||||||
*
|
|
||||||
* Note that this is the same as memcpy(), with the arguments reversed.
|
|
||||||
* memcpy() is the standard, bcopy() is a legacy BSD function.
|
|
||||||
*
|
|
||||||
* You should not use this function to access IO space, use memcpy_toio()
|
|
||||||
* or memcpy_fromio() instead.
|
|
||||||
*/
|
|
||||||
char * bcopy(const char * src, char * dest, int count)
|
|
||||||
{
|
|
||||||
return memmove(dest,src,count);
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifndef __HAVE_ARCH_MEMSCAN
|
|
||||||
/**
|
|
||||||
* memscan - Find a character in an area of memory.
|
|
||||||
* @addr: The memory area
|
|
||||||
* @c: The byte to search for
|
|
||||||
* @size: The size of the area.
|
|
||||||
*
|
|
||||||
* returns the address of the first occurrence of @c, or 1 byte past
|
|
||||||
* the area if @c is not found
|
|
||||||
*/
|
|
||||||
void * memscan(const void * addr, int c, size_t size)
|
|
||||||
{
|
|
||||||
unsigned char * p = (unsigned char *) addr;
|
|
||||||
|
|
||||||
while (size) {
|
|
||||||
if (*p == c)
|
|
||||||
return (void *) p;
|
|
||||||
p++;
|
|
||||||
size--;
|
|
||||||
}
|
|
||||||
return (void *) p;
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
|
|
|
@ -19,11 +19,9 @@ FILE_LICENCE ( GPL2_ONLY );
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
#include <bits/string.h>
|
#include <bits/string.h>
|
||||||
|
|
||||||
int __pure strnicmp(const char *s1, const char *s2, size_t len) __nonnull;
|
|
||||||
char * strcpy(char * dest,const char *src) __nonnull;
|
char * strcpy(char * dest,const char *src) __nonnull;
|
||||||
char * strncpy(char * dest,const char *src,size_t count) __nonnull;
|
char * strncpy(char * dest,const char *src,size_t count) __nonnull;
|
||||||
char * strcat(char * dest, const char * src) __nonnull;
|
char * strcat(char * dest, const char * src) __nonnull;
|
||||||
char * strncat(char *dest, const char *src, size_t count) __nonnull;
|
|
||||||
int __pure strcmp(const char * cs,const char * ct) __nonnull;
|
int __pure strcmp(const char * cs,const char * ct) __nonnull;
|
||||||
int __pure strncmp(const char * cs,const char * ct,
|
int __pure strncmp(const char * cs,const char * ct,
|
||||||
size_t count) __nonnull;
|
size_t count) __nonnull;
|
||||||
|
@ -31,17 +29,13 @@ char * __pure strchr(const char * s, int c) __nonnull;
|
||||||
char * __pure strrchr(const char * s, int c) __nonnull;
|
char * __pure strrchr(const char * s, int c) __nonnull;
|
||||||
size_t __pure strlen(const char * s) __nonnull;
|
size_t __pure strlen(const char * s) __nonnull;
|
||||||
size_t __pure strnlen(const char * s, size_t count) __nonnull;
|
size_t __pure strnlen(const char * s, size_t count) __nonnull;
|
||||||
size_t __pure strspn(const char *s, const char *accept) __nonnull;
|
|
||||||
size_t __pure strcspn(const char *s, const char *reject) __nonnull;
|
|
||||||
char * __pure strpbrk(const char * cs,const char * ct) __nonnull;
|
char * __pure strpbrk(const char * cs,const char * ct) __nonnull;
|
||||||
char * strtok(char * s,const char * ct) __nonnull;
|
|
||||||
char * strsep(char **s, const char *ct) __nonnull;
|
char * strsep(char **s, const char *ct) __nonnull;
|
||||||
void * memset(void * s,int c,size_t count) __nonnull;
|
void * memset(void * s,int c,size_t count) __nonnull;
|
||||||
void * memcpy ( void *dest, const void *src, size_t len ) __nonnull;
|
void * memcpy ( void *dest, const void *src, size_t len ) __nonnull;
|
||||||
void * memmove(void * dest,const void *src,size_t count) __nonnull;
|
void * memmove(void * dest,const void *src,size_t count) __nonnull;
|
||||||
int __pure memcmp(const void * cs,const void * ct,
|
int __pure memcmp(const void * cs,const void * ct,
|
||||||
size_t count) __nonnull;
|
size_t count) __nonnull;
|
||||||
void * __pure memscan(const void * addr, int c, size_t size) __nonnull;
|
|
||||||
char * __pure strstr(const char * s1,const char * s2) __nonnull;
|
char * __pure strstr(const char * s1,const char * s2) __nonnull;
|
||||||
void * __pure memchr(const void *s, int c, size_t n) __nonnull;
|
void * __pure memchr(const void *s, int c, size_t n) __nonnull;
|
||||||
char * __malloc strdup(const char *s) __nonnull;
|
char * __malloc strdup(const char *s) __nonnull;
|
||||||
|
|
Loading…
Reference in New Issue