opal/util: remove opal_strncpy()
This function is not used anywhere anymore. Signed-off-by: Jeff Squyres <jsquyres@cisco.com>
Этот коммит содержится в:
родитель
7a593cea4a
Коммит
8b60cc8039
@ -70,7 +70,6 @@ headers = \
|
|||||||
show_help.h \
|
show_help.h \
|
||||||
show_help_lex.h \
|
show_help_lex.h \
|
||||||
stacktrace.h \
|
stacktrace.h \
|
||||||
strncpy.h \
|
|
||||||
string_copy.h \
|
string_copy.h \
|
||||||
sys_limits.h \
|
sys_limits.h \
|
||||||
timings.h \
|
timings.h \
|
||||||
@ -110,7 +109,6 @@ libopalutil_la_SOURCES = \
|
|||||||
show_help.c \
|
show_help.c \
|
||||||
show_help_lex.l \
|
show_help_lex.l \
|
||||||
stacktrace.c \
|
stacktrace.c \
|
||||||
strncpy.c \
|
|
||||||
string_copy.c \
|
string_copy.c \
|
||||||
sys_limits.c \
|
sys_limits.c \
|
||||||
uri.c \
|
uri.c \
|
||||||
|
@ -1,63 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
|
||||||
* University Research and Technology
|
|
||||||
* Corporation. All rights reserved.
|
|
||||||
* Copyright (c) 2004-2005 The University of Tennessee and The University
|
|
||||||
* of Tennessee Research Foundation. All rights
|
|
||||||
* reserved.
|
|
||||||
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
|
||||||
* University of Stuttgart. All rights reserved.
|
|
||||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
|
||||||
* All rights reserved.
|
|
||||||
* $COPYRIGHT$
|
|
||||||
*
|
|
||||||
* Additional copyrights may follow
|
|
||||||
*
|
|
||||||
* $HEADER$
|
|
||||||
*
|
|
||||||
* This file is only here because some platforms have a broken strncpy
|
|
||||||
* (e.g., Itanium with RedHat Advanced Server glibc).
|
|
||||||
*/
|
|
||||||
|
|
||||||
#include "opal_config.h"
|
|
||||||
|
|
||||||
#include <string.h>
|
|
||||||
|
|
||||||
#include "opal/util/strncpy.h"
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Provide a portable, working strncpy() for platforms that have
|
|
||||||
* broken implementations.
|
|
||||||
*
|
|
||||||
* @param dest Destination string.
|
|
||||||
* @param src Source string.
|
|
||||||
* @param len Length of the string to copy.
|
|
||||||
*
|
|
||||||
* @return The value dest.
|
|
||||||
*
|
|
||||||
* This function is identical in behavior to strncpy(), but is not
|
|
||||||
* optimized at all (we're not concerned with high-performance
|
|
||||||
* strncpy!). It is only here because some platforms have broken
|
|
||||||
* implementations of strncpy() that cause segfaults (cough cough Red
|
|
||||||
* Hat Advanced Server glibc cough cough).
|
|
||||||
*/
|
|
||||||
char *
|
|
||||||
opal_strncpy(char *dest, const char *src, size_t len)
|
|
||||||
{
|
|
||||||
size_t i;
|
|
||||||
int pad = 0;
|
|
||||||
char *new_dest = dest;
|
|
||||||
|
|
||||||
for (i = 0; i < len; ++i, ++src, ++new_dest) {
|
|
||||||
if (pad != 0)
|
|
||||||
*new_dest = '\0';
|
|
||||||
else {
|
|
||||||
*new_dest = *src;
|
|
||||||
if ('\0' == *src)
|
|
||||||
pad = 1;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
return dest;
|
|
||||||
}
|
|
@ -1,42 +0,0 @@
|
|||||||
/*
|
|
||||||
* Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana
|
|
||||||
* University Research and Technology
|
|
||||||
* Corporation. All rights reserved.
|
|
||||||
* Copyright (c) 2004-2006 The University of Tennessee and The University
|
|
||||||
* of Tennessee Research Foundation. All rights
|
|
||||||
* reserved.
|
|
||||||
* Copyright (c) 2004-2005 High Performance Computing Center Stuttgart,
|
|
||||||
* University of Stuttgart. All rights reserved.
|
|
||||||
* Copyright (c) 2004-2005 The Regents of the University of California.
|
|
||||||
* All rights reserved.
|
|
||||||
* $COPYRIGHT$
|
|
||||||
*
|
|
||||||
* Additional copyrights may follow
|
|
||||||
*
|
|
||||||
* $HEADER$
|
|
||||||
*/
|
|
||||||
|
|
||||||
#ifndef OPAL_STRNCPY_H
|
|
||||||
#define OPAL_STRNCPY_H
|
|
||||||
|
|
||||||
#include "opal_config.h"
|
|
||||||
#ifdef HAVE_SYS_TYPES_H
|
|
||||||
#include <sys/types.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
|
||||||
* Use opal_strncpy() instead of strncpy()
|
|
||||||
*/
|
|
||||||
#if defined(strncpy)
|
|
||||||
#undef strncpy
|
|
||||||
#endif
|
|
||||||
#define strncpy opal_strncpy
|
|
||||||
|
|
||||||
BEGIN_C_DECLS
|
|
||||||
|
|
||||||
/* Might also be pure? */
|
|
||||||
OPAL_DECLSPEC char *opal_strncpy(char *dest, const char *src, size_t len) __opal_attribute_nonnull__(1) __opal_attribute_nonnull__(2);
|
|
||||||
|
|
||||||
END_C_DECLS
|
|
||||||
|
|
||||||
#endif /* OPAL_STRNCPY_H */
|
|
Загрузка…
Ссылка в новой задаче
Block a user