WL#5486: Remove code for unsupported platforms
Remove VMS specific code.
This commit is contained in:
parent
79dcc17d49
commit
9f3aa51ba1
@ -477,7 +477,7 @@ struct passwd *getpwuid(uid_t);
|
|||||||
char* getlogin(void);
|
char* getlogin(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if !defined(VMS) && !defined(__WIN__)
|
#if !defined(__WIN__)
|
||||||
|
|
||||||
void read_user_name(char *name)
|
void read_user_name(char *name)
|
||||||
{
|
{
|
||||||
@ -507,7 +507,7 @@ void read_user_name(char *name)
|
|||||||
DBUG_VOID_RETURN;
|
DBUG_VOID_RETURN;
|
||||||
}
|
}
|
||||||
|
|
||||||
#else /* If Windows || VMS */
|
#else /* If Windows */
|
||||||
|
|
||||||
void read_user_name(char *name)
|
void read_user_name(char *name)
|
||||||
{
|
{
|
||||||
|
@ -40,11 +40,7 @@ size_t dirname_length(const char *name)
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
if (*pos == FN_LIBCHAR || *pos == '/'
|
if (*pos == FN_LIBCHAR || *pos == '/')
|
||||||
#ifdef FN_C_AFTER_DIR
|
|
||||||
|| *pos == FN_C_AFTER_DIR || *pos == FN_C_AFTER_DIR_2
|
|
||||||
#endif
|
|
||||||
)
|
|
||||||
gpos=pos;
|
gpos=pos;
|
||||||
}
|
}
|
||||||
return (size_t) (gpos+1-(char*) name);
|
return (size_t) (gpos+1-(char*) name);
|
||||||
@ -88,8 +84,7 @@ size_t dirname_part(char *to, const char *name, size_t *to_res_length)
|
|||||||
from_end Pointer at end of filename (normally end \0)
|
from_end Pointer at end of filename (normally end \0)
|
||||||
|
|
||||||
IMPLEMENTATION
|
IMPLEMENTATION
|
||||||
If MSDOS converts '/' to '\'
|
If Windows converts '/' to '\'
|
||||||
If VMS converts '<' to '[' and '>' to ']'
|
|
||||||
Adds a FN_LIBCHAR to end if the result string if there isn't one
|
Adds a FN_LIBCHAR to end if the result string if there isn't one
|
||||||
and the last isn't dev_char.
|
and the last isn't dev_char.
|
||||||
Copies data from 'from' until ASCII(0) for until from == from_end
|
Copies data from 'from' until ASCII(0) for until from == from_end
|
||||||
@ -118,18 +113,12 @@ char *convert_dirname(char *to, const char *from, const char *from_end)
|
|||||||
if (!from_end || (from_end - from) > FN_REFLEN-2)
|
if (!from_end || (from_end - from) > FN_REFLEN-2)
|
||||||
from_end=from+FN_REFLEN -2;
|
from_end=from+FN_REFLEN -2;
|
||||||
|
|
||||||
#if FN_LIBCHAR != '/' || defined(FN_C_BEFORE_DIR_2)
|
#if FN_LIBCHAR != '/'
|
||||||
{
|
{
|
||||||
for (; from != from_end && *from ; from++)
|
for (; from != from_end && *from ; from++)
|
||||||
{
|
{
|
||||||
if (*from == '/')
|
if (*from == '/')
|
||||||
*to++= FN_LIBCHAR;
|
*to++= FN_LIBCHAR;
|
||||||
#ifdef FN_C_BEFORE_DIR_2
|
|
||||||
else if (*from == FN_C_BEFORE_DIR_2)
|
|
||||||
*to++= FN_C_BEFORE_DIR;
|
|
||||||
else if (*from == FN_C_AFTER_DIR_2)
|
|
||||||
*to++= FN_C_AFTER_DIR;
|
|
||||||
#endif
|
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
#ifdef BACKSLASH_MBTAIL
|
#ifdef BACKSLASH_MBTAIL
|
||||||
|
@ -39,7 +39,7 @@ char *fn_ext(const char *name)
|
|||||||
DBUG_ENTER("fn_ext");
|
DBUG_ENTER("fn_ext");
|
||||||
DBUG_PRINT("mfunkt",("name: '%s'",name));
|
DBUG_PRINT("mfunkt",("name: '%s'",name));
|
||||||
|
|
||||||
#if defined(FN_DEVCHAR) || defined(FN_C_AFTER_DIR) || defined(BASKSLASH_MBTAIL)
|
#if defined(FN_DEVCHAR) || defined(BASKSLASH_MBTAIL)
|
||||||
{
|
{
|
||||||
char buff[FN_REFLEN];
|
char buff[FN_REFLEN];
|
||||||
size_t res_length;
|
size_t res_length;
|
||||||
|
@ -18,11 +18,6 @@
|
|||||||
#ifdef HAVE_PWD_H
|
#ifdef HAVE_PWD_H
|
||||||
#include <pwd.h>
|
#include <pwd.h>
|
||||||
#endif
|
#endif
|
||||||
#ifdef VMS
|
|
||||||
#include <rms.h>
|
|
||||||
#include <iodef.h>
|
|
||||||
#include <descrip.h>
|
|
||||||
#endif /* VMS */
|
|
||||||
|
|
||||||
static char * expand_tilde(char **path);
|
static char * expand_tilde(char **path);
|
||||||
|
|
||||||
@ -300,8 +295,7 @@ size_t normalize_dirname(char *to, const char *from)
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
Despite the name, this actually converts the name to the system's
|
Despite the name, this actually converts the name to the system's
|
||||||
format (TODO: rip out the non-working VMS stuff and name this
|
format (TODO: name this properly).
|
||||||
properly).
|
|
||||||
*/
|
*/
|
||||||
(void) intern_filename(buff, from);
|
(void) intern_filename(buff, from);
|
||||||
length= strlen(buff); /* Fix that '/' is last */
|
length= strlen(buff); /* Fix that '/' is last */
|
||||||
@ -445,71 +439,8 @@ size_t unpack_filename(char * to, const char *from)
|
|||||||
|
|
||||||
size_t system_filename(char *to, const char *from)
|
size_t system_filename(char *to, const char *from)
|
||||||
{
|
{
|
||||||
#ifndef FN_C_BEFORE_DIR
|
|
||||||
return (size_t) (strmake(to,from,FN_REFLEN-1)-to);
|
return (size_t) (strmake(to,from,FN_REFLEN-1)-to);
|
||||||
#else /* VMS */
|
|
||||||
|
|
||||||
/* change 'dev:lib/xxx' to 'dev:[lib]xxx' */
|
|
||||||
/* change 'dev:xxx' to 'dev:xxx' */
|
|
||||||
/* change './xxx' to 'xxx' */
|
|
||||||
/* change './lib/' or lib/ to '[.lib]' */
|
|
||||||
/* change '/x/y/z to '[x.y]x' */
|
|
||||||
/* change 'dev:/x' to 'dev:[000000]x' */
|
|
||||||
|
|
||||||
int libchar_found;
|
|
||||||
size_t length;
|
|
||||||
char * to_pos,from_pos,pos;
|
|
||||||
char buff[FN_REFLEN];
|
|
||||||
DBUG_ENTER("system_filename");
|
|
||||||
|
|
||||||
libchar_found=0;
|
|
||||||
(void) strmov(buff,from); /* If to == from */
|
|
||||||
from_pos= buff;
|
|
||||||
if ((pos=strrchr(from_pos,FN_DEVCHAR))) /* Skip device part */
|
|
||||||
{
|
|
||||||
pos++;
|
|
||||||
to_pos=strnmov(to,from_pos,(size_t) (pos-from_pos));
|
|
||||||
from_pos=pos;
|
|
||||||
}
|
}
|
||||||
else
|
|
||||||
to_pos=to;
|
|
||||||
|
|
||||||
if (from_pos[0] == FN_CURLIB && from_pos[1] == FN_LIBCHAR)
|
|
||||||
from_pos+=2; /* Skip './' */
|
|
||||||
if (strchr(from_pos,FN_LIBCHAR))
|
|
||||||
{
|
|
||||||
*(to_pos++) = FN_C_BEFORE_DIR;
|
|
||||||
if (strinstr(from_pos,FN_ROOTDIR) == 1)
|
|
||||||
{
|
|
||||||
from_pos+=strlen(FN_ROOTDIR); /* Actually +1 but... */
|
|
||||||
if (! strchr(from_pos,FN_LIBCHAR))
|
|
||||||
{ /* No dir, use [000000] */
|
|
||||||
to_pos=strmov(to_pos,FN_C_ROOT_DIR);
|
|
||||||
libchar_found++;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
*(to_pos++)=FN_C_DIR_SEP; /* '.' gives current dir */
|
|
||||||
|
|
||||||
while ((pos=strchr(from_pos,FN_LIBCHAR)))
|
|
||||||
{
|
|
||||||
if (libchar_found++)
|
|
||||||
*(to_pos++)=FN_C_DIR_SEP; /* Add '.' between dirs */
|
|
||||||
if (strinstr(from_pos,FN_PARENTDIR) == 1 &&
|
|
||||||
from_pos+strlen(FN_PARENTDIR) == pos)
|
|
||||||
to_pos=strmov(to_pos,FN_C_PARENT_DIR); /* Found '../' */
|
|
||||||
else
|
|
||||||
to_pos=strnmov(to_pos,from_pos,(size_t) (pos-from_pos));
|
|
||||||
from_pos=pos+1;
|
|
||||||
}
|
|
||||||
*(to_pos++)=FN_C_AFTER_DIR;
|
|
||||||
}
|
|
||||||
length= (size_t) (strmov(to_pos,from_pos)-to);
|
|
||||||
DBUG_PRINT("exit",("name: '%s'",to));
|
|
||||||
DBUG_RETURN(length);
|
|
||||||
#endif
|
|
||||||
} /* system_filename */
|
|
||||||
|
|
||||||
|
|
||||||
/* Fix a filename to intern (UNIX format) */
|
/* Fix a filename to intern (UNIX format) */
|
||||||
|
|
||||||
|
@ -106,7 +106,7 @@ int my_copy(const char *from, const char *to, myf MyFlags)
|
|||||||
#if !defined(__WIN__)
|
#if !defined(__WIN__)
|
||||||
res= chown(to, stat_buff.st_uid,stat_buff.st_gid); /* Copy ownership */
|
res= chown(to, stat_buff.st_uid,stat_buff.st_gid); /* Copy ownership */
|
||||||
#endif
|
#endif
|
||||||
#if !defined(VMS)
|
|
||||||
if (MyFlags & MY_COPYTIME)
|
if (MyFlags & MY_COPYTIME)
|
||||||
{
|
{
|
||||||
struct utimbuf timep;
|
struct utimbuf timep;
|
||||||
@ -114,7 +114,7 @@ int my_copy(const char *from, const char *to, myf MyFlags)
|
|||||||
timep.modtime = stat_buff.st_mtime;
|
timep.modtime = stat_buff.st_mtime;
|
||||||
(void) utime((char*) to, &timep); /* last accessed and modified times */
|
(void) utime((char*) to, &timep); /* last accessed and modified times */
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
DBUG_RETURN(0);
|
DBUG_RETURN(0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -72,16 +72,6 @@ int my_getwd(char * buf, size_t size, myf MyFlags)
|
|||||||
getwd(pathname);
|
getwd(pathname);
|
||||||
strmake(buf,pathname,size-1);
|
strmake(buf,pathname,size-1);
|
||||||
}
|
}
|
||||||
#elif defined(VMS)
|
|
||||||
if (size < 2)
|
|
||||||
DBUG_RETURN(-1);
|
|
||||||
if (!getcwd(buf,size-2,1) && MyFlags & MY_WME)
|
|
||||||
{
|
|
||||||
my_errno=errno;
|
|
||||||
my_error(EE_GETWD,MYF(ME_BELL+ME_WAITTANG),errno);
|
|
||||||
DBUG_RETURN(-1);
|
|
||||||
}
|
|
||||||
intern_filename(buf,buf);
|
|
||||||
#else
|
#else
|
||||||
#error "No way to get current directory"
|
#error "No way to get current directory"
|
||||||
#endif
|
#endif
|
||||||
@ -103,27 +93,12 @@ int my_setwd(const char *dir, myf MyFlags)
|
|||||||
int res;
|
int res;
|
||||||
size_t length;
|
size_t length;
|
||||||
char *start, *pos;
|
char *start, *pos;
|
||||||
#if defined(VMS)
|
|
||||||
char buff[FN_REFLEN];
|
|
||||||
#endif
|
|
||||||
DBUG_ENTER("my_setwd");
|
DBUG_ENTER("my_setwd");
|
||||||
DBUG_PRINT("my",("dir: '%s' MyFlags %d", dir, MyFlags));
|
DBUG_PRINT("my",("dir: '%s' MyFlags %d", dir, MyFlags));
|
||||||
|
|
||||||
start=(char *) dir;
|
start=(char *) dir;
|
||||||
if (! dir[0] || (dir[0] == FN_LIBCHAR && dir[1] == 0))
|
if (! dir[0] || (dir[0] == FN_LIBCHAR && dir[1] == 0))
|
||||||
dir=FN_ROOTDIR;
|
dir=FN_ROOTDIR;
|
||||||
#ifdef VMS
|
|
||||||
{
|
|
||||||
pos=strmov(buff,dir);
|
|
||||||
if (pos[-1] != FN_LIBCHAR)
|
|
||||||
{
|
|
||||||
pos[0]=FN_LIBCHAR; /* Mark as directory */
|
|
||||||
pos[1]=0;
|
|
||||||
}
|
|
||||||
system_filename(buff,buff); /* Change to VMS format */
|
|
||||||
dir=buff;
|
|
||||||
}
|
|
||||||
#endif /* VMS */
|
|
||||||
if ((res=chdir((char*) dir)) != 0)
|
if ((res=chdir((char*) dir)) != 0)
|
||||||
{
|
{
|
||||||
my_errno=errno;
|
my_errno=errno;
|
||||||
|
@ -19,10 +19,6 @@
|
|||||||
#include <m_string.h>
|
#include <m_string.h>
|
||||||
#include <m_ctype.h>
|
#include <m_ctype.h>
|
||||||
#include <signal.h>
|
#include <signal.h>
|
||||||
#ifdef VMS
|
|
||||||
#include <my_static.c>
|
|
||||||
#include <m_ctype.h>
|
|
||||||
#endif
|
|
||||||
#ifdef __WIN__
|
#ifdef __WIN__
|
||||||
#ifdef _MSC_VER
|
#ifdef _MSC_VER
|
||||||
#include <locale.h>
|
#include <locale.h>
|
||||||
@ -79,14 +75,12 @@ my_bool my_basic_init(void)
|
|||||||
my_umask= 0660; /* Default umask for new files */
|
my_umask= 0660; /* Default umask for new files */
|
||||||
my_umask_dir= 0700; /* Default umask for new directories */
|
my_umask_dir= 0700; /* Default umask for new directories */
|
||||||
|
|
||||||
#ifndef VMS
|
|
||||||
/* Default creation of new files */
|
/* Default creation of new files */
|
||||||
if ((str= getenv("UMASK")) != 0)
|
if ((str= getenv("UMASK")) != 0)
|
||||||
my_umask= (int) (atoi_octal(str) | 0600);
|
my_umask= (int) (atoi_octal(str) | 0600);
|
||||||
/* Default creation of new dir's */
|
/* Default creation of new dir's */
|
||||||
if ((str= getenv("UMASK_DIR")) != 0)
|
if ((str= getenv("UMASK_DIR")) != 0)
|
||||||
my_umask_dir= (int) (atoi_octal(str) | 0700);
|
my_umask_dir= (int) (atoi_octal(str) | 0700);
|
||||||
#endif
|
|
||||||
|
|
||||||
init_glob_errs();
|
init_glob_errs();
|
||||||
|
|
||||||
@ -152,9 +146,6 @@ my_bool my_init(void)
|
|||||||
DBUG_ENTER("my_init");
|
DBUG_ENTER("my_init");
|
||||||
DBUG_PROCESS((char*) (my_progname ? my_progname : "unknown"));
|
DBUG_PROCESS((char*) (my_progname ? my_progname : "unknown"));
|
||||||
my_win_init();
|
my_win_init();
|
||||||
#ifdef VMS
|
|
||||||
init_ctype(); /* Stupid linker don't link _ctype.c */
|
|
||||||
#endif
|
|
||||||
DBUG_PRINT("exit", ("home: '%s'", home_dir));
|
DBUG_PRINT("exit", ("home: '%s'", home_dir));
|
||||||
#ifdef __WIN__
|
#ifdef __WIN__
|
||||||
win32_init_tcp_ip();
|
win32_init_tcp_ip();
|
||||||
|
129
mysys/my_lib.c
129
mysys/my_lib.c
@ -40,11 +40,6 @@
|
|||||||
# endif
|
# endif
|
||||||
# endif
|
# endif
|
||||||
#endif
|
#endif
|
||||||
#ifdef VMS
|
|
||||||
#include <rms.h>
|
|
||||||
#include <iodef.h>
|
|
||||||
#include <descrip.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#if defined(THREAD) && defined(HAVE_READDIR_R)
|
#if defined(THREAD) && defined(HAVE_READDIR_R)
|
||||||
#define READDIR(A,B,C) ((errno=readdir_r(A,B,&C)) != 0 || !C)
|
#define READDIR(A,B,C) ((errno=readdir_r(A,B,&C)) != 0 || !C)
|
||||||
@ -198,9 +193,6 @@ MY_DIR *my_dir(const char *path, myf MyFlags)
|
|||||||
|
|
||||||
/*
|
/*
|
||||||
* Convert from directory name to filename.
|
* Convert from directory name to filename.
|
||||||
* On VMS:
|
|
||||||
* xyzzy:[mukesh.emacs] => xyzzy:[mukesh]emacs.dir.1
|
|
||||||
* xyzzy:[mukesh] => xyzzy:[000000]mukesh.dir.1
|
|
||||||
* On UNIX, it's simple: just make sure there is a terminating /
|
* On UNIX, it's simple: just make sure there is a terminating /
|
||||||
|
|
||||||
* Returns pointer to dst;
|
* Returns pointer to dst;
|
||||||
@ -208,10 +200,7 @@ MY_DIR *my_dir(const char *path, myf MyFlags)
|
|||||||
|
|
||||||
char * directory_file_name (char * dst, const char *src)
|
char * directory_file_name (char * dst, const char *src)
|
||||||
{
|
{
|
||||||
#ifndef VMS
|
|
||||||
|
|
||||||
/* Process as Unix format: just remove test the final slash. */
|
/* Process as Unix format: just remove test the final slash. */
|
||||||
|
|
||||||
char *end;
|
char *end;
|
||||||
|
|
||||||
if (src[0] == 0)
|
if (src[0] == 0)
|
||||||
@ -223,125 +212,7 @@ char * directory_file_name (char * dst, const char *src)
|
|||||||
end[1]='\0';
|
end[1]='\0';
|
||||||
}
|
}
|
||||||
return dst;
|
return dst;
|
||||||
|
|
||||||
#else /* VMS */
|
|
||||||
|
|
||||||
long slen;
|
|
||||||
long rlen;
|
|
||||||
char * ptr, rptr;
|
|
||||||
char bracket;
|
|
||||||
struct FAB fab = cc$rms_fab;
|
|
||||||
struct NAM nam = cc$rms_nam;
|
|
||||||
char esa[NAM$C_MAXRSS];
|
|
||||||
|
|
||||||
if (! src[0])
|
|
||||||
src="[.]"; /* Empty is == current dir */
|
|
||||||
|
|
||||||
slen = strlen (src) - 1;
|
|
||||||
if (src[slen] == FN_C_AFTER_DIR || src[slen] == FN_C_AFTER_DIR_2 ||
|
|
||||||
src[slen] == FN_DEVCHAR)
|
|
||||||
{
|
|
||||||
/* VMS style - convert [x.y.z] to [x.y]z, [x] to [000000]x */
|
|
||||||
fab.fab$l_fna = src;
|
|
||||||
fab.fab$b_fns = slen + 1;
|
|
||||||
fab.fab$l_nam = &nam;
|
|
||||||
fab.fab$l_fop = FAB$M_NAM;
|
|
||||||
|
|
||||||
nam.nam$l_esa = esa;
|
|
||||||
nam.nam$b_ess = sizeof esa;
|
|
||||||
nam.nam$b_nop |= NAM$M_SYNCHK;
|
|
||||||
|
|
||||||
/* We call SYS$PARSE to handle such things as [--] for us. */
|
|
||||||
if (SYS$PARSE(&fab, 0, 0) == RMS$_NORMAL)
|
|
||||||
{
|
|
||||||
slen = nam.nam$b_esl - 1;
|
|
||||||
if (esa[slen] == ';' && esa[slen - 1] == '.')
|
|
||||||
slen -= 2;
|
|
||||||
esa[slen + 1] = '\0';
|
|
||||||
src = esa;
|
|
||||||
}
|
}
|
||||||
if (src[slen] != FN_C_AFTER_DIR && src[slen] != FN_C_AFTER_DIR_2)
|
|
||||||
{
|
|
||||||
/* what about when we have logical_name:???? */
|
|
||||||
if (src[slen] == FN_DEVCHAR)
|
|
||||||
{ /* Xlate logical name and see what we get */
|
|
||||||
(void) strmov(dst,src);
|
|
||||||
dst[slen] = 0; /* remove colon */
|
|
||||||
if (!(src = getenv (dst)))
|
|
||||||
return dst; /* Can't translate */
|
|
||||||
|
|
||||||
/* should we jump to the beginning of this procedure?
|
|
||||||
Good points: allows us to use logical names that xlate
|
|
||||||
to Unix names,
|
|
||||||
Bad points: can be a problem if we just translated to a device
|
|
||||||
name...
|
|
||||||
For now, I'll punt and always expect VMS names, and hope for
|
|
||||||
the best! */
|
|
||||||
|
|
||||||
slen = strlen (src) - 1;
|
|
||||||
if (src[slen] != FN_C_AFTER_DIR && src[slen] != FN_C_AFTER_DIR_2)
|
|
||||||
{ /* no recursion here! */
|
|
||||||
(void) strmov(dst, src);
|
|
||||||
return(dst);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{ /* not a directory spec */
|
|
||||||
(void) strmov(dst, src);
|
|
||||||
return(dst);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
bracket = src[slen]; /* End char */
|
|
||||||
if (!(ptr = strchr (src, bracket - 2)))
|
|
||||||
{ /* no opening bracket */
|
|
||||||
(void) strmov (dst, src);
|
|
||||||
return dst;
|
|
||||||
}
|
|
||||||
if (!(rptr = strrchr (src, '.')))
|
|
||||||
rptr = ptr;
|
|
||||||
slen = rptr - src;
|
|
||||||
(void) strmake (dst, src, slen);
|
|
||||||
|
|
||||||
if (*rptr == '.')
|
|
||||||
{ /* Put bracket and add */
|
|
||||||
dst[slen++] = bracket; /* (rptr+1) after this */
|
|
||||||
}
|
|
||||||
else
|
|
||||||
{
|
|
||||||
/* If we have the top-level of a rooted directory (i.e. xx:[000000]),
|
|
||||||
then translate the device and recurse. */
|
|
||||||
|
|
||||||
if (dst[slen - 1] == ':'
|
|
||||||
&& dst[slen - 2] != ':' /* skip decnet nodes */
|
|
||||||
&& strcmp(src + slen, "[000000]") == 0)
|
|
||||||
{
|
|
||||||
dst[slen - 1] = '\0';
|
|
||||||
if ((ptr = getenv (dst))
|
|
||||||
&& (rlen = strlen (ptr) - 1) > 0
|
|
||||||
&& (ptr[rlen] == FN_C_AFTER_DIR || ptr[rlen] == FN_C_AFTER_DIR_2)
|
|
||||||
&& ptr[rlen - 1] == '.')
|
|
||||||
{
|
|
||||||
(void) strmov(esa,ptr);
|
|
||||||
esa[rlen - 1] = FN_C_AFTER_DIR;
|
|
||||||
esa[rlen] = '\0';
|
|
||||||
return (directory_file_name (dst, esa));
|
|
||||||
}
|
|
||||||
else
|
|
||||||
dst[slen - 1] = ':';
|
|
||||||
}
|
|
||||||
(void) strmov(dst+slen,"[000000]");
|
|
||||||
slen += 8;
|
|
||||||
}
|
|
||||||
(void) strmov(strmov(dst+slen,rptr+1)-1,".DIR.1");
|
|
||||||
return dst;
|
|
||||||
}
|
|
||||||
(void) strmov(dst, src);
|
|
||||||
if (dst[slen] == '/' && slen > 1)
|
|
||||||
dst[slen] = 0;
|
|
||||||
return dst;
|
|
||||||
#endif /* VMS */
|
|
||||||
} /* directory_file_name */
|
|
||||||
|
|
||||||
#else
|
#else
|
||||||
|
|
||||||
|
@ -146,9 +146,6 @@ int my_lock(File fd, int locktype, my_off_t start, my_off_t length,
|
|||||||
DBUG_ENTER("my_lock");
|
DBUG_ENTER("my_lock");
|
||||||
DBUG_PRINT("my",("fd: %d Op: %d start: %ld Length: %ld MyFlags: %d",
|
DBUG_PRINT("my",("fd: %d Op: %d start: %ld Length: %ld MyFlags: %d",
|
||||||
fd,locktype,(long) start,(long) length,MyFlags));
|
fd,locktype,(long) start,(long) length,MyFlags));
|
||||||
#ifdef VMS
|
|
||||||
DBUG_RETURN(0);
|
|
||||||
#else
|
|
||||||
if (my_disable_locking)
|
if (my_disable_locking)
|
||||||
DBUG_RETURN(0);
|
DBUG_RETURN(0);
|
||||||
|
|
||||||
@ -223,5 +220,4 @@ int my_lock(File fd, int locktype, my_off_t start, my_off_t length,
|
|||||||
}
|
}
|
||||||
DBUG_PRINT("error",("my_errno: %d (%d)",my_errno,errno));
|
DBUG_PRINT("error",("my_errno: %d (%d)",my_errno,errno));
|
||||||
DBUG_RETURN(-1);
|
DBUG_RETURN(-1);
|
||||||
#endif /* ! VMS */
|
|
||||||
} /* my_lock */
|
} /* my_lock */
|
||||||
|
@ -100,7 +100,6 @@ int my_copystat(const char *from, const char *to, int MyFlags)
|
|||||||
res= chown(to, statbuf.st_uid, statbuf.st_gid); /* Copy ownership */
|
res= chown(to, statbuf.st_uid, statbuf.st_gid); /* Copy ownership */
|
||||||
#endif /* !__WIN__ */
|
#endif /* !__WIN__ */
|
||||||
|
|
||||||
#ifndef VMS
|
|
||||||
if (MyFlags & MY_COPYTIME)
|
if (MyFlags & MY_COPYTIME)
|
||||||
{
|
{
|
||||||
struct utimbuf timep;
|
struct utimbuf timep;
|
||||||
@ -108,14 +107,6 @@ int my_copystat(const char *from, const char *to, int MyFlags)
|
|||||||
timep.modtime = statbuf.st_mtime;
|
timep.modtime = statbuf.st_mtime;
|
||||||
(void) utime((char*) to, &timep);/* Update last accessed and modified times */
|
(void) utime((char*) to, &timep);/* Update last accessed and modified times */
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
if (MyFlags & MY_COPYTIME)
|
|
||||||
{
|
|
||||||
time_t time[2];
|
|
||||||
time[0]= statbuf.st_atime;
|
|
||||||
time[1]= statbuf.st_mtime;
|
|
||||||
(void) utime((char*) to, time);/* Update last accessed and modified times */
|
|
||||||
}
|
|
||||||
#endif
|
|
||||||
return 0;
|
return 0;
|
||||||
} /* my_copystat */
|
} /* my_copystat */
|
||||||
|
@ -16,10 +16,6 @@
|
|||||||
/* open a heap-database */
|
/* open a heap-database */
|
||||||
|
|
||||||
#include "heapdef.h"
|
#include "heapdef.h"
|
||||||
#ifdef VMS
|
|
||||||
#include "hp_static.c" /* Stupid vms-linker */
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include "my_sys.h"
|
#include "my_sys.h"
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
@ -22,9 +22,6 @@
|
|||||||
#ifdef __WIN__
|
#ifdef __WIN__
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#endif
|
#endif
|
||||||
#ifdef VMS
|
|
||||||
#include <processes.h>
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#undef GETPID /* For HPUX */
|
#undef GETPID /* For HPUX */
|
||||||
#ifdef THREAD
|
#ifdef THREAD
|
||||||
|
@ -23,9 +23,6 @@
|
|||||||
#ifdef __WIN__
|
#ifdef __WIN__
|
||||||
#include <fcntl.h>
|
#include <fcntl.h>
|
||||||
#endif
|
#endif
|
||||||
#ifdef VMS
|
|
||||||
#include "static.c"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
static void setup_key_functions(MI_KEYDEF *keyinfo);
|
static void setup_key_functions(MI_KEYDEF *keyinfo);
|
||||||
#define get_next_element(to,pos,size) { memcpy((char*) to,pos,(size_t) size); \
|
#define get_next_element(to,pos,size) { memcpy((char*) to,pos,(size_t) size); \
|
||||||
|
@ -18,9 +18,6 @@
|
|||||||
#include "myrg_def.h"
|
#include "myrg_def.h"
|
||||||
#include <stddef.h>
|
#include <stddef.h>
|
||||||
#include <errno.h>
|
#include <errno.h>
|
||||||
#ifdef VMS
|
|
||||||
#include "mrg_static.c"
|
|
||||||
#endif
|
|
||||||
|
|
||||||
/*
|
/*
|
||||||
open a MyISAM MERGE table
|
open a MyISAM MERGE table
|
||||||
|
Loading…
x
Reference in New Issue
Block a user