Re: ITP checkbashisms -- Check for bashisms in /bin/sh scripts
On 2/4/2012 3:55 AM, Jari Aalto wrote: checkbashisms script has been included in Debian since 200x (don't know exatly; its git log starts in 2007). It's part of the devsripts in Debian. To check build: tar -xf check*.bz2 ./check*.sh --color --verbose all We're not debian, and don't explicitly exclude the use of bashism in *ALL* [/usr]/bin/*.sh scripts. Even debian doesn't disallow bashisms i *usr*/bin/ scripts -- and as /bin == /usr/bin on cygwin, we can't realy distinguish between /bin/*.sh and /usr/bin/*sh. Some of our scripts, in fact, have sh-bang lines explicitly requiring bash (e.g. cygport). So...I'm not sure this is a totally useful tool for cygwin; it might lead to unnecessary list traffic: Hey, checkbashisms complains about /usr/bin/cygport, please fix... I realize this doesn't require votes as it is already in debian, and I certainly have no veto power, but if it did require votes I'd be giving it a '0' not a '+1'. -- Chuck
Re: realpath: cygutils or coreutils?
On 1/30/2012 8:50 PM, Yaakov (Cygwin/X) wrote: While you're at it, what about ascii(1)? http://cygwin.com/ml/cygwin-apps/2011-10/msg00113.html Nobody ever responded to my comments at the end of that thread, so it kinda went into limbo. Given two +1 votes (your own and Christian Franke's) i'll go ahead and remove ascii from cygutils as well. -- Chuck
Re: Bug in csih
On 1/16/2012 5:14 AM, Corinna Vinschen wrote: Chuck? Ping? How's this? (BTW, we do similar stuff in csih_create_privileged_user() but I didn't address that). Index: cygwin-service-installation-helper.sh === RCS file: /cvs/cygwin-apps/csih/cygwin-service-installation-helper.sh,v retrieving revision 1.28 diff -u -p -r1.28 cygwin-service-installation-helper.sh --- cygwin-service-installation-helper.sh 13 Feb 2011 23:22:34 - 1.28 +++ cygwin-service-installation-helper.sh 5 Feb 2012 20:22:07 - @@ -2244,7 +2244,6 @@ csih_account_has_necessary_privileges() $_csih_trace local user=$1 - local admingroup= if [ -n ${user} ] then if csih_call_winsys32 net user ${user} /dev/null 21 @@ -2255,23 +2254,14 @@ csih_account_has_necessary_privileges() csih_warning Unable to ensure that '${user}' has the appropriate privileges. return 1 else -admingroup=$(/usr/bin/mkgroup -l | /usr/bin/awk -F: '{if ( $2 == S-1-5-32-544 ) print $1;}') -if [ -z ${admingroup} ] -then - csih_warning Cannot obtain the Administrators group name from 'mkgroup -l'. - return 1 -fi -if ! csih_call_winsys32 net localgroup ${admingroup} | /usr/bin/grep -Eiq ^${user}.?$ -then - # user not in Administrators group - return 1 -else - /usr/bin/editrights -u ${user} -t SeAssignPrimaryTokenPrivilege /dev/null 21 - /usr/bin/editrights -u ${user} -t SeCreateTokenPrivilege /dev/null 21 - /usr/bin/editrights -u ${user} -t SeTcbPrivilege /dev/null 21 - /usr/bin/editrights -u ${user} -t SeServiceLogonRight /dev/null 21 - return # status of previous command-list -fi + # Don't attempt to validate membership in Administrators group + # Instead, just try to set the appropriate rights; if it fails + # then handle that, instead. +/usr/bin/editrights -u ${user} -t SeAssignPrimaryTokenPrivilege /dev/null 21 +/usr/bin/editrights -u ${user} -t SeCreateTokenPrivilege /dev/null 21 +/usr/bin/editrights -u ${user} -t SeTcbPrivilege /dev/null 21 +/usr/bin/editrights -u ${user} -t SeServiceLogonRight /dev/null 21 +return # status of previous command-list fi fi fi
Re: realpath: cygutils or coreutils?
On 1/30/2012 7:01 PM, Charles Wilson wrote: On 1/30/2012 3:32 PM, Eric Blake wrote: In particular, it is much more powerful than the realpath(1) currently offered by cygutils. Should I build my next coreutils package with realpath included, and wait to upload it until we can coordinate a build with cygutils dropping the weaker variant? Or do we want to keep the cygutils variant for a while longer? I prefer standard tools when possible, and smaller cygutils. So, let's go ahead and coordinate removing realpath from cygutils-$next. I'm ready to cut a new release of cygutils (w.o. ascii.exe and realpath.exe) as soon as Eric is ready to upload a new version of coreutils. http://cygwin.com/ml/cygwin-apps-cvs/2012-q1/msg0.html http://cygwin.com/ml/cygwin-apps-cvs/2012-q1/msg1.html -- Chuck
Re: ITP checkbashisms -- Check for bashisms in /bin/sh scripts
On Sun, 2012-02-05 at 14:41 -0500, Charles Wilson wrote: We're not debian, and don't explicitly exclude the use of bashism in *ALL* [/usr]/bin/*.sh scripts. Even debian doesn't disallow bashisms i *usr*/bin/ scripts -- and as /bin == /usr/bin on cygwin, we can't realy distinguish between /bin/*.sh and /usr/bin/*sh. Some of our scripts, in fact, have sh-bang lines explicitly requiring bash (e.g. cygport). So...I'm not sure this is a totally useful tool for cygwin; it might lead to unnecessary list traffic: Hey, checkbashisms complains about /usr/bin/cygport, please fix... I realize this doesn't require votes as it is already in debian, and I certainly have no veto power, but if it did require votes I'd be giving it a '0' not a '+1'. You make valid points, but I suppose it would still be useful for someone writing sh scripts on Cygwin to check their portability to stricter /bin/sh shells on other systems. So while I'm hardly overwhelmed by the necessity for adding this package, its not completely useless on Cygwin either. Yaakov
CFA: support Windows 8 in /usr/lib/csih/winProductName.exe
Call for assistance: can somebody with access to Windows 8 provide an appropriate tested patch so that winProductName can recognize Windows 8 (various flavors, including Windows Server 8)? Getting the System Version http://msdn.microsoft.com/en-us/library/ms724429%28v=vs.85%29.aspx has not been updated yet. Rumor suggests GetVersionEx will return 6.2 for Windows 8, but information about distinguishing the various flavors is...not easily found? -- Chuck
src/winsup/doc ChangeLog new-features.sgml
CVSROOT:/cvs/src Module name:src Changes by: cori...@sourceware.org 2012-02-05 16:26:48 Modified files: winsup/doc : ChangeLog new-features.sgml Log message: * new-features.sgml (ov-new1.7.10): Fix typo. Patches: http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/doc/ChangeLog.diff?cvsroot=srcr1=1.379r2=1.380 http://sourceware.org/cgi-bin/cvsweb.cgi/src/winsup/doc/new-features.sgml.diff?cvsroot=srcr1=1.100r2=1.101
Re: Windows 7 x64 - Postinstall script errors - Cygwin V 1.7.9-1
Robert Miles writes: How do you switch to the new startup.exe? Every time I try to use the Cygwin startup.exe, it tells me it has found a new file that might not be compatible with the startup.exe I'm using, but does not give enough useful information on how to switch to a newer version. You've gone off-subject but here's a quick answer. It's setup.exe not startup.exe. You can pick up the most current one at the same place you likely picked up the original, on the Cygwin home page http://cygwin.com/ . Look on that page for a link to setup.exe . Click that link. That'll pull the current setup.exe onto your machine. Put it in the same location you put the original setup.exe. Now when you click on the Cygwin Setup icon on your desktop, assuming you've got that icon, you'll be running the most current setup.exe. Piece of cake. HTH, ..mark -- Denied. Denied like a Bank of Ponzi credit card. -- Get Fuzzy -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
[ANNOUNCEMENT] Updated: cygwin-1.7.10-1
Hi Cygwin friends and users, I just released 1.7.10-1. It introduces a couple of new APIs and some changes which are supposed to reduce fork problems. And lots of other stuff. Just read on. for a start, here are the most distinct changes from old behaviour: - 1.7.10 drops support for Windows NT4 to reduce the amount of legacy code. - The CYGWIN=tty mode has been removed. Either just use the normal Windows console as is, or use a terminal application like mintty. - New heap management. Drop registry setting heap_chunk_in_mb entirely in favor of a new per-executable setting in the executable file header which can be set using the peflags tool (see `peflags --cygwin-heap'). As always, please have another look into the documentation at http://cygwin.com/docs.html. It contains a few improvements and the description for new features and changes from old behaviour. What's new: --- - New getconf tool for querying confstr(3), pathconf(3), sysconf(3), and limits.h configuration. - New tzset utility to generate a POSIX-compatible TZ environment variable from the Windows timezone settings. - The passwd tool now allows an administrator to use the -R command for other user accounts: passwd -R username. - Experimental: Change the way sockets are created so that Cygwin always circumvents so-called layered service providers (LSPs) starting with Windows Vista. - signal handler functions are now dispatched in threads other than the main thread. - Support NcFsd filesystem. - clock_gettime(3) and clock_getres(3) accept per-process and per-thread CPU-time clocks, including CLOCK_PROCESS_CPUTIME_ID and CLOCK_THREAD_CPUTIME_ID. - New pthread functions: - Spin Locks: pthread_spin_destroy, pthread_spin_init, pthread_spin_lock, pthread_spin_trylock, pthread_spin_unlock. - Stack management: pthread_attr_getstack, pthread_attr_getstackaddr, pthread_attr_getguardsize, pthread_attr_setstack, pthread_attr_setstackaddr, pthread_attr_setguardsize, pthread_getattr_np. - Clock Selection: pthread_getcpuclockid, pthread_condattr_getclock, pthread_condattr_setclock. - Scheduling: pthread_setschedprio. - Signalling: pthread_sigqueue. - Add /proc/devices, /proc/misc, /proc/sysvipc, /proc/swaps. - Make various system functions thread cancelation points per POSIX. - Add ioctl FIONREAD handling for non-sockets. - dlopen now supports the Glibc-specific RTLD_NODELETE and RTLD_NOOPEN flags. - The printf and wprintf families of functions now support the %m conversion flag. - Execed processes now inherit the children of their predecessor. - Fifos have been rewritten and should now be more reliable. - GNU/glibc error.h error reporting functions: error, error_at_line, error_message_count, error_one_per_line, error_print_progname. - C99 tgmath.h type-generic macros. - Other new API: clock_getcpuclockid, clock_nanosleep, clock_settime, __fpurge, get_current_dir_name, getgrouplist, getpt, ppoll, psiginfo, psignal, ptsname_r, sys_siglist, sysinfo. - cygwin_conv_path_list finally supports CCP_WIN_W_TO_POSIX and CCP_POSIX_TO_WIN_W conversions. What changed: - - Drop support for Windows NT4. - The CYGWIN=tty mode using pipes to communicate with the console in a pseudo tty-like mode has been removed. Either just use the normal Windows console as is, or use a terminal application like mintty. - The CYGWIN environment variable options envcache, strip_title, title, tty, and upcaseenv have been removed. - New heap management. Drop registry setting heap_chunk_in_mb in favor of a new per-executable setting in the executable file header which can be set using the peflags tool. Drop registry setting heap_slop_in_mb entirely. - Revamp console and pseudo tty handling. Rename /dev/ttyX to /dev/consX, /dev/ttyX to /dev/ptyX. - Improve fork/exec performance on 64 bit systems. - Improve Ctrl-C handling in console. - Try harder to let fork not fail if DLLs are moved in memory which should, in some cases, minimize the need for rebaseall. - Try harder to send SIGHUP to children when process group leader fails. - Deal with Windows problem where non-blocking pipe I/O was not flushed properly on close. - Attempt to regularize most syscall-related strace output. - Improve behavior of Cygwin when started from a 64-bit process, especially under Windows 2003. - Improve multi-thread/reentrancy safety with syscalls that deal with fds. - dlopen can now find cygFOO.dll, even if the caller specified libFOO.so. This is supposed to support applications which are no aware of Windows DLLs. - Make accept(2), poll(2) and shutdown(2) behave more like on Linux. - Raise max number of mount points from 30 to 64. - Output of /proc/maps is closer to what Linux prints and much more useful to examine process VM layout. - /proc/loadavg now shows the number of currently running processes and the total number of processes. - /proc/version now
Re: Cygwin User's Guide, typos
On Feb 4 19:38, Denis Excoffier wrote: It remains now: hirarchial portabilty I fixed them yesterday, just forgot to reply. Thanks, Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
cygwin-1.7.10-1 and sshd
It rather looks like sshd puts tty as a value in the CYGWIN environment variable. Anyway -- It's tiring to see the warning about having tty as a value in the CYGWIN environment variable when I ssh to a cygwin host running 1.7.10-1. Windows accounts I'm ssh'ing to do not set the CYGWIN environment variable, I'm only seeing this on those accounts when ssh'd to from elsewhere Harry -- Harry G. McGavran, Jr. E-mail: w5...@w5pny.com -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Re: cygwin-1.7.10-1 and sshd
On Feb 5 11:49, Harry G McGavran Jr wrote: It rather looks like sshd puts tty as a value in the CYGWIN environment variable. Anyway -- It's tiring to see the warning about having tty as a value in the CYGWIN environment variable when I ssh to a cygwin host running 1.7.10-1. Windows accounts I'm ssh'ing to do not set the CYGWIN environment variable, I'm only seeing this on those accounts when ssh'd to from elsewhere I don't understand this description. What accounts on what machine from where?!? The CYGWIN=tty setting is neither set by sshd itself, nor is it set by the ssh-host-config script by default. Somebody must have created this manually. It's probably a setting in the sshd server entry. Look for the service registry entry HKLM/SYSTEM/CurrentControlSet/services/sshd/Parameters/Environment If it's not set there, it could be set in ~/.ssh/environment, or in ~/.ssh/rc, or in the ~/.ssh/authorized_keys file. Alternatively it's a setting done in the user's profile on the target machine. Or in the global Windows environment. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Re: 'screen' dies when ssh session to cygwin disconnected
On 2/5/2012 12:45 AM, Ilya Dogolazky wrote: STEPS LEADING TO PROBLEM: 1. Open a command line window in Windows (the standard one or rxvt: I tried both: no difference), then either detach from the session or not (I tried both: no difference) 2. Connect to the Windows machine from a linux machine as follows: ssh win_host -t screen -R -D (instead of -R -D the option -x could be used, I tried both: no difference) 3. After a while terminate the connection in some brutal way (in my case the vpn tunnel to the private company network is pretty unstable and terminating from itself frequently) A work-around is to send the parent screen process a HUP signal. You should then be able to reattach. -- David Rothenberger daver...@acm.org algorithm, n.: Trendy dance for hip programmers. -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Re: cygwin-1.7.10-1 and sshd
This happens whenever one ssh's from a Linux box to a Windows XP box with Cygwin on it. On login one gets the warning about CYGWIN having the value tty in it. The users on the windows systems don't have CYGWIN set on any of their profiles, .login's .cshrcs's etc. etc. BUT, /HKLM/SYSTEM/CurrentControlSet/services/sshd/Parameters/Environment IS set to ntsec binmode tty on the Windows XP boxes. -- Harry G. McGavran, Jr. E-mail: w5...@w5pny.com -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
extremely rarely fork errors: who occuppies the space?
Hello, our current system is the following (cygwin installation is nearly up to date). $ uname -a CYGWIN_NT-6.1-WOW64 PCFX163 1.7.10s(0.259/5/3) 20120111 22:39:26 i686 Cygwin some systems uses a newer snapshot: uname -a CYGWIN_NT-6.1-WOW64 PCFX061 1.7.10s(0.259/5/3) 20120202 16:59:00 i686 Cygwin We've still some not reproduceable fork errors like the following 0 [main] sh 90024 child_info_fork::abort: address space needed by 'cygiconv-2.dll' (0x6D0D) is already occupied 7 [main] sh 88036 child_info_fork::abort: address space needed by 'cygiconv-2.dll' (0x6D0D) is already occupied The error is extremely rarely - perhaps just once a day Antivirus software is deinstalled, Windows defender is deactivated. Rebaseall and peflagsall were running. We have this error really not reproduceable on some compile machines. These machines are running a perl script which polls a remote database for running make jobs in parallel (-j flag) - that's all. Normally all works fine - but sometimes we got these fork errors. Is there an possibility to get more information who is occupying the address space? Perhaps I can instrument the cygwin1.dll to wait or do something special - so I can use other tools i.e. sysinternals vmmap, process explorer ... to have a look who is using this address space. Perhaps a self build debug snapshot version with instrumented debug flags will give me some hints? Please - can anyone give me some hints. Any help is welcome. best regards Heiko -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
[bug #35213] problems with pager on Cygwin build
Follow-up Comment #5, bug #35213 (project octave): solved dependency on cygwin less package. Please close the bug ___ Reply to this item at: http://savannah.gnu.org/bugs/?35213 ___ Message sent via/by Savannah http://savannah.gnu.org/ -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
[bug #35213] problems with pager on Cygwin build
Update of bug #35213 (project octave): Status:None = Fixed Open/Closed:Open = Closed ___ Reply to this item at: http://savannah.gnu.org/bugs/?35213 ___ Message sent via/by Savannah http://savannah.gnu.org/ -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Updated: cygwin-1.7.10-1
Hi Cygwin friends and users, I just released 1.7.10-1. It introduces a couple of new APIs and some changes which are supposed to reduce fork problems. And lots of other stuff. Just read on. for a start, here are the most distinct changes from old behaviour: - 1.7.10 drops support for Windows NT4 to reduce the amount of legacy code. - The CYGWIN=tty mode has been removed. Either just use the normal Windows console as is, or use a terminal application like mintty. - New heap management. Drop registry setting heap_chunk_in_mb entirely in favor of a new per-executable setting in the executable file header which can be set using the peflags tool (see `peflags --cygwin-heap'). As always, please have another look into the documentation at http://cygwin.com/docs.html. It contains a few improvements and the description for new features and changes from old behaviour. What's new: --- - New getconf tool for querying confstr(3), pathconf(3), sysconf(3), and limits.h configuration. - New tzset utility to generate a POSIX-compatible TZ environment variable from the Windows timezone settings. - The passwd tool now allows an administrator to use the -R command for other user accounts: passwd -R username. - Experimental: Change the way sockets are created so that Cygwin always circumvents so-called layered service providers (LSPs) starting with Windows Vista. - signal handler functions are now dispatched in threads other than the main thread. - Support NcFsd filesystem. - clock_gettime(3) and clock_getres(3) accept per-process and per-thread CPU-time clocks, including CLOCK_PROCESS_CPUTIME_ID and CLOCK_THREAD_CPUTIME_ID. - New pthread functions: - Spin Locks: pthread_spin_destroy, pthread_spin_init, pthread_spin_lock, pthread_spin_trylock, pthread_spin_unlock. - Stack management: pthread_attr_getstack, pthread_attr_getstackaddr, pthread_attr_getguardsize, pthread_attr_setstack, pthread_attr_setstackaddr, pthread_attr_setguardsize, pthread_getattr_np. - Clock Selection: pthread_getcpuclockid, pthread_condattr_getclock, pthread_condattr_setclock. - Scheduling: pthread_setschedprio. - Signalling: pthread_sigqueue. - Add /proc/devices, /proc/misc, /proc/sysvipc, /proc/swaps. - Make various system functions thread cancelation points per POSIX. - Add ioctl FIONREAD handling for non-sockets. - dlopen now supports the Glibc-specific RTLD_NODELETE and RTLD_NOOPEN flags. - The printf and wprintf families of functions now support the %m conversion flag. - Execed processes now inherit the children of their predecessor. - Fifos have been rewritten and should now be more reliable. - GNU/glibc error.h error reporting functions: error, error_at_line, error_message_count, error_one_per_line, error_print_progname. - C99 tgmath.h type-generic macros. - Other new API: clock_getcpuclockid, clock_nanosleep, clock_settime, __fpurge, get_current_dir_name, getgrouplist, getpt, ppoll, psiginfo, psignal, ptsname_r, sys_siglist, sysinfo. - cygwin_conv_path_list finally supports CCP_WIN_W_TO_POSIX and CCP_POSIX_TO_WIN_W conversions. What changed: - - Drop support for Windows NT4. - The CYGWIN=tty mode using pipes to communicate with the console in a pseudo tty-like mode has been removed. Either just use the normal Windows console as is, or use a terminal application like mintty. - The CYGWIN environment variable options envcache, strip_title, title, tty, and upcaseenv have been removed. - New heap management. Drop registry setting heap_chunk_in_mb in favor of a new per-executable setting in the executable file header which can be set using the peflags tool. Drop registry setting heap_slop_in_mb entirely. - Revamp console and pseudo tty handling. Rename /dev/ttyX to /dev/consX, /dev/ttyX to /dev/ptyX. - Improve fork/exec performance on 64 bit systems. - Improve Ctrl-C handling in console. - Try harder to let fork not fail if DLLs are moved in memory which should, in some cases, minimize the need for rebaseall. - Try harder to send SIGHUP to children when process group leader fails. - Deal with Windows problem where non-blocking pipe I/O was not flushed properly on close. - Attempt to regularize most syscall-related strace output. - Improve behavior of Cygwin when started from a 64-bit process, especially under Windows 2003. - Improve multi-thread/reentrancy safety with syscalls that deal with fds. - dlopen can now find cygFOO.dll, even if the caller specified libFOO.so. This is supposed to support applications which are no aware of Windows DLLs. - Make accept(2), poll(2) and shutdown(2) behave more like on Linux. - Raise max number of mount points from 30 to 64. - Output of /proc/maps is closer to what Linux prints and much more useful to examine process VM layout. - /proc/loadavg now shows the number of currently running processes and the total number of processes. - /proc/version now