Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorCorinna Vinschen <corinna@vinschen.de>2001-02-22 15:56:36 +0300
committerCorinna Vinschen <corinna@vinschen.de>2001-02-22 15:56:36 +0300
commit79e56091c9e4f21ecf1807e0f0f4441ddddc84e6 (patch)
tree323f92d808a31d48a656b112b8cb031aa1fd45b6 /winsup/cygwin/shortcut.h
parent957059c8315fd725db2096ef696e57167d721e31 (diff)
* 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.h28
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