]>
Zhao Yanbai Git Server - minix.git/log
Ben Gras [Sun, 24 Aug 2014 22:19:25 +0000 (00:19 +0200)]
some small changes
. add /sbin to tests $PATH for ping
. take disable file mmap item from default boot menu
. ask for feedback in motd
. fix ext2fs on arm (the memory alloced with STATICINIT is flaky on arm)
Change-Id: I7525207074d62abc47ed3891139f6ef7ef6025be
David van Moolenbroek [Tue, 26 Aug 2014 22:28:58 +0000 (22:28 +0000)]
VFS: unbreak select on /dev/tty
The remapping from /dev/tty to the real controlling terminal in the
device code was confusing the select code. The latter is now aware
of this case and should handle it properly, at the cost of one extra
field in the filp structure.
There is a nasty, hopefully sufficiently rare case of /dev/tty being
kept open while controlling terminals are changing, that we are still
not handling. Doing so would require more than just a few changes,
but the code should at least detect and cleanly fail on this case.
Test77 now has a basic test set for selecting on /dev/tty.
Change-Id: Iaedea449cdb728d0e66a9de8faacdfd9638dfe92
David van Moolenbroek [Wed, 27 Aug 2014 14:23:52 +0000 (14:23 +0000)]
PTY: let closed master cause EOF on slave
This puts PTY on par with e.g. rs232 as well as behavior documented
for other OSes. It is not a fix for an issue in userland, though.
- add a (minimal) test case to test77;
- fix a few other minor issues in test77.
Change-Id: I89c000921ee69dd9f5713665349c1ab1ad1dc2cc
David van Moolenbroek [Tue, 26 Aug 2014 16:39:02 +0000 (16:39 +0000)]
VFS: complete the devmajor_t/devminor_t switch
Change-Id: I9f809283f19d577cf7e02705fdbb2310ae2b6cba
David van Moolenbroek [Mon, 25 Aug 2014 19:34:39 +0000 (19:34 +0000)]
tty/pty: unbreak stty(1)
Change-Id: I3f857dcbb89e18c7db3a72f4bd6809beb7904bc0
David van Moolenbroek [Mon, 25 Aug 2014 19:33:27 +0000 (19:33 +0000)]
tty/pty: change back default CERASE to ^H
Alternatives should be considered (such as changing our keymaps to
better match NetBSD) in due time, but for now, the current default
is incredibly annoying!
Change-Id: I4cab5d6a9f39983ee8aa80362768fdb9cf3db948
David van Moolenbroek [Thu, 28 Aug 2014 11:40:55 +0000 (11:40 +0000)]
uptime(1): also report uptime
It might be more useful this way. *cough*
Change-Id: I318169fef8bf7737dc46eebf5c5332ce42a9076a
Ben Gras [Mon, 25 Aug 2014 16:35:59 +0000 (18:35 +0200)]
INIT died problem / build system robustness
Changes provoked by debugging / making 'PM: INIT died' error debuggable.
This was caused (in one instance) by a missing /dev/console (and everything
else) on the boot time ramdisk.
. sanity-check against this case by checking for console
. PM: print init stacktrace and exit status when init dies
. eliminate some explicitly invoked ${MAKE}s and a rm -rf in
Makefiles, causing race conditions; use explicit ordering (.WAIT)
instead, moving some of the burden of dependencies of partial builds
to the user. On the plus side, generate ramdisk just once.
. make mkfs.mfs fail as soon as it sees an error missing file in
the proto file. - except for EACCES on minix native for the mfs
test. also fix some fmt warnings.
. init: include debug info in executable
Change-Id: I8eea4986a4f64ecaf223aff5da321d8b4f4a3fa4
David van Moolenbroek [Tue, 26 Aug 2014 16:03:05 +0000 (16:03 +0000)]
Import NetBSD w(1) and uptime(1)
Change-Id: Id6cc36f4befbce4be3a471ae920d75972a44bef1
Lionel Sambuc [Sat, 23 Aug 2014 07:41:54 +0000 (09:41 +0200)]
Fixes for -O3 with GCC
Change-Id: I8d8e267cc7996581729df4be0d8e21646ff9e1d2
David van Moolenbroek [Fri, 22 Aug 2014 14:35:55 +0000 (14:35 +0000)]
ps: fix reported run time
David van Moolenbroek [Thu, 21 Aug 2014 15:22:24 +0000 (15:22 +0000)]
test59: fix status type for mthread_join call
Integer and pointer sizes may not be the same.
Lionel Sambuc [Fri, 22 Aug 2014 17:11:59 +0000 (19:11 +0200)]
Fix -DNDEBUG support
Change-Id: Ib64cef83a646bce2b0afa72b607fb9e5c306e859
Ben Gras [Fri, 22 Aug 2014 12:06:57 +0000 (14:06 +0200)]
arm am335x: disable watchdog timer on bootup
. for new uboot (specifically beaglebone black rev c) compliance
Change-Id: I28fd0ca15f5365e14bf2bb9407f266e3e570b6d9
Ben Gras [Fri, 22 Aug 2014 10:34:33 +0000 (12:34 +0200)]
fix test48 - minix3.org.xyz resolves now
Change-Id: I40b86b7c8cbfcbac0c976c2477200081c2cfc8f7
Lionel Sambuc [Fri, 22 Aug 2014 10:17:04 +0000 (12:17 +0200)]
Removal of commands fix: Keep builtin man pages.
Change-Id: I5cff0f987ed637677406e90faeecb8104f6551bc
Lionel Sambuc [Sun, 3 Aug 2014 12:39:09 +0000 (14:39 +0200)]
commands/test: removed
Change-Id: I5557eb2116d23c466ce82f1c8c9d18590316a0d0
Lionel Sambuc [Sun, 3 Aug 2014 12:37:13 +0000 (14:37 +0200)]
commands/expr: removed
Change-Id: I374f162959c6e0d708c7b1bd66f2c7a4346c097a
Lionel Sambuc [Sun, 3 Aug 2014 11:45:53 +0000 (13:45 +0200)]
commands/command: removed
Change-Id: I90d57681e7bcabebff323f27af57bab108fa6d4d
Lionel Sambuc [Sun, 3 Aug 2014 11:27:57 +0000 (13:27 +0200)]
commands/wait: removed
Change-Id: Ie712ec86ef9bbdeffb2fafb51b64600bd118d1e2
Lionel Sambuc [Sun, 3 Aug 2014 10:53:12 +0000 (12:53 +0200)]
commands/read: removed
Change-Id: Iaa24bb634b31932f793f02c4df10b48030ab70a0
Lionel Sambuc [Sun, 3 Aug 2014 10:44:34 +0000 (12:44 +0200)]
commands/umask: removed
Change-Id: I0e09cd3e311dad61e72989262fef037759ae9d5d
Lionel Sambuc [Sun, 3 Aug 2014 10:40:23 +0000 (12:40 +0200)]
commands/cd: removed
Change-Id: I438c1dfc778e23131fbd0ee1246abfb7df9437f3
Lionel Sambuc [Sun, 3 Aug 2014 10:38:50 +0000 (12:38 +0200)]
commands/getopts: removed
Change-Id: Idc9ec425749a76e2664906f2483be6071273507f
Ben Gras [Mon, 3 Jun 2013 10:54:08 +0000 (10:54 +0000)]
netbsd ping & traceroute
. remove minix ping
. add support for socket(AF_INET, SOCK_RAW, {IPPROTO_ICMP,IPPROTO_UDP})
. gives test48 a better chance of detecting network connectivity
Change-Id: Ia678546d27ac378642f1160a141e1fc33458cce2
Lionel Sambuc [Wed, 20 Aug 2014 14:21:09 +0000 (16:21 +0200)]
releasetools/Makefile: updates
Lionel Sambuc [Sun, 3 Aug 2014 19:38:36 +0000 (21:38 +0200)]
minix/driver/storage/ramdisk: Makefile rework
This is an attempt at simplifying the Makefile, by specifying the home
directory of every utility, instead of trying to guess depending on some
variable.
While this is a bit more verbose, this simplifies the logic. This also makes
it simpler to add / remove programs from the ramdisk.
Change-Id: Id789a6cc6e5a9be11decec0f30c5327f19819aa1
Wojciech Zajac [Tue, 19 Aug 2014 16:23:26 +0000 (18:23 +0200)]
DDEKit interrupt fix
- With this patch, DDEKit no longer uses IRQ number as interrupt ID
and more IRQ numbers can be used with it
- DDEKit IRQ code, will now check return values and panic on error
Change-Id: I9ef5ab1ee2262242204bdd8c0a60459a19ddcc1b
Lionel Sambuc [Thu, 14 Aug 2014 17:02:49 +0000 (19:02 +0200)]
Update usr/Makefile
- This improves the user messages.
- This update the pkgsrc checkout rules to point to the new repository,
as well as the new work process we are introducing.
- This introduces rules for the MINIX sources, as we don't have the
space anymore to distribute them by default on the official ISO.
Change-Id: Id1867286bd15efc46bad1d906c1ca1b3a883b064
Lionel Sambuc [Wed, 13 Aug 2014 11:21:19 +0000 (13:21 +0200)]
/usr/tests/minix-posix/check-install
This script runs a subset of all the available test. This is aimed at
first time users which might be surprised by the warnings and time the
full test suite takes.
This runs all the tests which in case of success only print "ok" and
don't take too much time to run, independently of the network
connectivity.
Change-Id: Id54b7656a98f9ec81880f91cb63ca888a175f20f
Lionel Sambuc [Wed, 6 Aug 2014 15:29:21 +0000 (17:29 +0200)]
Introduce pkgin_sets
This tool allow you to install one or more predefined package sets.
Change-Id: Id21c9e9fbd43f44f2d3b040961411428e1ae0af9
Lionel Sambuc [Fri, 8 Aug 2014 16:14:06 +0000 (18:14 +0200)]
TOOL_TIC: Set to "/usr/bin/tic", instead of "tic"
There is a tic command which comes with a package. When this package is
installed, this prevent "make build" from completing, as the packaged
tic as incompatible arguments.
Change-Id: Ic75057013b92158d715c5533f01d79f65317a400
Lionel Sambuc [Fri, 8 Aug 2014 15:50:03 +0000 (17:50 +0200)]
Services move to /service fixes
- Fix init rights not adjusted at boot time
- Fix usbd not loaded on BBB / BBW
Change-Id: Ic690547876d486165e74c749a4fe43891d0e1e8d
Lionel Sambuc [Fri, 8 Aug 2014 12:05:25 +0000 (14:05 +0200)]
releasetools/*image.sh
- Removed an "export CPPFLAGS=${FLAG}" which prevented proper settings
from the environment to be passed to the build step.
- Re-arranged variable settings at the top, so that we don't need
to evaluate the argument to vfat mkfs command anymore in
arm_sdimage.sh
- "Merged" both script for easier comparison in the future.
Change-Id: Id59f902e4eaeb7f268d5051789462f14421a114a
Philip Homburg [Tue, 5 Aug 2014 13:35:37 +0000 (15:35 +0200)]
OSX and FreeBSD don't have mkfs.vfat.
Use newfs_msdos instead.
Change-Id: I51c4086192332f0967a434d88add14db2791395e
Lionel Sambuc [Thu, 7 Aug 2014 12:27:32 +0000 (14:27 +0200)]
Update download urls in fetch.sh
Change-Id: Ib3d6c2771e8bc6d03efa85af52f2ed6288ebc7dd
Lionel Sambuc [Thu, 7 Aug 2014 11:37:43 +0000 (13:37 +0200)]
Removing /home/bin
The bin user doesn't need an actual home folder to run the tests. As
such this account should not be used in 'su - bin'. To be noted that
'su bin' still works as expected, and allow to run the minix test set
as usual.
Change-Id: I21fd178bf3b7b28849f05ef24930b553094cc851
Lionel Sambuc [Thu, 7 Aug 2014 11:15:50 +0000 (13:15 +0200)]
Removing the ast account
We used to have an account "ast" as a token to Andrew S. Tannebaum,
the creator of MINIX. The account was disable by default, with no
possible way to login.
It seems it generates more confusion than it is worth, so this removes it.
The default skeleton user profile is still stored into /etc/ast instead
of the usual /etc/skel.
Change-Id: I71818c0bb9580cdecfa9621f8693586fc48d17cb
Lionel Sambuc [Thu, 7 Aug 2014 11:08:12 +0000 (13:08 +0200)]
setup.sh: Improved user messages.
Change-Id: I5b260b5893ec5ec5a905c48ea8f04aeb2f764bd9
Lionel Sambuc [Fri, 1 Aug 2014 12:58:40 +0000 (14:58 +0200)]
Clearing history in docs/UPDATING
As the ABI breaks everything, there is no point to keep the full source
upgrade documentation tweaks preceding the merge.
Change-Id: I1d5dcc7a7586e6aabd6b671dc2693f4fc9c5391c
Lionel Sambuc [Thu, 31 Jul 2014 16:36:24 +0000 (18:36 +0200)]
Improve default HOST_CC / CC settings
Instead of blindly defaulting to cc, try to find the actual compiler
installed on the system, and as a last resort
Change-Id: I114780b8e4bb54fab72dbd80466266126d6574a5
Ben Gras [Thu, 31 Jul 2014 13:53:30 +0000 (13:53 +0000)]
CC=.. mkdep fix
Change-Id: If9dd0d0ca3c272c31896dfc423b7320edc89861e
Lionel Sambuc [Wed, 30 Jul 2014 14:10:03 +0000 (16:10 +0200)]
servers/rs: Add sanity check on executable size
RS used to do a stat, and check that the stat was successful, but it
didn't check that the executable was not actually empty.
This patch adds a check to detect file which are smaller than the minimum
ELF size possible.
Change-Id: I22b004084f17e7d395e2c1377add7bc8b51c3d5e
Lionel Sambuc [Tue, 29 Jul 2014 19:17:48 +0000 (21:17 +0200)]
Update the default package URL
Change-Id: I1f82f195b5bbc511b54b0598cf55a2231ed20c42
Lionel Sambuc [Tue, 29 Jul 2014 19:07:39 +0000 (21:07 +0200)]
Remove old scripts to check against NBSD
As we have switched to a local git repository containing the NetBSD
reference, at specific points in time, the following scripts are not
anymore useful.
Change-Id: Iec0606a640a73e6ce80ecc5d9ac438daab9f2a1f
Lionel Sambuc [Tue, 29 Jul 2014 18:29:57 +0000 (20:29 +0200)]
Move all services to /service
This concerns all services, a.k.a drivers, filesystem drivers, network
(inet, lwip, uds) servers, and the system servers.
Change-Id: I626fd15c795e15af42df2d10d47fb4a703665d63
Lionel Sambuc [Tue, 29 Jul 2014 15:07:15 +0000 (17:07 +0200)]
Remove /multiboot
This is just a duplicate of /boot/.temp, and it is not used anymore.
Change-Id: I8a4d6e68829de3ff3628ff0fe15f6d1d0a6b128f
Lionel Sambuc [Mon, 28 Jul 2014 19:19:37 +0000 (21:19 +0200)]
New sources layout
Change-Id: Ic716f336b7071063997cf5b4dae6d50e0b4631e9
Lionel Sambuc [Mon, 28 Jul 2014 11:53:23 +0000 (13:53 +0200)]
Revert "bin/mv: Temporary fix"
This is no longer required as /bin/cp has been imported.
This reverts commit
e3257d3ff741480d640cefe2507a77e65322f40d .
Zachary Storer [Sun, 27 Jul 2014 12:19:54 +0000 (06:19 -0600)]
Import NetBSD cp command.
Change-Id: I61943a2ef6d5945b9e10e520e5ebf85e99ac668a
Zachary Storer [Sat, 26 Jul 2014 20:52:16 +0000 (14:52 -0600)]
Remove the minix 'cpdir' command alias.
Change-Id: If51dcc8cb2f46e375638f1e2e4e8baddb790ab2c
Zachary Storer [Tue, 22 Jul 2014 18:16:17 +0000 (12:16 -0600)]
Remove the minix 'clone' command alias.
Sky Liu [Sun, 27 Jul 2014 22:22:49 +0000 (07:22 +0900)]
importing shar from NetBSD
Ben Gras [Mon, 28 Jul 2014 11:32:51 +0000 (13:32 +0200)]
release script fixes
. we need libc++ in the base system
. big packages & sources don't fit on the cd any more
. the fetch scripts have to be triggered for some tools
Change-Id: Ife53c64fda0ed65b96fa8d6a0b0fee2c6a14d6d7
Lionel Sambuc [Mon, 28 Jul 2014 10:10:14 +0000 (12:10 +0200)]
Sorted ipc.h for easier navigation
Also removed unused macros "M1", "M3", and "M4"
Change-Id: Ib0a454589394ca97936c9d3f95a4fd4e7691a720
Lionel Sambuc [Mon, 28 Jul 2014 08:44:15 +0000 (10:44 +0200)]
Message type for COMMON_REQ_GCOV_DATA.
Change-Id: I97d31059990e33411a685d5d8191c728a02e7d0f
Lionel Sambuc [Mon, 28 Jul 2014 07:35:53 +0000 (09:35 +0200)]
remove "generic" messages m5, m8, m11
Lionel Sambuc [Mon, 28 Jul 2014 05:13:42 +0000 (07:13 +0200)]
Use one message type for all BDEV request.
There are missing field assignements, and/or messsages being re-used
without re-initializations, which allows for fields to be implicitly
forwarded.
This prevents me from creating per request message types, as I can't
spend currently any more time debugging this issue.
Lionel Sambuc [Fri, 25 Jul 2014 10:35:38 +0000 (12:35 +0200)]
fix for crosscompile with llvm and build libstdc++
Change-Id: I1da0b77214a2e128a2649d518e4cf8d23cf13bc0
Lionel Sambuc [Fri, 25 Jul 2014 18:39:06 +0000 (20:39 +0200)]
Message type for BDEV_REPLY.
Change-Id: I48ca5a4f77cc9e924e8aee2fe6c32e0da9b42560
Lionel Sambuc [Fri, 25 Jul 2014 17:53:10 +0000 (19:53 +0200)]
Message type for SYS_PROFBUF.
Change-Id: I10c1e878b0e3ff9bfc52709cc87dace632fa3e4f
Lionel Sambuc [Fri, 25 Jul 2014 17:34:11 +0000 (19:34 +0200)]
Message type for SYS_CPROF and PM_CPROF.
Change-Id: I2dc3d9d95c2a2b4c5fdbceae359b0be2bbdf9fb5
Lionel Sambuc [Fri, 25 Jul 2014 16:13:49 +0000 (18:13 +0200)]
Message type for SYS_SPROF and PM_SPROF.
Change-Id: I598f88af47737be0172236fa9ad24058b50d3942
Lionel Sambuc [Fri, 25 Jul 2014 14:35:26 +0000 (16:35 +0200)]
Message type for SYS_DIAGCTL.
Change-Id: Icdaa84847f8c75f5af6612dda3326f800166e0d7
Lionel Sambuc [Fri, 25 Jul 2014 14:08:01 +0000 (16:08 +0200)]
Message type for SIGS_SIGNAL_RECEIVED.
Change-Id: I5c13ff06e0203a98d4087829308d03020f302542
Lionel Sambuc [Fri, 25 Jul 2014 13:54:54 +0000 (15:54 +0200)]
Message type for SYS_READBIOS.
Change-Id: Id19f658f5eb5f350e3e19f9ce3f8ae80aea23c51
Lionel Sambuc [Fri, 25 Jul 2014 13:35:05 +0000 (15:35 +0200)]
Dropping unused INT86_REG86 macro
Change-Id: Ic7949339f192487fb9c6d2f6f62b91cc4858f9ad
Ben Gras [Sat, 26 Jul 2014 11:54:02 +0000 (13:54 +0200)]
custom message req & reply types for ds
Ben Gras [Sat, 26 Jul 2014 11:54:01 +0000 (13:54 +0200)]
custom types for RS_INIT, RS_UPDATE, and others
Ben Gras [Sat, 26 Jul 2014 11:54:00 +0000 (13:54 +0200)]
custom message types for safecopy calls
Ben Gras [Sat, 26 Jul 2014 11:53:59 +0000 (13:53 +0200)]
custom message type for VM_UNMAP_PHYS
Ben Gras [Sat, 26 Jul 2014 11:53:58 +0000 (13:53 +0200)]
custom message type for vm_map_phys
Ben Gras [Sat, 26 Jul 2014 11:53:57 +0000 (13:53 +0200)]
custom message type for VM_BRK
Ben Gras [Sat, 26 Jul 2014 11:53:56 +0000 (13:53 +0200)]
use custom mmap struct type directly
Ben Gras [Sat, 26 Jul 2014 11:53:55 +0000 (13:53 +0200)]
custom message type for SYS_DEVIO
Ben Gras [Sat, 26 Jul 2014 11:53:54 +0000 (13:53 +0200)]
custom message type for SEMOP
Ben Gras [Sat, 26 Jul 2014 11:53:53 +0000 (13:53 +0200)]
custom message type for SHMCTL, SEMCTL, SEMGET
Ben Gras [Sat, 26 Jul 2014 11:53:52 +0000 (13:53 +0200)]
custom messages for SHMAT, SHMDT
Ben Gras [Sat, 26 Jul 2014 11:53:51 +0000 (13:53 +0200)]
custom message for SHMGET
Ben Gras [Sat, 26 Jul 2014 11:53:50 +0000 (13:53 +0200)]
custom message for vm_query_exit
Ben Gras [Sat, 26 Jul 2014 11:53:49 +0000 (13:53 +0200)]
custom message for vm_update
Ben Gras [Sat, 26 Jul 2014 11:53:48 +0000 (13:53 +0200)]
custom message type for VM_INFO
Ben Gras [Sat, 26 Jul 2014 11:53:47 +0000 (13:53 +0200)]
custom message type for VM_QUERY_EXIT
Ben Gras [Sat, 26 Jul 2014 11:53:46 +0000 (13:53 +0200)]
custom message type for VM_GETREF
Ben Gras [Sat, 26 Jul 2014 11:53:45 +0000 (13:53 +0200)]
custom message type for VM_GETPHYS
Ben Gras [Sat, 26 Jul 2014 11:53:44 +0000 (13:53 +0200)]
custom message type for VM_SHM_UNMAP
Ben Gras [Sat, 26 Jul 2014 11:53:43 +0000 (13:53 +0200)]
custom message type for VM_REMAP, VM_REMAP_RO
Ben Gras [Tue, 22 Jul 2014 16:07:35 +0000 (18:07 +0200)]
empty Makefile
. needed to avoid a build problem on native minix under some
circumstances
stux [Fri, 11 Jul 2014 15:59:23 +0000 (10:59 -0500)]
Import NetBSD which and whereis commands.
Change-Id: Ide31b4cc52c64cbd424437f649674a460fb0a754
Ben Gras [Mon, 21 Jul 2014 16:34:01 +0000 (18:34 +0200)]
<sys/socket.h>: turn off MSG_NOSIGNAL
. this unimplemented flag causes runtime problems (ENOSYS on
send()) for e.g. libfetch when used
. restores functionality of pkg_add (remote), fetch
Lionel Sambuc [Wed, 16 Jul 2014 15:45:58 +0000 (17:45 +0200)]
bin/mv: Temporary fix
The current MInix cp commands doesn't support the option mv expects
to be able to give to it. This patch can be reverted as soon as cp
has been imported.
Change-Id: If4d805726b7bfe4cd9aa2d9603c388b1df467050
Ben Gras [Thu, 10 Jul 2014 19:07:43 +0000 (21:07 +0200)]
i386 rs232: do full write in out_int
. in kvm, this does the full output without truncating
and gets rid of the messy 'enough!' case
Cristiano Giuffrida [Wed, 16 Jul 2014 12:41:11 +0000 (14:41 +0200)]
llvm: Use mfs images for clientctl buildisk.
Cristiano Giuffrida [Wed, 16 Jul 2014 12:14:05 +0000 (14:14 +0200)]
kernel: Add bitcode support.
Cristiano Giuffrida [Tue, 15 Jul 2014 10:01:30 +0000 (12:01 +0200)]
llvm: Add SERIALOUT option to clientctl script.
Koustubha Bhat [Fri, 11 Jul 2014 10:22:11 +0000 (12:22 +0200)]
build.llvm: including configure.llvm.inc must be optional
Cristiano Giuffrida [Sun, 6 Jul 2014 08:50:39 +0000 (10:50 +0200)]
llvm: Use a separate common.overrides file for MINIX.
Cristiano Giuffrida [Sat, 28 Jun 2014 21:57:47 +0000 (23:57 +0200)]
llvm: Fix rc script.
Cristiano Giuffrida [Sat, 28 Jun 2014 16:31:13 +0000 (18:31 +0200)]
llvm: Add clientctl actions for external disk support.
Cristiano Giuffrida [Sat, 28 Jun 2014 16:23:56 +0000 (18:23 +0200)]
releasetools: Add rc.local support when building x86 images.