about summary refs log tree commit diff
Commit message (Collapse)AuthorAgeFilesLines
* * hurd/hurd/signal.h (struct hurd_sigstate): New member `preempters'. cvs/libc-960102Roland McGrath1996-01-0249-104/+11649
| | | | | | | | | | | | | | (hurd_preempt_signals, hurd_unpreempt_signals): Decls removed. * hurd/hurd/sigpreempt.h: New file. * hurd/preempt-sig.c: Rewritten with new interface. * sysdeps/mach/hurd/jmp-unwind.c (_longjmp_unwind): Remove local signal preempters being unwound past. * db: New directory, 4.4 BSD db package incorporated from BSD db-1.85 release. * sysdeps/unix/sysv/linux/sys/param.h: Several new macros for BSD compatibility.
* Tue Jan 2 00:50:10 1996 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1996-01-026-4/+276
| | | | | | | | | | * misc/queue.h: New file, incorporated from 4.4BSD. * misc/Makefile (headers): Add queue.h. * posix/sys/types.h [__USE_BSD]: Include endian.h. * io/sys/stat.h (DEFFILEMODE, ALLPERMS, ACCESSPERMS, S_BLKSIZE): New macros.
* Thu Dec 28 10:21:35 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-960101 cvs/libc-951231 cvs/libc-951230 cvs/libc-951229Roland McGrath1995-12-293-2/+43
| | | | | | | | * sysdeps/generic/confname.h: Define all names as self-referential macros so #ifdef works. * hurd/preempt-sig.c (hurd_unpreempt_signals): Remove bogus asgnmt of _hurd_signal_preempters[SIGNO].
* Mon Dec 25 20:56:39 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951228 cvs/libc-951227 cvs/libc-951226Roland McGrath1995-12-265-43/+86
| | | | | | | | | | | | | | | | | | | | * sysdeps/mach/hurd/bind.c: Translate EEXIST from dir_link into EADDRINUSE. If translated node doesn't grok ifsock protocol, return EADDRINUSE. * sysdeps/mach/hurd/connect.c: Make address arg `const struct sockaddr_un *'. The redecl is kosher and avoids another variable for AF_LOCAL case. * sysdeps/mach/hurd/sendto.c: Likewise. * sysdeps/mach/hurd/bind.c: Likewise. * socket/sys/socket.h (__SOCKADDR_ARG): Enable transparent_union code for GCC >= 2.7; use __transparent_union__ for name safety; add several sockaddr flavors. (__SOCKADDR_ALLTYPES, __SOCKADDR_ONETYPE): New macros used in constructing the transparent union declarations. (__CONST_SOCKADDR_ARG): New type (or macro if not GCC 2.7). (bind, connect, sendto): Make the sockaddr argument use that.
* * sysdeps/mach/hurd/setgid.c: In root case, store into NEWAUX, not cvs/libc-951225 cvs/libc-951224 cvs/libc-951223Roland McGrath1995-12-231-0/+4
| | | | | old vector. * sysdeps/mach/hurd/setuid.c: Likewise.
* Fri Dec 22 00:38:00 1995 H.J. Lu <hjl@nynexst.com>Roland McGrath1995-12-236-7/+25
| | | | | | | | | | | * stdio-common/vfscanf.c: Correctly handle white space skipping. * stdio-common/Makefile (tests): Add bug11. * stdio-common/bug11.c: New file. Fri Dec 22 00:38:00 1995 H.J. Lu <hjl@nynexst.com> * stdio-common/vfscanf.c: Correctly handle white space skipping. * stdio-common/Makefile (tests): Add bug11. * stdio-common/bug11.c: New file.
* Fri Dec 22 00:57:38 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951222Roland McGrath1995-12-227-58/+177
| | | | | | | | | | | | | | | | | | | * sysdeps/mach/hurd/setuid.c: Rewrote ID frobnication to do the right thing. * sysdeps/mach/hurd/setgid.c: Likewise. * sysdeps/mach/hurd/setreuid.c: Likewise. * sysdeps/mach/hurd/setregid.c: Likewise. * sysdeps/mach/hurd/setegid.c: Likewise. * sysdeps/mach/hurd/seteuid.c: Likewise. * sysdeps/mach/hurd/fork.c: Peek __mach_task_self_ value before proc_dostop call to work around kernel paging bug. Thu Dec 21 12:19:32 1995 Miles Bader <miles@gnu.ai.mit.edu> * sysdeps/mach/hurd/setuid.c (__setuid): Actually add the new uid instead of putting it (and other uids) in the gids and leaving the old uids as is.
* Peek __mach_task_self_ value before proc_dostop call to work around kernel ↵Roland McGrath1995-12-221-4/+6
| | | | paging bug.
* (__setuid): Actually add the new uid instead of putting it (and other uids) ↵ cvs/libc-951221Miles Bader1995-12-211-3/+3
| | | | in the gids and leaving the old uids as is.
* Wed Dec 20 18:23:10 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-12-212-16/+31
| | | | | | | * stdio/internals.c (flushbuf): If the target is -1, always discard the buffer of read data. Only set TWIDDLED flag in !ALIGNED case. Never increment target or offset when old value is -1.
* Tue Dec 19 17:00:42 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951220Roland McGrath1995-12-202-5/+11
| | | | | * hurd/hurdpid.c (_S_msg_proc_newids): Only run the hook when the pgrp changes.
* Mon Dec 18 13:40:37 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951219Roland McGrath1995-12-195-25/+48
| | | | | | | | | | | | * stdio/fread.c: Don't increment __offset when it's -1. * elf/rtld.c (dl_main): Prepend tab to "statically linked". Exit 0 in that case. * misc/err.c (vwarnx, vwarn): Fix major brainos. * sysdeps/mach/hurd/dl-sysdep.c (mmap): Fix setting of inheritance.
* Sun Dec 17 15:56:35 1995 Miles Bader <miles@gnu.ai.mit.edu> cvs/libc-951218Roland McGrath1995-12-181-0/+4
| | | | * misc/getpass.c (getpass): Don't barf if getline returns a null BUF.
* (getpass): Don't barf if getline returns a null BUF.Miles Bader1995-12-171-10/+11
|
* Sat Dec 16 10:33:11 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951217Roland McGrath1995-12-173-12/+66
| | | | | | | | * Makerules: Use $(do-install-so) for installing shared objects. (do-install-so): New canned sequence. Make a symlink LIB.so after installing LIB.so.VERSION. * inet/netinet/in.h: Fixed typo in IPPORT_WHOIS.
* Fixed typo in IPPORT_WHOIS.Roland McGrath1995-12-161-2/+2
|
* (AViiON): Add ix86-dg-dgux cvs/libc-951216Stan Cox1995-12-161-0/+5
|
* (i*86*) Change [345] to [3456]Stan Cox1995-12-151-11/+15
|
* Fri Dec 15 04:41:22 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu> cvs/libc-951215Roland McGrath1995-12-158-60/+184
| | | | | | | | | | | | | | | | | | | | | | | | | | | * stdio-common/Makefile (tests): Add bug10. * stdio-common/bug10.c: New file. From HJ Lu. * stdio-common/tstdiomisc.c: Make more test-suite like: exit status tells about successful run. * stdio-common/vfscanf.c [!USE_IN_LIBIO]: Use `flags' to check format correctness. Correct handling of trailing white spaces in format + EOF. Fri Dec 15 01:31:56 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu> * stdio-common/Makefile (tests): Add bug8 and bug9. * stdio-common/bug8.c, stdio-common/bug9.c: New tests. * stdio-common/vfscanf.c: Fix bug in dynamic buffer handling. * stdlib/strtod.c: Correct spelling: nominator -> numerator. Thanks to Jim Meyering. Sat Nov 25 06:05:12 1995 H.J. Lu <hjl@nynexst.com> * stdio-common/vfscanf.c: Always check width !=0. Correctly handle %%.
* Thu Dec 14 02:28:22 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951214Roland McGrath1995-12-142-4/+14
| | | | | | | | | | * posix/glob.c (glob_in_dir): Cast result of opendir to __ptr_t, and cast STREAM to DIR * before passing to readdir and closedir. Wed Dec 13 22:06:07 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * hurd/hurdsig.c (_hurd_internal_post_signal: suspend): Reply after aborting RPCs but before calling proc_mark_stop.
* (_hurd_internal_post_signal: suspend): Reply after aborting RPCs but before ↵Roland McGrath1995-12-141-0/+1
| | | | calling proc_mark_stop.
* Accept *-*-ieee*.Ian1995-12-131-1/+1
|
* Regenerated cvs/libc-951213 cvs/libc-951212Roland McGrath1995-12-121-0/+5
| | | | | | | Mon Dec 11 20:07:54 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * posix/glob.c [! STDC_HEADERS]: Declare getenv. (glob): Avoid using function as value.
* Mon Dec 11 20:07:54 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-12-122-1/+25
| | | | | | | | | | | | | | | | | | | | | * posix/glob.c [! STDC_HEADERS]: Declare getenv. (glob): Avoid using function as value. * elf/rtld.c (dl_main): When mapping argument executable, set l_name to "", not l_libname. After loading DT_NEEDED library, set its l_type to lt_library. * sysdeps/mach/hurd/mmap.c: Don't interpret MAP_INHERIT to mean VM_INHERIT. We can't handle MAP_INHERIT easily. Handle non-page-aligned addresses if congruent to offset. * elf/dl-init.c: Skip the initializer for l_type lt_executable with l_name "". Start at _dl_loaded; don't skip the first element. * elf/dl-load.c (MAP_FILE): Define to zero if undefined. (MAP_COPY): Define to MAP_PRIVATE if undefined. (_dl_map_object_from_fd): Don't use MAP_INHERIT in mmap calls. If file it ET_EXEC, set its l_type to lt_executable.
* RegeneratedRoland McGrath1995-12-124-10/+44
| | | | | | | | | | | | | Fri Dec 8 13:04:51 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * posix/glob.c: Implement new options GLOB_ALTDIRFUNC, GLOB_BRACE, GLOB_TILDE, GLOB_NOMAGIC. (glob): Use stat instead of lstat to determine directoriness. * posix/glob.h (GLOB_ALTDIRFUNC, GLOB_BRACE, GLOB_NOMAGIC, GLOB_TILDE): New flag bits. (__GLOB_FLAGS): Include them. (glob_t): New members gl_closedir, gl_readdir, gl_opendir, gl_lstat, gl_stat.
* (MAP_FILE): Define to zero if undefined. (MAP_COPY): Define to MAP_PRIVATE ↵Roland McGrath1995-12-121-3/+23
| | | | if undefined. (_dl_map_object_from_fd): Don't use MAP_INHERIT in mmap calls. If file it ET_EXEC, set its l_type to lt_executable.
* (powerpc-harris-powerunix): Add guess for port to new target.Per Bothner1995-12-121-0/+3
|
* Sun Dec 10 09:56:06 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951211Roland McGrath1995-12-113-1/+7
| | | | * elf/dl-minimal.c (malloc): Use MAP_PRIVATE in mmap call.
* Fri Dec 8 13:04:51 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951210 cvs/libc-951209Roland McGrath1995-12-098-89/+191
| | | | | | | | | | | | | | | | | | | | | | | | | | | * locale/error.c, locale/error.h: Files removed. * locale/Makefile (distribute): Remove error.h. (lib-modules): Remove error. * hurd/hurdlookup.c (__hurd_file_name_lookup_retry): For "tty" magic, return ENXIO if no ctty. * sysdeps/mach/hurd/mmap.c: For MAP_FIXED, deallocate a previous mapping if vm_map fails for that reason. * posix/glob.c: Implement new options GLOB_ALTDIRFUNC, GLOB_BRACE, GLOB_TILDE, GLOB_NOMAGIC. (glob): Use stat instead of lstat to determine directoriness. * posix/glob.h (GLOB_ALTDIRFUNC, GLOB_BRACE, GLOB_NOMAGIC, GLOB_TILDE): New flag bits. (__GLOB_FLAGS): Include them. (glob_t): New members gl_closedir, gl_readdir, gl_opendir, gl_lstat, gl_stat. * elf/elf.h (ET_NUM, SHT_NUM, STB_NUM, STT_NUM, PT_NUM): New macros. * sysdeps/unix/sysv/linux/sys/mman.h: Include <linux/mman.h> to define all the bit values. (MAP_*, MCL_*): Macros removed.
* Thu Dec 7 02:27:56 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951208Roland McGrath1995-12-081-0/+24
| | | | | | | | | | | | | | | | | | | | | | | | * resolv/res_comp.c, resolv/res_debug.c, resolv/res_send.c: Updated from BIND 4.9.3-BETA27. Wed Dec 6 18:44:01 1995 Miles Bader <miles@gnu.ai.mit.edu> * sysdeps/mach/hurd/select.c (__select): Swap size args to mach_msg. * sysdeps/mach/hurd/select.c (__select): Frob TYPES correctly when we get a delayed reply. Only grab values out of entries in TYPES that have SELECT_RETURNED turned on, and turn it on whenever an rpc returns. Only clear bits in the user's fdsets -- those needing to be set should be already. Use SELECT_ALL in appropiate places. (SELECT_RETURNED, SELECT_ALL): New macros. Wed Dec 6 09:10:39 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> * sysdeps/mach/hurd/sys/param.h (NBBY): New macro. * gnu-versions.h (_GNU_GLOB_INTERFACE_VERSION): New macro.
* Updated from BIND-4.9.3-BETA27.Roland McGrath1995-12-073-2/+20
|
* (__select): Still clear the user's bits for an fd when SELECT_RETURNED ↵Miles Bader1995-12-071-25/+25
| | | | isn't set. Only clear bits in the user's fdsets -- those needing to be set should be already. Use SELECT_ALL in appropiate places. (SELECT_ALL): New macro.
* (__select): Swap size args to mach_msg.Miles Bader1995-12-061-1/+1
|
* (NBBY): New macro.Roland McGrath1995-12-061-1/+2
|
* (_GNU_GLOB_INTERFACE_VERSION): New macro.Roland McGrath1995-12-061-0/+1
|
* Recognize aof in the OS field.erich1995-12-061-1/+1
|
* Tue Dec 5 14:00:17 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951206Roland McGrath1995-12-061-1/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * misc/Makefile (headers): Add error.h, err.h. (routines): Add error, err. (gpl2lgpl): New variable. * misc/err.c: New file. * misc/err.h: New file. * misc/error.c, misc/error.h: New files. * sysdeps/mach/hurd/ioctl.c: Fix typo in last change. * Makeconfig (+link): Translate libc% from $^, not just libc.a. (link-libc): Append $(libc.so-version) to libc.so. (built-program-cmd): Fix comma usage. * Makerules [libc.so-version] (libc.so$(libc.so-version)): Make a symlink to libc.so in the build directory. * Rules ($(others) $(tests)): Depend on the library that appears in $(link-libc). (%.out): Use $(built-program-cmd) in commands. * posix/unistd.h [__USE_MISC]: Declare brk, sbrk. * sysdeps/generic/setenv.c: Added canonical portability cruft. (setenv): Use realloc on LAST_ENVIRON instead of always copying. (unsetenv): New function. * stdlib/stdlib.h [__USE_BSD]: Declare unsetenv. * sysdeps/generic/putenv.c: Rewritten using setenv and unsetenv. * libio/Makefile (routines): Remove iofscanf, add iopopen, pclose.
* (transformbasename): Fix misspelling in initialization. cvs/make-3-74-3 cvs/make-3-74-2 cvs/make-3-74-1Paul Eggert1995-12-061-1/+1
|
* Updated from ../gpl2lgpl.sed /home/gd/gnu/lib/error.cRoland McGrath1995-12-0618-93/+9874
|
* Tue Dec 5 02:27:32 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu>Roland McGrath1995-12-0516-251/+319
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * libio/Makefile [routines]: Remove iofscanf, add iopopen, pclose. * libio/iofscanf.c: Remove file. * libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string termination. * libio/iopopen.c: New file from GNU libio. * libio/memstream.c: Fixed bug in fclose handling. Instead of providing a close callback we need a finish callback. * libio/pclose.c: New file. Derived from popen.c in GNU libio. * posix/gnu/types.h: Fixed typo. * stdio-common/errnobug.c: fputs returns EOF in error case. Do not test for != 0. * stdio-common/printf-parse.h (parse_one_spec): Do not force padding with ' ' if precision is given. Fix by HJ Lu. * stdio-common/printf_fp.c: Fix comment. * stdio-common/tfformat.c, stdio-common/tiformat.c, stdio-common/tstdiomisc.c: New files from GNU libio test suite. * stdio-common/tstgetln.c: Provide ssize_t type when testing libio. * stdio-common/vfprintf.c (outchar): Use PUTC instead of putc. (vfprintf): Cleasr args_type array before using it. When printing 0 as an integer with precision 0 nothing must be written for the number. Based on patch by HJ Lu. * stdio-common/vfscanf.c: Remove fixed input buffer. Now we have a dynamically extended buffer. * stdlib/strtod.c: Merge with version in Linux libc. This fixes some bugs with handling of very small numbers and has different solution for formaer patches. * sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename macros r1 and r2 to t1, and t2 resp. This is necessary because glibc headers also define r1. Tue Dec 5 02:27:32 1995 Ulrich Drepper <drepper@gnu.ai.mit.edu> * libio/Makefile [routines]: Remove iofscanf, add iopopen, pclose. * libio/iofscanf.c: Remove file. * libio/iogetdelim.c (_IO_getdelim): Correct stupid bug at string termination. * libio/iopopen.c: New file from GNU libio. * libio/memstream.c: Fixed bug in fclose handling. Instead of providing a close callback we need a finish callback. * libio/pclose.c: New file. Derived from popen.c in GNU libio. * posix/gnu/types.h: Fixed typo. * stdio-common/errnobug.c: fputs returns EOF in error case. Do not test for != 0. * stdio-common/printf-parse.h (parse_one_spec): Do not force padding with ' ' if precision is given. Fix by HJ Lu. * stdio-common/printf_fp.c: Fix comment. * stdio-common/tfformat.c, stdio-common/tiformat.c, stdio-common/tstdiomisc.c: New files from GNU libio test suite. * stdio-common/tstgetln.c: Provide ssize_t type when testing libio. * stdio-common/vfprintf.c (outchar): Use PUTC instead of putc. (vfprintf): Cleasr args_type array before using it. When printing 0 as an integer with precision 0 nothing must be written for the number. Based on patch by HJ Lu. * stdio-common/vfscanf.c: Remove fixed input buffer. Now we have a dynamically extended buffer. * stdlib/strtod.c: Merge with version in Linux libc. This fixes some bugs with handling of very small numbers and has different solution for formaer patches. * sysdeps/i386/i586/add_n.S, sysdeps/i386/i586/sub_n.S: Rename macros r1 and r2 to t1, and t2 resp. This is necessary because glibc headers also define r1.
* Mon Dec 4 12:10:28 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu>Roland McGrath1995-12-043-19/+35
| | | | | | | | | | | | | | | * stdlib/gen-mpn-copy (translations): Updated for new layout in GMP 1.910. * malloc/malloc.c (__malloc_initialize): Renamed from initialize; made global. (malloc): Caller changed. * malloc/realloc.c (realloc): Call __malloc_initialize if necessary, before checking hook. * malloc/malloc.h: Declare __malloc_initialize. * sysdeps/mach/hurd/ioctl.c: For IOC_VOID request, send ARG itself as integer_t arg in RPC.
* Updated from ../=mpn/gmp-1.910Roland McGrath1995-12-0417-286/+1246
|
* * config.guess: Recognize HP model 816 machines as having a ↵Linda A. Walsh1995-12-041-1/+1
| | | | PA1.1 processor.
* For IOC_VOID request, send ARG itself as integer_t arg in RPC.Roland McGrath1995-12-041-0/+7
|
* * sysdeps/mach/hurd/brk.c (DATA_SIZE): Bump to 128MB. cvs/libc-951204 cvs/libc-951203Roland McGrath1995-12-035-17/+128
| | | | | | | | | | (_hurd_set_brk): Try to allocate more space when we run out. * sysdeps/generic/sbrk.c: If __curbrk is zero, call __brk with zero and examine it again. * sysdeps/unix/sysv/linux/i386/brk.c: New file. * sysdeps/unix/sysv/linux/i386/brk.S: File removed. * sysdeps/unix/sysv/linux/i386/sbrk.S: File removed. * sysdeps/unix/sysv/linux/dl-sysdep.c: New file.
* Sat Dec 2 03:47:27 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951202Roland McGrath1995-12-023-134/+11
| | | | | | | | | | | * sysdeps/unix/sysv/linux/i386/sbrk.S: File removed. * sysdeps/generic/dl-sysdep.c (_dl_sysdep_start) [DL_SYSDEP_INIT]: Invoke this macro before calling DL_MAIN. * malloc/malloc.c (malloc): Do initialization here, before checking the hook. (_malloc_internal): Don't do it here.
* (_dl_sysdep_start) [DL_SYSDEP_INIT]: Invoke this macro before calling DL_MAIN.Roland McGrath1995-12-021-0/+4
|
* * config.guess: Recognize Pentium under SCO. cvs/libc-951201Per Bothner1995-11-301-0/+2
|
* Wed Nov 29 12:30:50 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951130Roland McGrath1995-11-3014-39/+41
| | | | | | | | | | | | | | | | | | | | | | * libio/vsnprintf.c (__vsnprintf): Define as alias. * libio/iovsscanf.c (__vsscanf): Define as alias. * asprintf.c: Remove libio adaptation code added by drepper. * dprintf.c: Likewise. * printf.c: Likewise. * scanf.c: Likewise. * snprintf.c: Likewise. * sprintf.c: Likewise. * sscanf.c: Likewise. * vprintf.c: Likewise. * stdio-common/vfscanf.c [USE_IN_LIBIO] (__vfscanf): New wrapper function. (vfscanf): Define unconditionally. * sysdeps/i386/dl-machine.h (elf_machine_rel): If SYM is null, use zero for value. * misc/getpass.c: Write a newline after reading the unechoed password.
* Mon Nov 27 19:24:18 1995 Roland McGrath <roland@churchy.gnu.ai.mit.edu> cvs/libc-951129 cvs/libc-951128Roland McGrath1995-11-286-4/+104
| | | | | | | | * posix/Makefile (routines): Add getsid. * sysdeps/unix/sysv/linux/getsid.S: New file. * sysdeps/mach/hurd/getsid.c: New file. * sysdeps/stub/getsid.c: New file. * posix/unistd.h [__USE_GNU]: Declare getsid.