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
AgeCommit message (Collapse)Author
2005-08-08* cygserver.cc (main): Call wincap.init() earlier to avoid a NULL dereference.Christopher Faylor
2005-06-14 * sysv_sem.cc (semu_list): Define static to avoid gcc 4.x compilerCorinna Vinschen
warning.
2005-06-10whitespace changes to hopefully force snapshot run.Christopher Faylor
2005-04-09 * bsd_mutex.cc (msleep_cnt): Remove.Corinna Vinschen
(msleep_max_cnt): Remove. (msleep_arr): Remove. (class msleep_sync_array): New class to encapsulate msleep/wakeup thread synchronization. (msleep_sync): New object pointer. (msleep_init): Initialize new msleep_sync object. (_mutex): Just call msleep_sync->enter() and msleep_sync->leave() for thread synchronization. Improve debug output a bit more. (wakeup): Just call msleep_sync->wakeup(). (wakeup_all): Whitespace fix.
2005-04-06 * bsd_helper.cc (ipcexit_hookthread): Fix whitespace and handle leak.Corinna Vinschen
* bsd_mutex.cc: Include stdlib.h, sys/msg.h and sys/sem.h. (mtx_init): Initialize lock counter to 0. (_mtx_lock): Increment and log mutex lock counter. (mtx_owned): Add winpid argument. Return true only if mutex is actually owned by process winpid. (_mtx_assert): Add winpid argument accordingly. (_mtx_unlock): Log owner and lock count. (MSLEEP_MUTEX): Remove. (MSLEEP_SEM): Ditto. (MSLEEP_EVENT): Ditto. (msleep_event_name): Ditto. (msleep_cs): New global critical section. (msleep_cnt): New global variable indicating msleep record usage. (msleep_max_cnt): New global variable indicating msleep record size. (msleep_arr): New global pointer to msleep records. (msleep_init): Initialize msleep_cs. Allocate msleep_arr array. (_msleep): Rewrite using new msleep_cs/msleep_arr based thread synchronization. Don't be shy with debug output. (wakeup): Rewrite using new msleep_cs/msleep_arr based thread synchronization. * bsd_mutex.h (struct mtx): Add lock counter for better debugging. (mtx_owned): Declare with winpid argument. (_mtx_assert): Ditto. (mtx_assert): Define with winpid argument. * cygserver.cc (version): Remove. (SERVER_VERSION): New define, decoupling server version information from source code control system. (print_version): Simplify printing server version. * process.cc (process::process): Fix wrong bracketing (and handle leak). (process::~process): Only try to close _signal_arrived if valid. * sysv_sem.cc: Include sys/smallprint.h. (semundo_clear): Define with additional struct thread pointer argument. Accomodate throughout. (SEMUNDO_LOCKASSERT): Define with winpid argument. Accomodate throughout. (struct sem_undo): Define un_proc as pid_t on Cygwin. Accomodate throughout. (seminit): Improve debugging by adding the semid to the mutex name. (semget): Correctly print key value as 64 bit hex value in debug output. (semexit_myhook): Remove Cygwin specific unlocking of mutexes owned by exiting process. Keep semaphore global lock throughout whole function to avoid races. * sysv_shm.cc (GIANT_REQUIRED): Define empty on Cygwin. We know that Giant is locked.
2005-04-01 * bsd_mutex.cc (_msleep): Whitespace fix.Corinna Vinschen
* process.cc (process::process): Handle invalid signal_arrived values more gracefully.
2004-12-30 * bsd_mutex.cc: Include limits.h.Corinna Vinschen
(MSLEEP_MUTEX): New define for third parameter to msleep_event_name. (MSLEEP_SEM): Ditto. (MSLEEP_EVENT): Ditto. (msleep_event_name): Add third parameter to allow multiple synchronization objects per ident. (_msleep): Implement new synchronization technique to make sure that all threads have been woken up by a corresponding wakeup call. (wakeup): Ditto.
2004-10-18 * sysv_sem.cc: Redefine offsetof to circumvent build problems withCorinna Vinschen
gcc 3.4.
2004-10-04 * bsd_mutex.cc (_msleep): Simplify event creation. Revert change fromCorinna Vinschen
2004-08-24. It should be unnecessary now. * msg.cc (client_request_msg::serve): Release process critical section as early as possible. * sem.cc (client_request_sem::serve): Ditto. * shm.cc (client_request_shm::serve): Ditto. * process.cc: Use hold and release method calls instead of EnterCriticalSection/LeaveCriticalSection calls throughout. * process.h (_hold): Rename from hold. Take filename and linenumber parameter for logging. Define matching hold macro. (release): Ditto.
2004-10-01 * sysv_sem.cc: Update to FreeBSD version 1.69.Corinna Vinschen
1.68: Reduce the overhead of semop() by using the kernel stack instead of malloc'd memory to store the operations array if it is small enough to fit. 1.69: Adjust the number of processes waiting on a semaphore properly if we're woken up in the middle of sleeping.
2004-09-23 * sysv_shm.cc (kern_shmat): Avoid compiler warning.Corinna Vinschen
2004-09-21 * sysv_shm.cc (vm_object_reference): remove Cygwin specific define.Corinna Vinschen
(vm_map_find): Ditto. (vm_map_inherit): Ditto. (kern_shmat): On Cygwin, take shmaddr just as is. Don't call vm system calls on Cygwin. Add comment.
2004-09-15 Fix copyright throughout.Corinna Vinschen
Eliminate use of _impure_ptr outside Cygwin. * bsd_helper.cc: Include errno.h instead of cygerrno.h. * bsd_mutex.cc : Ditto. * client.cc: Ditto. * cygserver.cc: Ditto. * process.cc: Don't build functions inside Cygwin. Don't include cygerrno.h. Don't set errno. * transport_pipes.cc (SET_ERRNO): New define. Use througout. * transport_sockets.cc (SET_ERRNO): Ditto. (GET_ERRNO): Ditto.
2004-09-07 * bsd_mutex.cc (_msleep): Disable resetting event object for now.Corinna Vinschen
2004-08-31 * sysv_shm.cc (kern_shmat): Add debug_printf's.Corinna Vinschen
2004-08-25 * bsd_mutex.cc (_msleep): Release process object while waiting.Corinna Vinschen
2004-08-03 * transport.cc (transport_layer_base::~transport_layer_base): Resurrect.Corinna Vinschen
* transport.h (transport_layer_base::~transport_layer_base): Ditto.
2004-07-30 * bsd_mutex.cc (_msleep): Reset event object and close it beforeCorinna Vinschen
entering mutex. Turn order of conditional for better readability.
2004-07-26 * cygserver.conf: Describe relation between shmmaxpgs and SHMMAX.Corinna Vinschen
2004-07-20 * bsd_helper.cc: Whitespace fixes.Corinna Vinschen
* bsd_mutex.cc: Ditto.
2004-07-19 * transport.cc (transport_layer_base::~transport_layer_base): Remove.Corinna Vinschen
* transport.h (transport_layer_base::~transport_layer_base): Ditto.
2004-07-19 * bsd_mutex.cc (win_priority): Actually calculate p from priority.Corinna Vinschen
2004-06-03 * shm.cc (shmget): Explicitely set td_retval[0] to -1 on error.Corinna Vinschen
2004-03-30 * sysv_shm.cc (shmget): Allow to retrieve shared memory segmentsCorinna Vinschen
by shmid when IPC_KEY_IS_SHMID is set.
2004-03-02 * sysv_sem.cc (semundo_adjust): Check for process id instead ofCorinna Vinschen
process struct pointer, which isn't fixed under Cygwin. (semexit_myhook): Ditto. Adjust debug print statements to print Cygwin and Windows PIDs instead of process pointer under Cygwin.
2004-02-07 * bsd_mutex.cc (win_priority): Move to msleep helper function section.Corinna Vinschen
(set_priority): Ditto. Fix formatting. (_msleep): Cleanup obj formatting. Rearrange obj order.
2004-02-06 * bsd_mutex.cc (_msleep): Handle PCATCH using signal_arrived event.Corinna Vinschen
* client.cc: Include sigproc.h. * msg.cc (client_request_msg::serve): Accomodate third parameter to process::process. * sem.cc (client_request_sem::serve): Ditto. * shm.cc (client_request_shm::serve): Ditto. * process.cc (process::process): Duplicate signal_arrived into Cygserver process space. (process::~process): Close _signal_arrived handle. (process_cache::process): Add signal_arrived handling. * process.h (process::process): Add signal_arrived parameter. (process:signal_arrived): New read accessor. (process:_signal_arrived): New member. (process_cache::process): Add signal_arrived parameter.
2004-01-16 * process.h (cleanup_routine::~cleanup_routine): Make pure virtualCorinna Vinschen
function to avoid miscompilation with certain versions of gcc. * process.cc (cleanup_routine::~cleanup_routine): Remove.
2003-12-26* Makefile.in (CFLAGS, CXXFLAGS): Remove unneeded include.Christopher Faylor
(CYGWIN_LIB): Delete. (cygserver.exe target): Add -L$(cygwin_build) to the link line to force linker to use build tree version of the library. Remove specific inclusion of libcygwin.a from the link line.
2003-12-16 * bsd_helper.cc (tunable_params): Add entries for kern.ipc.msgmnb andCorinna Vinschen
kern.ipc.msgtql. Raise max value for kern.ipc.msgseg to 65535. * cygserver.conf: Add kern.ipc.msgmnb and kern.ipc.msgtql. * sysv_msg.cc (msginit): Add TUNABLE_INT_FETCH call for kern.ipc.msgmnb and kern.ipc.msgtql.
2003-11-27 * cygserver.cc (main): Move call to ipcinit() up before installingCorinna Vinschen
any threads. * sysv_sem.cc: Update to FreeBSD version 1.67. (seminit): Initialize semaphore sequence numbers to 0.
2003-11-26 * Makefile.in (CYGWIN_LIB): Variable pointing to libcygwin.a inCorinna Vinschen
the parallel cygwin dir. (cygserver.exe): Depend on and link against $CYGWIN_LIB.
2003-11-26* Makefile.in (CXXFLAGS): Remove duplicate options handled in Makefile.common.Christopher Faylor
2003-11-23 * msg.cc (client_request_msg::serve): Add default case to msgop switch.Corinna Vinschen
* sem.cc (client_request_sem::serve): Add default case to semop switch. * shm.cc (client_request_shm::serve): Add default case to shmop switch.
2003-11-21 * Makefile.in (install): Explicitely create directories. InstallCorinna Vinschen
README to $(prefix)/share/doc/Cygwin. * README: New file.
2003-11-21 * cygserver.cc (print_usage): Fix scrambled output.Corinna Vinschen
2003-11-20 * cygserver-config: Slightly modify printed message.Corinna Vinschen
2003-11-20 * Makefile.in (install): Install cygserver-config script to bindir.Corinna Vinschen
* cygserver-config: New script.
2003-11-19 Don't use safe_new but new throughout. Fix copyright datesCorinna Vinschen
throughout. * Makefile.in: Accomodate all new files and name changes. Add a *.d dependency. (sbindir): Add. (etcdir): Drop in favor of more appropriate sysconfdir definition. (sysconfdir): Add. (CXXFLAGS): Add -MMD flag. Add SYSCONFDIR definition. (.SUFFIXES): Add. (install): Add action items. (libclean): New target. (fullclean): Ditto. * bsd_helper.cc: New file. * bsd_helper.h: Ditto. * bsd_log.cc: Ditto. * bsd_log.h: Ditto. * bsd_mutex.cc: Ditto. * bsd_mutex.h: Ditto. * client.cc: Rearrange to build as less as possible if __INSIDE_CYGWIN__. (client_request::handle_request): Add Message Queue and Semaphore handling. * cygserver.cc: Rearrange to build as less as possible if __INSIDE_CYGWIN__. Use new debug/log/panic logging functions. (DEF_CONFIG_FILE): New definition for configuration file. Use throughout. (getfunc): Remove. (__cygserver__printf): Remove. (client_request_attach_tty::serve): Return error if impersonation fails. (print_usage): Pump up help message. (print_version): Add output of default configuration file. (main): Accommodate new options. Allow overwrite of threading options from config file. Call several new initialization functions. Drop printing dots. Don't define SIGHANDLE inline. * cygserver.conf: New file. * cygserver_process.h: Rename to process.h. * cygserver_transport.h: Rename to transport.h. * cygserver_transport_pipes.h: Rename to transport_pipes.h. * cygserver_transport_sockets.h: Rename to transport_sockets.h. * msg.cc: Rewrite. * sem.cc: Rewrite. * shm.cc: Rewrite. * sysv_msg.cc: New file, derived from FreeBSD version 1.52. * sysv_sem.cc: New file, derived from FreeBSD version 1.66. * sysv_shm.cc: New file, derived from FreeBSD version 1.89. * threaded_queue.cc: Rearrange to build as less as possible if __INSIDE_CYGWIN__. * transport.cc (transport_layer_base::impersonate_client): Define bool. (transport_layer_base::revert_to_self): Ditto. * transport.h (transport_layer_base::impersonate_client): Declare bool. (transport_layer_base::revert_to_self): Ditto. * transport_pipes.cc (transport_layer_pipes::transport_layer_pipes): Don't call init_security. (init_security): Remove. (transport_layer_pipes::accept): Use global sec_all_nih. (transport_layer_pipes::connect): Ditto. (transport_layer_pipes::impersonate_client): Define bool. (transport_layer_pipes::revert_to_self): Ditt. * transport_pipes.h (transport_layer_pipes::impersonate_client): Declare bool. (transport_layer_pipes::revert_to_self): Ditto. * woutsup.h: Include bsd compatibility headers. (SIGHANDLE): Add definition. (__cygserver__printf): Remove definition. (__noop_printf): Ditto. (debug_printf): Define using debug. (syscall_printf): Define using log. (system_printf): Ditto. Drop all other _printf definitions.
2003-10-22 Accomodate moving cygserver header files from cygwin/include/cygwinCorinna Vinschen
to here and cygwin dir. * Makefile.in (EXEEXT): Drop as unused. (EXEEXT_FOR_BUILD): Ditto. (all): Don't build libcygserver.a. * cygserver_process.h: Moved from cygwin/include/cygwin to here. * cygserver_transport.h: Ditto. * cygserver_transport_pipes.h: Ditto. * cygserver_transport_sockets.h: Ditto. * ipc.h: Moved to ../cygwin and renamed to cygserver_ipc.h. * shm.h: Moved to ../cygwin and renamed to cygserver_shm.h.
2003-08-30* msg.cc: New file.Christopher Faylor
* sem.cc: Ditto.
2003-08-30* threaded_queue.h: New file.Christopher Faylor
2003-08-25* Makefile.in: Build libcygserver.a.Christopher Faylor
* client.cc: Rename allow_daemon to allow_server.
2003-07-26* configure.in: Use 'install-sh -c'.Christopher Faylor
* configure: Regenerate.
2003-07-26* configure.in: Always use install-sh.Christopher Faylor
* configure: Regenerate.
2003-07-02* Makefile.in (OBJS): Move some more files from cygwin directory.Christopher Faylor
* woutsup.h: Define _MT_SAFE.
2003-07-02first checkinChristopher Faylor
2003-07-02First checkins.Christopher Faylor
2003-06-16Throughout, remove "include <errno.h>" from files which already includeChristopher Faylor
cygerrno.h. * include/cygwin/config.h (__DYNAMIC_REENT__): Define. * include/cygwin/version.h: Bump API minor version. * cygwin.din: Export __getreent * cygerrno.h: Include errno.h. Fix places where _impure_ptr is used directly to store the errno value. * debug.cc (__set_errno): Ditto. * errno.cc: Remove _RRENT_ONLY define to get errno.cc compiled. * signal.cc: Rename _reent_clib to _REENT throughout. * thread.h (reent_clib): Remove prototype. * thread.cc (reent_clib): Rename reent_clib to __getreent. Return _impure_ptr until MTinterface is initialized. (reent_winsup): Fix a possible SEGV when _r == NULL. Return NULL instead. * MTinterface::fixup_after_fork: Switch reent back to _impure_ptr to keep signal handling running when fork is called from a thread other than the mainthread.
2003-03-10 Switch to 32/64 datatypes:Corinna Vinschen
* Makefile.in (OBSOLETE_FUNCTIONS): Add open acl aclcheck aclfrommode aclfrompbits aclfromtext aclsort acltomode acltopbits acltotext chown facl fchown fgetpos fopen freopen fseeko fsetpos fstat ftello ftruncate getegid geteuid getgid getgrent getgrgid getgrnam getgroups getpwuid getpwuid_r getuid initgroups lchown lseek lstat mknod mmap seekdir setegid seteuid setgid setgroups setregid setreuid setuid stat telldir truncate. (NEW_FUNCTIONS): Add _open64 acl32 aclcheck32 aclfrommode32 aclfrompbits32 aclfromtext32 aclsort32 acltomode32 acltopbits32 acltotext32 chown32 facl32 fchown32 fgetpos64 fopen64 freopen64 fseeko64 fsetpos64 fstat64 ftello64 ftruncate64 getegid32 geteuid32 getgid32 getgrent32 getgrgid32 getgrnam32 getgroups32 getpwuid32 getpwuid_r32 getuid32 initgroups32 lchown32 lseek64 lstat64 mknod32 mmap64 seekdir64 setegid32 seteuid32 setgid32 setgroups32 setregid32 setreuid32 setuid32 stat64 telldir64 truncate64 to substitute the above. * cygserver_shm.h (class client_request_shm): Change uid_t and gid_t members to __uid32_t and __gid32_t. * cygwin.din: Add symbols acl32 aclcheck32 aclfrommode32 aclfrompbits32 aclfromtext32 aclsort32 acltomode32 acltopbits32 acltotext32 facl32 fgetpos64 fopen64 freopen64 fseeko64 fsetpos64 _fstat64 ftello64 _lseek64 mknod32 _open64. * glob.c: Include perprocess.h. (globtilde): Call getpwuid32 and getuid32 instead of getpwuid and getuid. (g_lstat): Check for applications API version to call the appropriate typed gl_lstat function. (g_stat): Ditto for gl_stat. * shm.cc (client_request_shm::client_request_shm): Call geteuid32 and getegid32 instead of geteuid and getegid throughout. * syscalls.cc (_open64): New alias for open. (_lseek64): New alias for lseek64. (_fstat64): New alias for fseek64. (mknod32): New function. (mknod): Calls mknod32 now. * winsup.h: Make function declarations for getuid32, geteuid32, and getpwuid32 accessible for plain C sources. Add declarations for getegid32 and getpwnam. * include/cygwin/version.h: Bum API minor number to 78. * include/sys/cygwin.h: Guard C++ specific members of struct per_process against inclusion in plain C sources. * include/sys/mman.h (mman): Add guard to avoid type clash when compiling Cygwin.