OPENSSL_issetugid() as in the main branch.
This commit is contained in:
parent
54f7c8571f
commit
15ed15d3e4
4
CHANGES
4
CHANGES
@ -4,6 +4,10 @@
|
||||
|
||||
Changes between 0.9.6 and 0.9.6a [xx XXX 2001]
|
||||
|
||||
*) Don't use getenv in library functions when run as setuid/setgid.
|
||||
New function OPENSSL_issetugid().
|
||||
[Ulf Moeller]
|
||||
|
||||
*) Avoid false positives in memory leak detection code (crypto/mem_dbg.c)
|
||||
due to incorrect handling of multi-threading:
|
||||
|
||||
|
@ -34,8 +34,8 @@ SDIRS= md2 md5 sha mdc2 hmac ripemd \
|
||||
GENERAL=Makefile README crypto-lib.com install.com
|
||||
|
||||
LIB= $(TOP)/libcrypto.a
|
||||
LIBSRC= cryptlib.c mem.c mem_dbg.c cversion.c ex_data.c tmdiff.c cpt_err.c ebcdic.c
|
||||
LIBOBJ= cryptlib.o mem.o mem_dbg.o cversion.o ex_data.o tmdiff.o cpt_err.o ebcdic.o
|
||||
LIBSRC= cryptlib.c mem.c mem_dbg.c cversion.c ex_data.c tmdiff.c cpt_err.c ebcdic.c uid.c
|
||||
LIBOBJ= cryptlib.o mem.o mem_dbg.o cversion.o ex_data.o tmdiff.o cpt_err.o ebcdic.o uid.o
|
||||
|
||||
SRC= $(LIBSRC)
|
||||
|
||||
|
@ -277,6 +277,8 @@ int CRYPTO_is_mem_check_on(void);
|
||||
const char *SSLeay_version(int type);
|
||||
unsigned long SSLeay(void);
|
||||
|
||||
int OPENSSL_issetugid(void);
|
||||
|
||||
int CRYPTO_get_ex_new_index(int idx, STACK_OF(CRYPTO_EX_DATA_FUNCS) **skp, long argl, void *argp,
|
||||
CRYPTO_EX_new *new_func, CRYPTO_EX_dup *dup_func, CRYPTO_EX_free *free_func);
|
||||
int CRYPTO_set_ex_data(CRYPTO_EX_DATA *ad, int idx, void *val);
|
||||
|
@ -196,9 +196,10 @@ err:
|
||||
|
||||
const char *RAND_file_name(char *buf, int size)
|
||||
{
|
||||
char *s;
|
||||
char *s=NULL;
|
||||
char *ret=NULL;
|
||||
|
||||
if (OPENSSL_issetugid() == 0)
|
||||
s=getenv("RANDFILE");
|
||||
if (s != NULL)
|
||||
{
|
||||
@ -208,10 +209,10 @@ const char *RAND_file_name(char *buf, int size)
|
||||
}
|
||||
else
|
||||
{
|
||||
if (OPENSSL_issetugid() == 0)
|
||||
s=getenv("HOME");
|
||||
if (s == NULL) return(RFILE);
|
||||
if (((int)(strlen(s)+strlen(RFILE)+2)) > size)
|
||||
return(RFILE);
|
||||
if (s != NULL && (strlen(s)+strlen(RFILE)+2 < size))
|
||||
{
|
||||
strcpy(buf,s);
|
||||
#ifndef VMS
|
||||
strcat(buf,"/");
|
||||
@ -219,5 +220,8 @@ const char *RAND_file_name(char *buf, int size)
|
||||
strcat(buf,RFILE);
|
||||
ret=buf;
|
||||
}
|
||||
else
|
||||
buf[0] = '\0'; /* no file name */
|
||||
}
|
||||
return(ret);
|
||||
}
|
||||
|
@ -53,7 +53,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
#include <openssl/crypto.h>
|
||||
#include "openssl/crypto.h"
|
||||
|
||||
#if defined(__OpenBSD__) || (defined(__FreeBSD__) && __FreeBSD__ > 2)
|
||||
|
||||
@ -64,7 +64,7 @@ int OPENSSL_issetugid(void)
|
||||
return issetugid();
|
||||
}
|
||||
|
||||
#elif defined(OPENSSL_SYS_WIN32)
|
||||
#elif defined(WIN32)
|
||||
|
||||
int OPENSSL_issetugid(void)
|
||||
{
|
||||
|
Loading…
x
Reference in New Issue
Block a user