79e56091c9
Windows shortcuts to avoid compiler flag `-fvtable-thunks'. * shortcut.h: Ditto. * Makefile.in: Add shortcut.o to DLL_OFILES. * cygerrno.h: Provide a C interface to `geterrno_from_win_error' for using in shortcut.c. * errno.cc (geterrno_from_win_error): Define as extern "C". * path.cc (struct symlink_info): Remove methods `check_shortcut' and `check_sysfile'. (shortcut_header): Move to shortcut.c. (shortcut_initalized): Ditto. (create_shortcut_header): Ditto. (cmp_shortcut_header): Ditto. (symlink_info::check_shortcut): Ditto. Reorganize as a plain C function. (symlink_info::check_sysfile): Redefine as a global function using the same parameter list as `check_shortcut' for clearness. (symlink_info::check): Change parameter list for calls to `check_shortcut' and `check_sysfile'.
29 lines
629 B
C
29 lines
629 B
C
/* shortcut.h: Hader file for shortcut.c
|
|
|
|
Copyright 2001 Red Hat, Inc.
|
|
|
|
This file is part of Cygwin.
|
|
|
|
This software is a copyrighted work licensed under the terms of the
|
|
Cygwin license. Please consult the file "CYGWIN_LICENSE" for
|
|
details. */
|
|
|
|
#ifdef __cplusplus
|
|
extern "C" {
|
|
#endif
|
|
|
|
/* The header written to a shortcut by Cygwin or U/WIN. */
|
|
#define SHORTCUT_HDR_SIZE 76
|
|
|
|
extern char shortcut_header[];
|
|
extern BOOL shortcut_initalized;
|
|
|
|
extern void create_shortcut_header ();
|
|
|
|
int check_shortcut (const char *path, DWORD fileattr, HANDLE h,
|
|
char *contents, int *error, unsigned *pflags);
|
|
|
|
#ifdef __cplusplus
|
|
};
|
|
#endif
|