4
0
mirror of git://sourceware.org/git/newlib-cygwin.git synced 2025-02-27 19:17:18 +08:00

* include/cygwin/version.h: Bump API minor number for below export.

* cygwin.din (pututline): New exported function.
* syscalls.cc (login): Use pututiline().
(setutent): Open utmp as read/write.
(endutent): Check if utmp file is open.
(utmpname): call endutent() to close current utmp file.
(getutid): Enable all cases, use strncmp() to compare ut_id fields.
(pututline): New.
* tty.cc (create_tty_master): Set ut_pid to current pid.
* fhandler.h (fhandler_serial::vmin_): Declare as size_t.
* fhandler_serial.cc (fhandler_serial::raw_read): Use correct type for
minchars.
(fhandler_serial::ioctl): Set errno if the ClearCommError fails.
(fhandler_serial::tcsetattr): Use correct value for vmin_.
(fhandler_serial::tcgetattr): Ditto.
* fhandler_socket.cc (fhandler_socket::recvmsg): Call if from == NULL
WSARecvFrom with fromlen = NULL.
This commit is contained in:
Christopher Faylor 2002-11-07 03:47:59 +00:00
parent c3a7b0063e
commit bb8e02d933

View File

@ -38,70 +38,6 @@ strchr (const char *s, int c)
return res;
}
extern const char isalpha_array[];
#undef strcasematch
#define strcasematch cygwin_strcasematch
static inline int
cygwin_strcasematch (const char *cs, const char *ct)
{
register int __res;
int d0, d1;
__asm__ ("\
.global _isalpha_array \n\
cld \n\
andl $0xff,%%eax \n\
1: lodsb \n\
scasb \n\
je 2f \n\
xorb _isalpha_array(%%eax),%%al \n\
cmpb -1(%%edi),%%al \n\
jne 3f \n\
2: testb %%al,%%al \n\
jnz 1b \n\
movl $1,%%eax \n\
jmp 4f \n\
3: xor %0,%0 \n\
4:"
:"=a" (__res), "=&S" (d0), "=&D" (d1)
: "1" (cs), "2" (ct));
return __res;
}
#undef strncasematch
#define strncasematch cygwin_strncasematch
static inline int
cygwin_strncasematch (const char *cs, const char *ct, size_t n)
{
register int __res;
int d0, d1, d2;
__asm__ ("\
.global _isalpha_array; \n\
cld \n\
andl $0xff,%%eax \n\
1: decl %3 \n\
js 3f \n\
lodsb \n\
scasb \n\
je 2f \n\
xorb _isalpha_array(%%eax),%%al \n\
cmpb -1(%%edi),%%al \n\
jne 4f \n\
2: testb %%al,%%al \n\
jnz 1b \n\
3: movl $1,%%eax \n\
jmp 5f \n\
4: xor %0,%0 \n\
5:"
:"=a" (__res), "=&S" (d0), "=&D" (d1), "=&c" (d2)
:"1" (cs), "2" (ct), "3" (n));
return __res;
}
#ifdef __cplusplus
}
#endif