diff options
author | Corinna Vinschen <corinna@vinschen.de> | 2001-02-22 12:56:36 +0000 |
---|---|---|
committer | Corinna Vinschen <corinna@vinschen.de> | 2001-02-22 12:56:36 +0000 |
commit | 79e56091c9e4f21ecf1807e0f0f4441ddddc84e6 (patch) | |
tree | 323f92d808a31d48a656b112b8cb031aa1fd45b6 /winsup/cygwin/shortcut.h | |
parent | 957059c8315fd725db2096ef696e57167d721e31 (diff) | |
download | cygnal-79e56091c9e4f21ecf1807e0f0f4441ddddc84e6.tar.gz cygnal-79e56091c9e4f21ecf1807e0f0f4441ddddc84e6.tar.bz2 cygnal-79e56091c9e4f21ecf1807e0f0f4441ddddc84e6.zip |
* shortcut.c: New file. Provides a C interface to reading of
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'.
Diffstat (limited to 'winsup/cygwin/shortcut.h')
-rw-r--r-- | winsup/cygwin/shortcut.h | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/winsup/cygwin/shortcut.h b/winsup/cygwin/shortcut.h new file mode 100644 index 000000000..87e7ff156 --- /dev/null +++ b/winsup/cygwin/shortcut.h @@ -0,0 +1,28 @@ +/* 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 |