Jeff Johnston [Mon, 9 Apr 2007 16:03:26 +0000 (16:03 +0000)]
2007-04-09 Joel Schopp <jschopp@austin.ibm.com>
* libc/machine/spu/strxfrm.c: Fix strxfrm so we still copy data
even if the passed in length n is shorter than the source string.
This matches both the non-spu specific and the glibc strxfrm
behaviour.
* cygwin/external.cc (cygwin_internal): Implement CW_SET_DOS_FILE_WARNING.
* cygwin/include/sys/cygwin.h: Define CW_SET_DOS_FILE_WARNING.
* utils/mount.cc (main): Turn dos file warnings off since we know what we're
doing.
Dave Korn [Fri, 30 Mar 2007 00:49:56 +0000 (00:49 +0000)]
2007-03-30 Dave Korn <dave.korn@artimi.com>
* libc/include/stdio.h (_ELIDABLE_INLINE): New macro to conceal
conflicting inline semantics between C99 and GNU89.
(__sgetc_r): Replace static inline with _ELIDABLE_INLINE to be
compatible with -fkeep-inline-functions usage.
(__sputc_r): Likewise for consistency even though disabled.
Corinna Vinschen [Thu, 29 Mar 2007 16:37:36 +0000 (16:37 +0000)]
* cygheap.cc (cygheap_init): Fix formatting. Remove comment. Set
shared_prefix depending only on terminal service capability.
* dcrt0.cc (dll_crt0_1): Don't call set_cygwin_privileges here.
* fhandler_fifo.cc (fhandler_fifo::open): Create the mutex as global
object.
* posix_ipc.cc (ipc_mutex_init): Use cygheap->shared_prefix.
(ipc_cond_init): Ditto.
* sec_helper.cc (privilege_name): Make static. Use LookupPrivilegeName
directly to be independent of the state of cygheap.
(set_privilege): Take a LUID as parameter instead of an index value.
Only print debug output in case of failure.
(set_cygwin_privileges): Add comment. Use LookupPrivilegeValue to
get privilege LUIDs.
(init_global_security): Call set_cygwin_privileges here.
* security.h (privilege_name): Drop declaration.
(set_privilege): Declare according to above change.
(set_process_privilege): Call privilege_luid to get LUID.
(_push_thread_privilege): Ditto.
* shared.cc (open_shared): Add comment. On systems supporting the
SeCreateGlobalPrivilege, try to create/open global shared memory first.
Fall back to local shared memory if that fails.
* thread.cc (semaphore::semaphore): Use cygheap->shared_prefix.
* wincap.h (wincapc::has_create_global_privilege): New element.
* wincap.cc: Implement above element throughout.
Nick Clifton [Thu, 29 Mar 2007 06:25:44 +0000 (06:25 +0000)]
Reflect changes made to generic vfprintf.c:
* libc/machine/powerpc/vfprintf.c (__sprint): Rename to __sprint_r and add a "struct reent *" argument.
(__sbprintf): Rename to __sbprintf_r, add a "struct reent *" argument and call _VFPRINTF_R instead of VFPRINTF.
(_VFPRINTF_R): Add data pointer to call to cantwrite(). Fix uses of __sprint() and __sbprintf.
Jeff Johnston [Fri, 16 Mar 2007 21:16:09 +0000 (21:16 +0000)]
2007-03-16 Charles Wilson <cygwin@...>
* libc/argz/argz_insert.c: "before" pointer is
invalid after *argz realloc. Compute offset
between "before" and *argz, and use it after
reallocation instead.
Jeff Johnston [Thu, 15 Mar 2007 21:32:13 +0000 (21:32 +0000)]
2007-03-15 Jeff Johnston <jjohnstn@redhat.com>
* configure.in: Add new --enable-newlib-reent-small option.
* configure: Regenerated.
* acconfig.h: Add _WANT_REENT_SMALL.
* newlib.hin: Regenerated minus PACKAGE macros to add
_WANT_REENT_SMALL macro.
* libc/include/sys/config.h[_WANT_REENT_SMALL]: Set _REENT_SMALL
if not already set.
* libc/stdio/fflush.c[_REENT_SMALL]: Return immediately if
there is no buffer.
* libc/stdio/local.h[_REENT_SMALL]: Fix CHECK_INIT macro to
use reentrant pointer passed in when resetting the file
pointer to one of the std streams.
* fhandler_proc.cc: Fix formatting. Drop setting errno when creating
proc file content.
(format_proc_uptime): Simplify.
(format_proc_cpuinfo): Align more closely to output of Linux 2.6 kernel.
Evaluate more data, especially for AMD CPUs.
* fhandler_mailslot.cc (fhandler_mailslot::fstat): Set new stat member
st_birthtim to useful value.
* fhandler_process.cc (fhandler_process::fstat): Ditto.
* fhandler_disk_file.cc (fhandler_base::fstat_by_handle): Take
additional parameter for creation time. Fill st_birthtim with it.
Accomodate additional creation time parameter throughout.
* fhandler_raw.cc (fhandler_dev_raw::fstat): Set new stat member
st_birthtim to useful value.
* fhandler.cc (fhandler_base::fstat): Ditto.
* fhandler_registry.cc (fhandler_registry::fstat): Ditto.
* include/cygwin/version.h: Bump API minor number.
* include/cygwin/stat.h (struct __stat64): Replace st_spare4 with
timestruc_t st_birthtim.
(struct stat): Ditto if __CYGWIN_USE_BIG_TYPES__ is defined.
(st_birthtime): Define if __CYGWIN_USE_BIG_TYPES__ is defined.
Danny Smith [Mon, 5 Mar 2007 08:25:32 +0000 (08:25 +0000)]
* include/io.h (__mingw_access): New static inline wrapper to restore
pre-Vista 'access (fname, X_OK)' behaviour.
(__USE_MINGW_ACCESS): Use to map access() to __mingw_access().
* ntdll.h (struct _OBJECT_NAME_INFORMATION): Define.
* syscalls.cc (unlink_nt): Check shared directory for being empty
before trying to move and mark for deletion.
Corinna Vinschen [Tue, 27 Feb 2007 18:38:22 +0000 (18:38 +0000)]
* path.cc (close_user_proc_parms_cwd_handle): Remove.
(cwdstuff::init): Don't call close_user_proc_parms_cwd_handle.
Call set to set cwd with all-sharing handle.
(cwdstuff::set): Fix comment. Don't close cwd handle. Set in
user parameter block instead and close old cwd handle.
* syscalls.cc (rename): Call unlink_nt instead of RemoveDirectory or
DeleteFile to allow deleting shared files/directories.
Corinna Vinschen [Tue, 27 Feb 2007 12:58:56 +0000 (12:58 +0000)]
* fhandler.cc(fhandler_base::open): Open with READ_CONTROL only in
case of query_open flag set to query_read_control. Add case for
new query_read_attributes flag.
(fhandler_base::fstatvfs): New method.
* fhandler.h (enum query_state): Add query_read_attributes flag.
(class fhandler_base): Declare new virtual fstatvfs method.
(class fhandler_socket): Ditto.
(class fhandler_pipe): Ditto.
(class fhandler_fifo): Ditto.
(class fhandler_disk_file): Ditto.
(class fhandler_virtual): Ditto.
* fhandler_disk_file.cc (fhandler_base::fstat_fs): Open with
query_read_attributes instead of query_read_control.
(fhandler_disk_file::fstatvfs): New method.
(fhandler_disk_file::facl): Open with query_read_attributes instead of
query_read_control.
* fhandler_fifo.cc (fhandler_fifo::fstatvfs): New method.
* fhandler_socket.cc (fhandler_socket::fstatvfs): New method.
(fhandler_socket::fchmod): Return with EBADF in the default case.
(fhandler_socket::fchown): Ditto.
(fhandler_socket::facl): Ditto.
* fhandler_virtual.cc (fhandler_virtual::fstatvfs): Ditto.
* ntdll.h (struct _FILE_FS_ATTRIBUTE_INFORMATION): Define.
(struct _FILE_FS_FULL_SIZE_INFORMATION): Define.
* pipe.cc (fhandler_pipe::fstatvfs): New method.
* syscalls.cc (fstatvfs): Just call the fhandler's fstatvfs.
(statvfs): Ditto.
(fstatfs): Call fstatvfs.
(statfs): Drop EFAULT handling.
Corinna Vinschen [Mon, 26 Feb 2007 12:22:41 +0000 (12:22 +0000)]
* fhandler_disk_file.cc (fhandler_disk_file::fchmod): Drop comment.
* mmap.cc (gen_access): Remove.
(mmap_record::gen_access): Remove.
(mmap64): Don't mention 9x any longer.
* syscalls.cc (statvfs): Drop status code consideration for 9x.
* libc/minires-os-if.c (get_registry_dns_items): Don't mention 9x any
longer.
(get_registry_dns): Drop getting registry key on 9x. Drop is9x
variable.
Corinna Vinschen [Fri, 23 Feb 2007 15:15:50 +0000 (15:15 +0000)]
Throughout remove all usage of wincap.has_security.
* environ.cc (environ_init): Drop setting allow_ntsec here.
* grp.cc (initgroups32): Drop usage of label "out".
* security.cc (allow_ntsec): Set to true by default.
* syscalls.cc (seteuid32): Remove label success_9x.
* wincap.cc: Remove has_security throughout.
* wincap.h: Ditto.
Corinna Vinschen [Fri, 23 Feb 2007 14:20:28 +0000 (14:20 +0000)]
* devices.in: Change native device name to native NT device name for
/dev/null, /dev/comX and /dev/ttySx.
* devices.cc: Regenerate.
* fhandler.cc (fhandler_base::open_9x): Remove.
(fhandler_base::open): Don't test for DOS device name, don't call
open_9x.
(fhandler_dev_null::open): Remove.
* fhandler.h (class fhandler_base): Drop open_9x declaration.
(class fhandler_dev_null): Drop open declaration.
Corinna Vinschen [Thu, 22 Feb 2007 17:35:14 +0000 (17:35 +0000)]
* fhandler_console.cc (fhandler_console::read): Drop 9x specific
handling of AltGr key.
* mmap.cc: Take NT for granted throughout.
* wincap.cc: Remove map_view_of_file_ex_sucks, altgr_is_ctrl_alt,
has_working_copy_on_write, share_mmaps_only_by_name,
virtual_protect_works_on_shared_pages, has_mmap_alignment_bug and
has_working_virtual_lock throughout.
* wincap.h: Ditto.