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>2007-01-17 22:26:58 +0300
committerCorinna Vinschen <corinna@vinschen.de>2007-01-17 22:26:58 +0300
commit96d7dee2f0ae6f69124d2cd2f495e93135dbb741 (patch)
treed08fe91a382b48eb6fb11e3559a6466c5cd53c16 /winsup/cygwin/wincap.cc
parent12ffdde350a85a5bbdfac74dad9a3732ca136088 (diff)
* Makefile.in (DLL_OFILES): Add fhandler_procnet.o.
* autoload.cc (GetAdaptersAddresses): Define. * devices.h (FH_PROCNET): Define new device. * devices.in (dev_procnet_storage): Add "/proc/net" entry. * devices.cc: Regenerate. * dir.cc (readdir_worker): Use isproc_dev macro. * dtable.cc (build_fh_pc): Add FH_PROCNET. * fhandler.h (class fhandler_procnet): New class. * fhandler_proc.cc: Add "net" subdirectory handling. * fhandler_procnet.cc: New file handling "/proc/net" directory. * path.cc (isvirtual_dev): Move to path.h. * path.h (isproc_dev): New macro to identify /proc files by device. (isvirtual_dev): Moved here. Define using isproc_dev. * syscalls.cc (unlink): Use isproc_dev macro. * wincap.h (wincapc::has_gaa_prefixes): New element. (wincapc::has_gaa_on_link_prefix): New element. * wincap.cc: Implement above elements throughout. (wincapc::init): Check XP for service pack and set has_gaa_prefixes appropriately. * include/cygwin/in6.h: Include asm/byteorder.h.
Diffstat (limited to 'winsup/cygwin/wincap.cc')
-rw-r--r--winsup/cygwin/wincap.cc32
1 files changed, 30 insertions, 2 deletions
diff --git a/winsup/cygwin/wincap.cc b/winsup/cygwin/wincap.cc
index 730263415..d9aa59093 100644
--- a/winsup/cygwin/wincap.cc
+++ b/winsup/cygwin/wincap.cc
@@ -1,7 +1,7 @@
/* wincap.cc -- figure out on which OS we're running. Set the
capability class to the appropriate values.
- Copyright 2001, 2002, 2003, 2004, 2005, 2006 Red Hat, Inc.
+ Copyright 2001, 2002, 2003, 2004, 2005, 2006, 2007 Red Hat, Inc.
This file is part of Cygwin.
@@ -72,6 +72,8 @@ static NO_COPY wincaps wincap_unknown = {
needs_logon_sid_in_sid_list:false,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_95 = {
@@ -135,6 +137,8 @@ static NO_COPY wincaps wincap_95 = {
needs_logon_sid_in_sid_list:false,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_95osr2 = {
@@ -198,6 +202,8 @@ static NO_COPY wincaps wincap_95osr2 = {
needs_logon_sid_in_sid_list:false,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_98 = {
@@ -261,6 +267,8 @@ static NO_COPY wincaps wincap_98 = {
needs_logon_sid_in_sid_list:false,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_98se = {
@@ -324,6 +332,8 @@ static NO_COPY wincaps wincap_98se = {
needs_logon_sid_in_sid_list:false,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_me = {
@@ -387,6 +397,8 @@ static NO_COPY wincaps wincap_me = {
needs_logon_sid_in_sid_list:false,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_nt3 = {
@@ -450,6 +462,8 @@ static NO_COPY wincaps wincap_nt3 = {
needs_logon_sid_in_sid_list:true,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_nt4 = {
@@ -513,6 +527,8 @@ static NO_COPY wincaps wincap_nt4 = {
needs_logon_sid_in_sid_list:true,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_nt4sp4 = {
@@ -576,6 +592,8 @@ static NO_COPY wincaps wincap_nt4sp4 = {
needs_logon_sid_in_sid_list:true,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_2000 = {
@@ -639,6 +657,8 @@ static NO_COPY wincaps wincap_2000 = {
needs_logon_sid_in_sid_list:true,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_xp = {
@@ -702,6 +722,8 @@ static NO_COPY wincaps wincap_xp = {
needs_logon_sid_in_sid_list:false,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:false,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_2003 = {
@@ -765,6 +787,8 @@ static NO_COPY wincaps wincap_2003 = {
needs_logon_sid_in_sid_list:false,
needs_count_in_si_lpres2:false,
has_recycle_dot_bin:false,
+ has_gaa_prefixes:true,
+ has_gaa_on_link_prefix:false,
};
static NO_COPY wincaps wincap_vista = {
@@ -773,7 +797,7 @@ static NO_COPY wincaps wincap_vista = {
heapslop:0x4,
shared:FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
is_winnt:true,
- is_server:true,
+ is_server:false,
access_denied_on_delete:false,
has_delete_on_close:true,
has_page_guard:true,
@@ -828,6 +852,8 @@ static NO_COPY wincaps wincap_vista = {
needs_logon_sid_in_sid_list:false,
needs_count_in_si_lpres2:true,
has_recycle_dot_bin:true,
+ has_gaa_prefixes:true,
+ has_gaa_on_link_prefix:true,
};
wincapc wincap __attribute__((section (".cygwin_dll_common"), shared));
@@ -877,6 +903,8 @@ wincapc::init ()
case 1:
caps = &wincap_xp;
+ if (strcmp (version.szCSDVersion, "Service Pack 1") >= 0)
+ ((wincaps *)this->caps)->has_gaa_prefixes = true;
break;
default: