+2003-08-17 Christopher Faylor <cgf@redhat.com>
+
+ * path.cc (special_name): Accommodate all special names with
+ extensions.
+
2003-08-15 Corinna Vinschen <corinna@vinschen.de>
* mmap.cc (mmap64): Avoid crash if file size is less than requested
2003-08-13 Corinna Vinschen <corinna@vinschen.de>
- * cygwin.din: Accomodate change from cygwin_lstat to lstat.
+ * cygwin.din: Accommodate change from cygwin_lstat to lstat.
* syscalls.cc: Add defines to avoid declaration issues when
renaming cygwin_lstat back to lstat.
(lstat): Reverted name change from cygwin_lstat.
* shared_info.h: Match shared_name declaration with below change.
* shared.cc (shared_name): Use incoming char * parameter instead of
local static buffer.
- (open_shared): Accomodate new calling convention for shared_name.
+ (open_shared): Accommodate new calling convention for shared_name.
* exceptions.cc (events_init): Ditto.
* sigproc.cc (getsem): Ditto.
* syscalls.cc (login): Ditto.
* fhandler_socket.cc (secret_event_name): Return void. Use incoming
char * parameter instead of local static buffer.
- (fhandler_socket::create_secret_event): Accomodate new calling
+ (fhandler_socket::create_secret_event): Accommodate new calling
convention for secret_event_name.
(fhandler_socket::close_secret_event): Ditto.
* wincap.cc: Set has_terminal_services capability throughout.
(wincap_2003): New global object representing Windows 2003 Server
capabilities.
- (wincapc::init): Accomodate Windows 2003 Server.
+ (wincapc::init): Accommodate Windows 2003 Server.
* wincap.h (struct wincaps): Add has_terminal_services capability.
2003-05-20 Charles Wilson <cygwin@cwilson.fastmail.fm>
(mmap_record::fixup_map): Format change.
(list::add_record): Add offset and length parameter to call
mmap_record::alloc_map() correctly.
- (mmap64): Rename `l' variable to `map_list'. Accomodate above changes.
+ (mmap64): Rename `l' variable to `map_list'. Accommodate above changes.
(munmap): Rename `l' variable to `map_list'.
(msync): Ditto.
(fhandler_disk_file::mmap): Streamline code.
if (strpbrk (s, special_chars))
return !strncasematch (s, "%2f", 3);
- // FIXME: add com0 and {com,lpt}N.*
- if (strcasematch (s, "nul")
- || strncasematch (s, "nul.", 4)
- || strcasematch (s, "aux")
- || strncasematch (s, "aux.", 4)
- || strcasematch (s, "prn")
- || strncasematch (s, "prn.", 4)
- || strcasematch (s, "con")
- || strncasematch (s, "con.", 4)
- || strcasematch (s, "conin$")
- || strcasematch (s, "conout$"))
+ const char *p;
+ if (strcasematch (s, "conin$") || strcasematch (s, "conout$"))
return -1;
- if (!strncasematch (s, "com", 3)
- && !strncasematch (s, "lpt", 3))
+
+ if (strncasematch (s, "nul", 3)
+ || strncasematch (s, "aux", 3)
+ || strncasematch (s, "prn", 3)
+ || strncasematch (s, "con", 3))
+ p = s + 3;
+ else if (strncasematch (s, "com", 3) || strncasematch (s, "lpt", 3))
+ (void) strtoul (s + 3, (char **) &p, 10);
+ else
return false;
- char *p;
- (void) strtoul (s + 3, &p, 10);
- return -(*p == '\0');
+
+ return (*p == '\0' || *p == '.') ? -1 : false;
}
bool