Recent changes from 0.9.6-stable.

This commit is contained in:
Richard Levitte 2004-01-23 16:08:20 +00:00
parent 91de3e1952
commit e7534d6060

View File

@ -302,8 +302,36 @@ static int get_cert_by_subject(X509_LOOKUP *xl, int type, X509_NAME *name,
k=0;
for (;;)
{
sprintf(b->data,"%s/%08lx.%s%d",ctx->dirs[i],h,
postfix,k);
char c = '/';
#ifdef VMS
c = ctx->dirs[i][strlen(ctx->dirs[i])-1];
if (c != ':' && c != '>' && c != ']')
{
/* If no separator is present, we assume the
directory specifier is a logical name, and
add a colon. We really should use better
VMS routines for merging things like this,
but this will do for now...
-- Richard Levitte */
c = ':';
}
else
{
c = '\0';
}
#endif
if (c == '\0')
{
/* This is special. When c == '\0', no
directory separator should be added. */
sprintf(b->data,"%s%08lx.%s%d",ctx->dirs[i],h,
postfix,k);
}
else
{
snprintf(b->data,"%s%c%08lx.%s%d",
ctx->dirs[i],c,h,postfix,k);
}
k++;
if (stat(b->data,&st) < 0)
break;