[Pkg-samba-maint] [samba] 03/04: Refresh patches
Mathieu Parent
sathieu at moszumanska.debian.org
Mon Oct 31 14:07:57 UTC 2016
This is an automated email from the git hooks/post-receive script.
sathieu pushed a commit to branch experimental
in repository samba.
commit d30c25aec47e6d9bfec29b284f8a73415f45ce39
Author: Mathieu Parent <math.parent at gmail.com>
Date: Mon Oct 31 15:04:24 2016 +0100
Refresh patches
---
VERSION | 2 +-
buildtools/wafsamba/samba_utils.py | 2 +-
buildtools/wafsamba/wafsamba.py | 3 +
buildtools/wafsamba/wscript | 1 -
ctdb/config/ctdb.service | 1 +
ctdb/wscript | 1 +
.../Add-documentation-to-systemd-Unit-files.patch | 2 +-
debian/patches/Fix_parallel_build.patch | 13 +-
.../bug_12283_segfault_tevent_internals.patch | 1597 -----
...il-out-of-stabilize-if-we-can-not-get-the.patch | 35 -
debian/patches/series | 2 -
debian/patches/usershare.patch | 2 +-
docs-xml/smbdotconf/misc/usersharemaxshares.xml | 2 +-
docs-xml/wscript_build | 2 +-
docs/manpages/net.8 | 4 +-
examples/LDAP/README | 3 +
lib/param/loadparm.c | 2 +
packaging/systemd/nmb.service | 5 +-
packaging/systemd/samba.service | 5 +-
packaging/systemd/smb.service | 5 +-
packaging/systemd/winbind.service | 5 +-
selftest/quick | 3 +-
source3/include/libsmbclient.h | 10 +
source3/include/local.h | 2 +-
source3/nmbd/nmbd_packets.c | 30 +-
source3/param/loadparm.c | 2 +-
source3/script/build_env.sh | 11 -
source4/heimdal/lib/wind/rfc3454.txt-table | 7074 ++++++++++++++++++++
source4/heimdal_build/wscript_build | 6 +-
source4/param/wscript_build | 5 +-
30 files changed, 7156 insertions(+), 1681 deletions(-)
diff --git a/VERSION b/VERSION
index 5a2d7c1..85f8812 100644
--- a/VERSION
+++ b/VERSION
@@ -123,5 +123,5 @@ SAMBA_VERSION_RELEASE_NICKNAME=
# -> "3.0.0rc2-VendorVersion" #
# #
########################################################
-SAMBA_VERSION_VENDOR_SUFFIX=
+SAMBA_VERSION_VENDOR_SUFFIX=Debian
SAMBA_VERSION_VENDOR_PATCH=
diff --git a/buildtools/wafsamba/samba_utils.py b/buildtools/wafsamba/samba_utils.py
index 49a8759..205bdc9 100644
--- a/buildtools/wafsamba/samba_utils.py
+++ b/buildtools/wafsamba/samba_utils.py
@@ -63,7 +63,7 @@ def install_rpath(target):
ret = set()
if bld.env.RPATH_ON_INSTALL:
ret.add(bld.EXPAND_VARIABLES(bld.env.LIBDIR))
- if bld.env.RPATH_ON_INSTALL_PRIVATE and needs_private_lib(bld, target):
+ if bld.env.RPATH_ON_INSTALL_PRIVATE:
ret.add(bld.EXPAND_VARIABLES(bld.env.PRIVATELIBDIR))
return list(ret)
diff --git a/buildtools/wafsamba/wafsamba.py b/buildtools/wafsamba/wafsamba.py
index 4a47dbf..4a502f2 100644
--- a/buildtools/wafsamba/wafsamba.py
+++ b/buildtools/wafsamba/wafsamba.py
@@ -232,6 +232,9 @@ def SAMBA_LIBRARY(bld, libname, source,
raise Utils.WafError("public library '%s' must have header files" %
libname)
+ if private_library and not vnum:
+ vnum = '0'
+
if bundled_name is not None:
pass
elif target_type == 'PYTHON' or realname or not private_library:
diff --git a/buildtools/wafsamba/wscript b/buildtools/wafsamba/wscript
index 8802e5a..ad5bb0c 100755
--- a/buildtools/wafsamba/wscript
+++ b/buildtools/wafsamba/wscript
@@ -303,7 +303,6 @@ def configure(conf):
conf.CHECK_COMMAND(['uname', '-a'],
msg='Checking build system',
- define='BUILD_SYSTEM',
on_target=False)
conf.CHECK_UNAME()
diff --git a/ctdb/config/ctdb.service b/ctdb/config/ctdb.service
index 63cdfa9..189f2f4 100644
--- a/ctdb/config/ctdb.service
+++ b/ctdb/config/ctdb.service
@@ -1,5 +1,6 @@
[Unit]
Description=CTDB
+Documentation=man:ctdbd(1) man:ctdb(7)
After=network-online.target time-sync.target
[Service]
diff --git a/ctdb/wscript b/ctdb/wscript
index 5675849..b5543ec 100644
--- a/ctdb/wscript
+++ b/ctdb/wscript
@@ -230,6 +230,7 @@ def configure(conf):
conf.DEFINE('SAMBA_UTIL_CORE_ONLY', 1, add_to_cflags=True)
conf.SAMBA_CONFIG_H()
+ conf.CHECK_XSLTPROC_MANPAGES()
if 'XSLTPROC_MANPAGES' in conf.env and conf.env['XSLTPROC_MANPAGES']:
conf.env.ctdb_generate_manpages = True
else:
diff --git a/debian/patches/Add-documentation-to-systemd-Unit-files.patch b/debian/patches/Add-documentation-to-systemd-Unit-files.patch
index 481629c..aa66d5a 100644
--- a/debian/patches/Add-documentation-to-systemd-Unit-files.patch
+++ b/debian/patches/Add-documentation-to-systemd-Unit-files.patch
@@ -19,7 +19,7 @@ Index: samba/ctdb/config/ctdb.service
[Unit]
Description=CTDB
+Documentation=man:ctdbd(1) man:ctdb(7)
- After=network.target
+ After=network-online.target time-sync.target
[Service]
Index: samba/packaging/systemd/nmb.service
diff --git a/debian/patches/Fix_parallel_build.patch b/debian/patches/Fix_parallel_build.patch
index fd04a5e..79405bf 100644
--- a/debian/patches/Fix_parallel_build.patch
+++ b/debian/patches/Fix_parallel_build.patch
@@ -11,11 +11,11 @@ Thanks HW42 on IRC
ctdb/wscript | 1 +
1 file changed, 1 insertion(+)
-diff --git a/ctdb/wscript b/ctdb/wscript
-index 618dd29..6dbff3d 100755
---- a/ctdb/wscript
-+++ b/ctdb/wscript
-@@ -228,6 +228,7 @@ def configure(conf):
+Index: samba/ctdb/wscript
+===================================================================
+--- samba.orig/ctdb/wscript
++++ samba/ctdb/wscript
+@@ -230,6 +230,7 @@ def configure(conf):
conf.DEFINE('SAMBA_UTIL_CORE_ONLY', 1, add_to_cflags=True)
conf.SAMBA_CONFIG_H()
@@ -23,6 +23,3 @@ index 618dd29..6dbff3d 100755
if 'XSLTPROC_MANPAGES' in conf.env and conf.env['XSLTPROC_MANPAGES']:
conf.env.ctdb_generate_manpages = True
else:
---
-2.9.3
-
diff --git a/debian/patches/bug_12283_segfault_tevent_internals.patch b/debian/patches/bug_12283_segfault_tevent_internals.patch
deleted file mode 100644
index 6f1e879..0000000
--- a/debian/patches/bug_12283_segfault_tevent_internals.patch
+++ /dev/null
@@ -1,1597 +0,0 @@
-From e13b5ac52204bb8fb5569162d64a0e02111c86de Mon Sep 17 00:00:00 2001
-From: Stefan Metzmacher <metze at samba.org>
-Date: Wed, 27 Feb 2013 09:29:47 +0100
-Subject: [PATCH 01/12] s3:nmbd: fix talloc_zero_array() check in
- nmbd_packets.c
-
-Signed-off-by: Stefan Metzmacher <metze at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-
-Autobuild-User(master): Volker Lendecke <vl at samba.org>
-Autobuild-Date(master): Fri Sep 23 18:08:21 CEST 2016 on sn-devel-144
-
-BUG: https://bugzilla.samba.org/show_bug.cgi?id=12283
-
-(cherry picked from commit 4470f01605a2f09b054550ee5a8f8d3b4ebc2098)
----
- source3/nmbd/nmbd_packets.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
-index b608354..c9a2dc7 100644
---- a/source3/nmbd/nmbd_packets.c
-+++ b/source3/nmbd/nmbd_packets.c
-@@ -1724,7 +1724,7 @@ static bool create_listen_pollfds(struct pollfd **pfds,
- }
-
- attrs = talloc_array(NULL, struct socket_attributes, count);
-- if (fds == NULL) {
-+ if (attrs == NULL) {
- DEBUG(1, ("create_listen_pollfds: malloc fail for attrs. "
- "size %d\n", count));
- TALLOC_FREE(fds);
---
-1.9.1
-
-
-From 5822d51b20780248082b9885af55d01250a09d48 Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 12:05:59 -0700
-Subject: [PATCH 02/12] s3: nmbd: Add fd, triggered elements to struct
- socket_attributes.
-
-Zero the attrs array on allocation, and mirror the fd's.
-
-This will allow us to eventually remove source3/lib/events.c
-dependency and make nmbd purely tevent based.
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(cherry picked from commit d8ade0730797df22bfe28847e034eb6d116b0e00)
----
- source3/nmbd/nmbd_packets.c | 10 +++++++++-
- 1 file changed, 9 insertions(+), 1 deletion(-)
-
-diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
-index c9a2dc7..619cc9a 100644
---- a/source3/nmbd/nmbd_packets.c
-+++ b/source3/nmbd/nmbd_packets.c
-@@ -1683,6 +1683,8 @@ on subnet %s\n", rrec->response_id, inet_ntoa(rrec->packet->ip), subrec->subnet_
- struct socket_attributes {
- enum packet_type type;
- bool broadcast;
-+ int fd;
-+ bool triggered;
- };
-
- static bool create_listen_pollfds(struct pollfd **pfds,
-@@ -1723,7 +1725,7 @@ static bool create_listen_pollfds(struct pollfd **pfds,
- return true;
- }
-
-- attrs = talloc_array(NULL, struct socket_attributes, count);
-+ attrs = talloc_zero_array(NULL, struct socket_attributes, count);
- if (attrs == NULL) {
- DEBUG(1, ("create_listen_pollfds: malloc fail for attrs. "
- "size %d\n", count));
-@@ -1734,11 +1736,13 @@ static bool create_listen_pollfds(struct pollfd **pfds,
- num = 0;
-
- fds[num].fd = ClientNMB;
-+ attrs[num].fd = ClientNMB;
- attrs[num].type = NMB_PACKET;
- attrs[num].broadcast = false;
- num += 1;
-
- fds[num].fd = ClientDGRAM;
-+ attrs[num].fd = ClientDGRAM;
- attrs[num].type = DGRAM_PACKET;
- attrs[num].broadcast = false;
- num += 1;
-@@ -1747,6 +1751,7 @@ static bool create_listen_pollfds(struct pollfd **pfds,
-
- if (subrec->nmb_sock != -1) {
- fds[num].fd = subrec->nmb_sock;
-+ attrs[num].fd = subrec->nmb_sock;
- attrs[num].type = NMB_PACKET;
- attrs[num].broadcast = false;
- num += 1;
-@@ -1754,6 +1759,7 @@ static bool create_listen_pollfds(struct pollfd **pfds,
-
- if (subrec->nmb_bcast != -1) {
- fds[num].fd = subrec->nmb_bcast;
-+ attrs[num].fd = subrec->nmb_bcast;
- attrs[num].type = NMB_PACKET;
- attrs[num].broadcast = true;
- num += 1;
-@@ -1761,6 +1767,7 @@ static bool create_listen_pollfds(struct pollfd **pfds,
-
- if (subrec->dgram_sock != -1) {
- fds[num].fd = subrec->dgram_sock;
-+ attrs[num].fd = subrec->dgram_sock;
- attrs[num].type = DGRAM_PACKET;
- attrs[num].broadcast = false;
- num += 1;
-@@ -1768,6 +1775,7 @@ static bool create_listen_pollfds(struct pollfd **pfds,
-
- if (subrec->dgram_bcast != -1) {
- fds[num].fd = subrec->dgram_bcast;
-+ attrs[num].fd = subrec->dgram_bcast;
- attrs[num].type = DGRAM_PACKET;
- attrs[num].broadcast = true;
- num += 1;
---
-1.9.1
-
-
-From ce0a36819b6d1fcf6c97a004227bdcb4a53143bc Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 12:12:43 -0700
-Subject: [PATCH 03/12] s3: nmbd: Ensure attrs array mirrors fd's array for
- dns.
-
-This will allow us to eventually remove source3/lib/events.c
-dependency and make nmbd purely tevent based.
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(cherry picked from commit 7f0717e751930cd5da029c1852ff9f61f95e40b7)
----
- source3/nmbd/nmbd_packets.c | 15 +++++++++++++++
- 1 file changed, 15 insertions(+)
-
-diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
-index 619cc9a..2648679 100644
---- a/source3/nmbd/nmbd_packets.c
-+++ b/source3/nmbd/nmbd_packets.c
-@@ -1919,8 +1919,23 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- if (fds == NULL) {
- return true;
- }
-+ attrs = talloc_realloc(NULL,
-+ attrs,
-+ struct socket_attributes,
-+ num_sockets + 1);
-+ if (attrs == NULL) {
-+ TALLOC_FREE(fds);
-+ return true;
-+ }
- dns_pollidx = num_sockets;
- fds[num_sockets].fd = dns_fd;
-+ attrs[dns_pollidx].fd = dns_fd;
-+ /*
-+ * dummy values, we only need
-+ * fd and triggered.
-+ */
-+ attrs[dns_pollidx].type = NMB_PACKET;
-+ attrs[dns_pollidx].broadcast = false;
- num_sockets += 1;
- }
- #endif
---
-1.9.1
-
-
-From 2d8baf18040b67f2d4504bded60cf03f65072cc5 Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 12:16:58 -0700
-Subject: [PATCH 04/12] s3: nmbd: Now attrs array mirrors fd's array use it in
- preference.
-
-This will allow us to eventually remove source3/lib/events.c
-dependency and make nmbd purely tevent based.
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(cherry picked from commit 376e04656b6755d1a182430b39273a93495d00b2)
----
- source3/nmbd/nmbd_packets.c | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
-diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
-index 2648679..7321922 100644
---- a/source3/nmbd/nmbd_packets.c
-+++ b/source3/nmbd/nmbd_packets.c
-@@ -2004,7 +2004,7 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- client_port = DGRAM_PORT;
- }
-
-- packet = read_packet(fds[i].fd, packet_type);
-+ packet = read_packet(attrs[i].fd, packet_type);
- if (!packet) {
- continue;
- }
-@@ -2014,7 +2014,7 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- * only is set then check it came from one of our local nets.
- */
- if (lp_bind_interfaces_only() &&
-- (fds[i].fd == client_fd) &&
-+ (attrs[i].fd == client_fd) &&
- (!is_local_net_v4(packet->ip))) {
- DEBUG(7,("discarding %s packet sent to broadcast socket from %s:%d\n",
- packet_name, inet_ntoa(packet->ip), packet->port));
-@@ -2053,10 +2053,10 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
-
- if (attrs[i].broadcast) {
- /* this is a broadcast socket */
-- packet->send_fd = fds[i-1].fd;
-+ packet->send_fd = attrs[i-1].fd;
- } else {
- /* this is already a unicast socket */
-- packet->send_fd = fds[i].fd;
-+ packet->send_fd = attrs[i].fd;
- }
-
- queue_packet(packet);
---
-1.9.1
-
-
-From 6ad7738fd892b2edd75dc699e962dd557ebcf1b2 Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 12:18:37 -0700
-Subject: [PATCH 05/12] s3: nmbd: Add (currently unused) timeout and fd
- handlers.
-
-This will allow us to eventually remove source3/lib/events.c
-dependency and make nmbd purely tevent based.
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(cherry picked from commit cca25c8f75147873280464eaf2699ff449f609ad)
----
- source3/nmbd/nmbd_packets.c | 26 ++++++++++++++++++++++++++
- 1 file changed, 26 insertions(+)
-
-diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
-index 7321922..caef1db 100644
---- a/source3/nmbd/nmbd_packets.c
-+++ b/source3/nmbd/nmbd_packets.c
-@@ -1872,6 +1872,32 @@ static void free_processed_packet_list(struct processed_packet **pp_processed_pa
- }
-
- /****************************************************************************
-+ Timeout callback - just notice we timed out.
-+***************************************************************************/
-+
-+static void nmbd_timeout_handler(struct tevent_context *ev,
-+ struct tevent_timer *te,
-+ struct timeval current_time,
-+ void *private_data)
-+{
-+ bool *got_timeout = private_data;
-+ *got_timeout = true;
-+}
-+
-+/****************************************************************************
-+ fd callback - remember the fd that triggered.
-+***************************************************************************/
-+
-+static void nmbd_fd_handler(struct tevent_context *ev,
-+ struct tevent_fd *fde,
-+ uint16_t flags,
-+ void *private_data)
-+{
-+ struct socket_attributes *attr = private_data;
-+ attr->triggered = true;
-+}
-+
-+/****************************************************************************
- Listens for NMB or DGRAM packets, and queues them.
- return True if the socket is dead
- ***************************************************************************/
---
-1.9.1
-
-
-From 01573b2d214a20819226908f3e3653a513e78c11 Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 12:22:53 -0700
-Subject: [PATCH 06/12] s3: nmbd: Add a talloc_stackframe().
-
-We will use this to create real tevent timer and fd
-events.
-
-This will allow us to eventually remove source3/lib/events.c
-dependency and make nmbd purely tevent based.
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(cherry picked from commit 36b67729a6fc8518da71944db3fac6d9236b9348)
----
- source3/nmbd/nmbd_packets.c | 9 +++++++++
- 1 file changed, 9 insertions(+)
-
-diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
-index caef1db..c0c4925 100644
---- a/source3/nmbd/nmbd_packets.c
-+++ b/source3/nmbd/nmbd_packets.c
-@@ -1917,10 +1917,12 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- int dns_pollidx = -1;
- #endif
- struct processed_packet *processed_packet_list = NULL;
-+ TALLOC_CTX *frame = talloc_stackframe();
-
- if ((fds == NULL) || rescan_listen_set) {
- if (create_listen_pollfds(&fds, &attrs, &listen_number)) {
- DEBUG(0,("listen_for_packets: Fatal error. unable to create listen set. Exiting.\n"));
-+ TALLOC_FREE(frame);
- return True;
- }
- rescan_listen_set = False;
-@@ -1934,6 +1936,7 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
-
- fds = talloc_realloc(NULL, fds, struct pollfd, listen_number);
- if (fds == NULL) {
-+ TALLOC_FREE(frame);
- return true;
- }
- num_sockets = listen_number;
-@@ -1943,6 +1946,7 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- if (dns_fd != -1) {
- fds = talloc_realloc(NULL, fds, struct pollfd, num_sockets+1);
- if (fds == NULL) {
-+ TALLOC_FREE(frame);
- return true;
- }
- attrs = talloc_realloc(NULL,
-@@ -1951,6 +1955,7 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- num_sockets + 1);
- if (attrs == NULL) {
- TALLOC_FREE(fds);
-+ TALLOC_FREE(frame);
- return true;
- }
- dns_pollidx = num_sockets;
-@@ -1972,6 +1977,7 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
-
- /* Process a signal and timer events now... */
- if (run_events_poll(nmbd_event_context(), 0, NULL, 0)) {
-+ TALLOC_FREE(frame);
- return False;
- }
-
-@@ -1991,10 +1997,12 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- pollrtn = poll(fds, num_sockets, timeout);
-
- if (run_events_poll(nmbd_event_context(), pollrtn, fds, num_sockets)) {
-+ TALLOC_FREE(frame);
- return False;
- }
-
- if (pollrtn == -1) {
-+ TALLOC_FREE(frame);
- return False;
- }
-
-@@ -2089,6 +2097,7 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- }
-
- free_processed_packet_list(&processed_packet_list);
-+ TALLOC_FREE(frame);
- return False;
- }
-
---
-1.9.1
-
-
-From 0a9d66eda6e3dd65ff669355081fc60f420968f3 Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 12:31:00 -0700
-Subject: [PATCH 07/12] s3: nmbd: Change over to using tevent functions from
- direct poll.
-
-This will allow us to eventually remove source3/lib/events.c
-dependency and make nmbd purely tevent based.
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(cherry picked from commit b857bf9b3fa3a836647edc40ead92db7b782d367)
----
- source3/nmbd/nmbd_packets.c | 58 +++++++++++++++++++++++++++++----------------
- 1 file changed, 38 insertions(+), 20 deletions(-)
-
-diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
-index c0c4925..3e94e6e 100644
---- a/source3/nmbd/nmbd_packets.c
-+++ b/source3/nmbd/nmbd_packets.c
-@@ -1909,14 +1909,16 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- static int listen_number = 0;
- int num_sockets;
- int i;
-+ int loop_rtn;
-+ int timeout_secs;
-
-- int pollrtn;
-- int timeout;
- #ifndef SYNC_DNS
- int dns_fd;
- int dns_pollidx = -1;
- #endif
- struct processed_packet *processed_packet_list = NULL;
-+ struct tevent_timer *te = NULL;
-+ bool got_timeout = false;
- TALLOC_CTX *frame = talloc_stackframe();
-
- if ((fds == NULL) || rescan_listen_set) {
-@@ -1972,13 +1974,17 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- #endif
-
- for (i=0; i<num_sockets; i++) {
-- fds[i].events = POLLIN|POLLHUP;
-- }
--
-- /* Process a signal and timer events now... */
-- if (run_events_poll(nmbd_event_context(), 0, NULL, 0)) {
-- TALLOC_FREE(frame);
-- return False;
-+ struct tevent_fd *tfd = tevent_add_fd(nmbd_event_context(),
-+ frame,
-+ attrs[i].fd,
-+ TEVENT_FD_READ,
-+ nmbd_fd_handler,
-+ &attrs[i]);
-+ if (tfd == NULL) {
-+ TALLOC_FREE(frame);
-+ return true;
-+ }
-+ attrs[i].triggered = false;
- }
-
- /*
-@@ -1988,28 +1994,40 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- * the time we are expecting the next netbios packet.
- */
-
-- timeout = ((run_election||num_response_packets)
-- ? 1 : NMBD_SELECT_LOOP) * 1000;
-+ if (run_election||num_response_packets) {
-+ timeout_secs = 1;
-+ } else {
-+ timeout_secs = NMBD_SELECT_LOOP;
-+ }
-
-- event_add_to_poll_args(nmbd_event_context(), NULL,
-- &fds, &num_sockets, &timeout);
-+ te = tevent_add_timer(nmbd_event_context(),
-+ frame,
-+ tevent_timeval_current_ofs(timeout_secs, 0),
-+ nmbd_timeout_handler,
-+ &got_timeout);
-+ if (te == NULL) {
-+ TALLOC_FREE(frame);
-+ return true;
-+ }
-
-- pollrtn = poll(fds, num_sockets, timeout);
-+ loop_rtn = tevent_loop_once(nmbd_event_context());
-
-- if (run_events_poll(nmbd_event_context(), pollrtn, fds, num_sockets)) {
-+ if (loop_rtn == -1) {
- TALLOC_FREE(frame);
-- return False;
-+ return true;
- }
-
-- if (pollrtn == -1) {
-+ if (got_timeout) {
- TALLOC_FREE(frame);
-- return False;
-+ return false;
- }
-
- #ifndef SYNC_DNS
- if ((dns_fd != -1) && (dns_pollidx != -1) &&
-- (fds[dns_pollidx].revents & (POLLIN|POLLHUP|POLLERR))) {
-+ attrs[dns_pollidx].triggered){
- run_dns_queue(msg);
-+ TALLOC_FREE(frame);
-+ return false;
- }
- #endif
-
-@@ -2020,7 +2038,7 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- int client_fd;
- int client_port;
-
-- if ((fds[i].revents & (POLLIN|POLLHUP|POLLERR)) == 0) {
-+ if (!attrs[i].triggered) {
- continue;
- }
-
---
-1.9.1
-
-
-From 99f98b3b484d34294c09e127d14191f7d069932a Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 12:37:52 -0700
-Subject: [PATCH 08/12] s3: nmbd: Final changeover to stock tevent for nmbd.
-
-Removes unused references to fds array used for (removed)
-poll call. Renames create_listen_pollfds() to
-create_listen_array().
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(cherry picked from commit 6e8bd13660d7795df429dbf852345124db38ea96)
----
- source3/nmbd/nmbd_packets.c | 46 ++++-----------------------------------------
- 1 file changed, 4 insertions(+), 42 deletions(-)
-
-diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
-index 3e94e6e..de5ae1e 100644
---- a/source3/nmbd/nmbd_packets.c
-+++ b/source3/nmbd/nmbd_packets.c
-@@ -1687,14 +1687,12 @@ struct socket_attributes {
- bool triggered;
- };
-
--static bool create_listen_pollfds(struct pollfd **pfds,
-- struct socket_attributes **pattrs,
-+static bool create_listen_array(struct socket_attributes **pattrs,
- int *pnum_sockets)
- {
- struct subnet_record *subrec = NULL;
- int count = 0;
- int num = 0;
-- struct pollfd *fds;
- struct socket_attributes *attrs;
-
- /* The ClientNMB and ClientDGRAM sockets */
-@@ -1718,30 +1716,20 @@ static bool create_listen_pollfds(struct pollfd **pfds,
- }
- }
-
-- fds = talloc_zero_array(NULL, struct pollfd, count);
-- if (fds == NULL) {
-- DEBUG(1, ("create_listen_pollfds: malloc fail for fds. "
-- "size %d\n", count));
-- return true;
-- }
--
- attrs = talloc_zero_array(NULL, struct socket_attributes, count);
- if (attrs == NULL) {
-- DEBUG(1, ("create_listen_pollfds: malloc fail for attrs. "
-+ DEBUG(1, ("talloc fail for attrs. "
- "size %d\n", count));
-- TALLOC_FREE(fds);
- return true;
- }
-
- num = 0;
-
-- fds[num].fd = ClientNMB;
- attrs[num].fd = ClientNMB;
- attrs[num].type = NMB_PACKET;
- attrs[num].broadcast = false;
- num += 1;
-
-- fds[num].fd = ClientDGRAM;
- attrs[num].fd = ClientDGRAM;
- attrs[num].type = DGRAM_PACKET;
- attrs[num].broadcast = false;
-@@ -1750,7 +1738,6 @@ static bool create_listen_pollfds(struct pollfd **pfds,
- for (subrec = FIRST_SUBNET; subrec; subrec = NEXT_SUBNET_EXCLUDING_UNICAST(subrec)) {
-
- if (subrec->nmb_sock != -1) {
-- fds[num].fd = subrec->nmb_sock;
- attrs[num].fd = subrec->nmb_sock;
- attrs[num].type = NMB_PACKET;
- attrs[num].broadcast = false;
-@@ -1758,7 +1745,6 @@ static bool create_listen_pollfds(struct pollfd **pfds,
- }
-
- if (subrec->nmb_bcast != -1) {
-- fds[num].fd = subrec->nmb_bcast;
- attrs[num].fd = subrec->nmb_bcast;
- attrs[num].type = NMB_PACKET;
- attrs[num].broadcast = true;
-@@ -1766,7 +1752,6 @@ static bool create_listen_pollfds(struct pollfd **pfds,
- }
-
- if (subrec->dgram_sock != -1) {
-- fds[num].fd = subrec->dgram_sock;
- attrs[num].fd = subrec->dgram_sock;
- attrs[num].type = DGRAM_PACKET;
- attrs[num].broadcast = false;
-@@ -1774,7 +1759,6 @@ static bool create_listen_pollfds(struct pollfd **pfds,
- }
-
- if (subrec->dgram_bcast != -1) {
-- fds[num].fd = subrec->dgram_bcast;
- attrs[num].fd = subrec->dgram_bcast;
- attrs[num].type = DGRAM_PACKET;
- attrs[num].broadcast = true;
-@@ -1782,9 +1766,6 @@ static bool create_listen_pollfds(struct pollfd **pfds,
- }
- }
-
-- TALLOC_FREE(*pfds);
-- *pfds = fds;
--
- TALLOC_FREE(*pattrs);
- *pattrs = attrs;
-
-@@ -1904,7 +1885,6 @@ static void nmbd_fd_handler(struct tevent_context *ev,
-
- bool listen_for_packets(struct messaging_context *msg, bool run_election)
- {
-- static struct pollfd *fds = NULL;
- static struct socket_attributes *attrs = NULL;
- static int listen_number = 0;
- int num_sockets;
-@@ -1921,8 +1901,8 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- bool got_timeout = false;
- TALLOC_CTX *frame = talloc_stackframe();
-
-- if ((fds == NULL) || rescan_listen_set) {
-- if (create_listen_pollfds(&fds, &attrs, &listen_number)) {
-+ if ((attrs == NULL) || rescan_listen_set) {
-+ if (create_listen_array(&attrs, &listen_number)) {
- DEBUG(0,("listen_for_packets: Fatal error. unable to create listen set. Exiting.\n"));
- TALLOC_FREE(frame);
- return True;
-@@ -1930,38 +1910,20 @@ bool listen_for_packets(struct messaging_context *msg, bool run_election)
- rescan_listen_set = False;
- }
-
-- /*
-- * "fds" can be enlarged by event_add_to_poll_args
-- * below. Shrink it again to what was given to us by
-- * create_listen_pollfds.
-- */
--
-- fds = talloc_realloc(NULL, fds, struct pollfd, listen_number);
-- if (fds == NULL) {
-- TALLOC_FREE(frame);
-- return true;
-- }
- num_sockets = listen_number;
-
- #ifndef SYNC_DNS
- dns_fd = asyncdns_fd();
- if (dns_fd != -1) {
-- fds = talloc_realloc(NULL, fds, struct pollfd, num_sockets+1);
-- if (fds == NULL) {
-- TALLOC_FREE(frame);
-- return true;
-- }
- attrs = talloc_realloc(NULL,
- attrs,
- struct socket_attributes,
- num_sockets + 1);
- if (attrs == NULL) {
-- TALLOC_FREE(fds);
- TALLOC_FREE(frame);
- return true;
- }
- dns_pollidx = num_sockets;
-- fds[num_sockets].fd = dns_fd;
- attrs[dns_pollidx].fd = dns_fd;
- /*
- * dummy values, we only need
---
-1.9.1
-
-
-From 9c5022ebec416cdfaa5c94097fea2eaf9b50d24a Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 19:07:39 -0700
-Subject: [PATCH 09/12] s3: winbind: Remove dump_event_list() calls.
-
-If needed we can add this into actual tevent.
-
-Preparing to remove source3/lib/events.c
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(cherry picked from commit 72785309aa2d1bed7abc6dd7c6475ff0f78411da)
----
- source3/winbindd/winbindd_dual.c | 5 ++---
- 1 file changed, 2 insertions(+), 3 deletions(-)
-
-diff --git a/source3/winbindd/winbindd_dual.c b/source3/winbindd/winbindd_dual.c
-index 17a89a7..c16b94e 100644
---- a/source3/winbindd/winbindd_dual.c
-+++ b/source3/winbindd/winbindd_dual.c
-@@ -835,7 +835,7 @@ void winbind_msg_dump_event_list(struct messaging_context *msg_ctx,
-
- DEBUG(10,("winbind_msg_dump_event_list received\n"));
-
-- dump_event_list(winbind_event_context());
-+ DBG_WARNING("dump event list no longer implemented\n");
-
- for (child = winbindd_children; child != NULL; child = child->next) {
-
-@@ -1240,8 +1240,7 @@ static void child_msg_dump_event_list(struct messaging_context *msg,
- DATA_BLOB *data)
- {
- DEBUG(5,("child_msg_dump_event_list received\n"));
--
-- dump_event_list(winbind_event_context());
-+ DBG_WARNING("dump_event_list no longer implemented\n");
- }
-
- NTSTATUS winbindd_reinit_after_fork(const struct winbindd_child *myself,
---
-1.9.1
-
-
-From 74deb057bffa9ab18d22862b3bbd159c92a849dc Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 19:11:17 -0700
-Subject: [PATCH 10/12] s3: server: s3_tevent_context_init() ->
- samba_tevent_context_init()
-
-We can now remove source3/lib/events.c
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(cherry picked from commit fbfea52e1ce8f22d8d020a2bf3aebd1bc69faceb)
----
- source3/lib/server_contexts.c | 2 +-
- source3/rpc_server/rpc_ncacn_np.c | 8 ++++----
- source3/smbd/process.c | 4 ++--
- source3/smbd/server.c | 1 -
- 4 files changed, 7 insertions(+), 8 deletions(-)
-
-diff --git a/source3/lib/server_contexts.c b/source3/lib/server_contexts.c
-index d49e334..50072e6 100644
---- a/source3/lib/server_contexts.c
-+++ b/source3/lib/server_contexts.c
-@@ -31,7 +31,7 @@ struct tevent_context *server_event_context(void)
- * autofree context, to avoid side effects in forked
- * children exiting.
- */
-- server_event_ctx = s3_tevent_context_init(NULL);
-+ server_event_ctx = samba_tevent_context_init(NULL);
- }
- if (!server_event_ctx) {
- smb_panic("Could not init server's event context");
-diff --git a/source3/rpc_server/rpc_ncacn_np.c b/source3/rpc_server/rpc_ncacn_np.c
-index f9c73de..083cbbe 100644
---- a/source3/rpc_server/rpc_ncacn_np.c
-+++ b/source3/rpc_server/rpc_ncacn_np.c
-@@ -708,9 +708,9 @@ NTSTATUS make_external_rpc_pipe(TALLOC_CTX *mem_ctx,
- goto out;
- }
-
-- ev_ctx = s3_tevent_context_init(tmp_ctx);
-+ ev_ctx = samba_tevent_context_init(tmp_ctx);
- if (ev_ctx == NULL) {
-- DEBUG(0, ("s3_tevent_context_init failed\n"));
-+ DEBUG(0, ("samba_tevent_context_init failed\n"));
- status = NT_STATUS_NO_MEMORY;
- goto out;
- }
-@@ -816,9 +816,9 @@ struct np_proxy_state *make_external_rpc_pipe_p(TALLOC_CTX *mem_ctx,
- goto fail;
- }
-
-- ev = s3_tevent_context_init(talloc_tos());
-+ ev = samba_tevent_context_init(talloc_tos());
- if (ev == NULL) {
-- DEBUG(0, ("s3_tevent_context_init failed\n"));
-+ DEBUG(0, ("samba_tevent_context_init failed\n"));
- goto fail;
- }
-
-diff --git a/source3/smbd/process.c b/source3/smbd/process.c
-index e3c32f9..8f097ec 100644
---- a/source3/smbd/process.c
-+++ b/source3/smbd/process.c
-@@ -3224,9 +3224,9 @@ static void smbd_echo_loop(struct smbXsrv_connection *xconn,
- }
- state->xconn = xconn;
- state->parent_pipe = parent_pipe;
-- state->ev = s3_tevent_context_init(state);
-+ state->ev = samba_tevent_context_init(state);
- if (state->ev == NULL) {
-- DEBUG(1, ("tevent_context_init failed\n"));
-+ DEBUG(1, ("samba_tevent_context_init failed\n"));
- TALLOC_FREE(state);
- return;
- }
-diff --git a/source3/smbd/server.c b/source3/smbd/server.c
-index 97c0fdc..6d0c664 100644
---- a/source3/smbd/server.c
-+++ b/source3/smbd/server.c
-@@ -1670,7 +1670,6 @@ extern void build_options(bool screen);
- * Initialize the event context. The event context needs to be
- * initialized before the messaging context, cause the messaging
- * context holds an event context.
-- * FIXME: This should be s3_tevent_context_init()
- */
- ev_ctx = server_event_context();
- if (ev_ctx == NULL) {
---
-1.9.1
-
-
-From bc6a9794fe2b7fb95423c99174f5e31df9be35ee Mon Sep 17 00:00:00 2001
-From: Jeremy Allison <jra at samba.org>
-Date: Fri, 23 Sep 2016 20:00:33 -0700
-Subject: [PATCH 11/12] s3: events. Move events.c to util_event.c
-
-Remove all tevent internal code.
-
-Everything is now stock tevent.
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Jeremy Allison <jra at samba.org>
-Reviewed-by: Volker Lendecke <vl at samba.org>
-(similar to commit 4ed790ebbf474c4e4ef9b4f0f3aeca65118796df)
----
- source3/include/event.h | 42 ----
- source3/include/includes.h | 4 +-
- source3/include/util_event.h | 28 +++
- source3/lib/events.c | 486 -------------------------------------------
- source3/lib/util_event.c | 101 +++++++++
- source3/wscript_build | 2 +-
- 6 files changed, 132 insertions(+), 531 deletions(-)
- delete mode 100644 source3/include/event.h
- create mode 100644 source3/include/util_event.h
- delete mode 100644 source3/lib/events.c
- create mode 100644 source3/lib/util_event.c
-
-diff --git a/source3/include/event.h b/source3/include/event.h
-deleted file mode 100644
-index 108026e..0000000
---- a/source3/include/event.h
-+++ /dev/null
-@@ -1,42 +0,0 @@
--/*
-- Unix SMB/CIFS implementation.
-- event handling
-- Copyright (C) Andrew Tridgell 1992-1998
-- Copyright (C) Volker Lendecke 2005-2007
--
-- This program is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
--*/
--
--#include <tevent.h>
--
--/* The following definitions come from lib/events.c */
--struct pollfd;
--struct timeval *get_timed_events_timeout(struct tevent_context *event_ctx,
-- struct timeval *to_ret);
--void dump_event_list(struct tevent_context *event_ctx);
--struct tevent_context *s3_tevent_context_init(TALLOC_CTX *mem_ctx);
--
--bool event_add_to_poll_args(struct tevent_context *ev, TALLOC_CTX *mem_ctx,
-- struct pollfd **pfds, int *num_pfds,
-- int *ptimeout);
--bool run_events_poll(struct tevent_context *ev, int pollrtn,
-- struct pollfd *pfds, int num_pfds);
--
--struct idle_event *event_add_idle(struct tevent_context *event_ctx,
-- TALLOC_CTX *mem_ctx,
-- struct timeval interval,
-- const char *name,
-- bool (*handler)(const struct timeval *now,
-- void *private_data),
-- void *private_data);
-diff --git a/source3/include/includes.h b/source3/include/includes.h
-index 81bba40..234a564 100644
---- a/source3/include/includes.h
-+++ b/source3/include/includes.h
-@@ -310,8 +310,8 @@ typedef char fstring[FSTRING_LEN];
- #include "../lib/util/dlinklist.h"
-
- #include <talloc.h>
--
--#include "event.h"
-+#include <tevent.h>
-+#include "util_event.h"
-
- #include "../lib/util/data_blob.h"
- #include "../lib/util/time.h"
-diff --git a/source3/include/util_event.h b/source3/include/util_event.h
-new file mode 100644
-index 0000000..df608a1
---- /dev/null
-+++ b/source3/include/util_event.h
-@@ -0,0 +1,28 @@
-+/*
-+ Unix SMB/CIFS implementation.
-+ event handling
-+ Copyright (C) Andrew Tridgell 1992-1998
-+ Copyright (C) Volker Lendecke 2005-2007
-+
-+ This program is free software; you can redistribute it and/or modify
-+ it under the terms of the GNU General Public License as published by
-+ the Free Software Foundation; either version 3 of the License, or
-+ (at your option) any later version.
-+
-+ This program is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ GNU General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with this program. If not, see <http://www.gnu.org/licenses/>.
-+*/
-+
-+/* The following definitions come from lib/util_event.c */
-+struct idle_event *event_add_idle(struct tevent_context *event_ctx,
-+ TALLOC_CTX *mem_ctx,
-+ struct timeval interval,
-+ const char *name,
-+ bool (*handler)(const struct timeval *now,
-+ void *private_data),
-+ void *private_data);
-diff --git a/source3/lib/events.c b/source3/lib/events.c
-deleted file mode 100644
-index 2e862ca..0000000
---- a/source3/lib/events.c
-+++ /dev/null
-@@ -1,486 +0,0 @@
--/*
-- Unix SMB/CIFS implementation.
-- Timed event library.
-- Copyright (C) Andrew Tridgell 1992-1998
-- Copyright (C) Volker Lendecke 2005-2007
--
-- This program is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 3 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License
-- along with this program. If not, see <http://www.gnu.org/licenses/>.
--*/
--
--#include "includes.h"
--#include "lib/tevent/tevent_internal.h"
--#include "../lib/util/select.h"
--#include "system/select.h"
--
--struct tevent_poll_private {
-- /*
-- * Index from file descriptor into the pollfd array
-- */
-- int *pollfd_idx;
--
-- /*
-- * Cache for s3_event_loop_once to avoid reallocs
-- */
-- struct pollfd *pfds;
--};
--
--static struct tevent_poll_private *tevent_get_poll_private(
-- struct tevent_context *ev)
--{
-- struct tevent_poll_private *state;
--
-- state = (struct tevent_poll_private *)ev->additional_data;
-- if (state == NULL) {
-- state = talloc_zero(ev, struct tevent_poll_private);
-- ev->additional_data = (void *)state;
-- if (state == NULL) {
-- DEBUG(10, ("talloc failed\n"));
-- }
-- }
-- return state;
--}
--
--static void count_fds(struct tevent_context *ev,
-- int *pnum_fds, int *pmax_fd)
--{
-- struct tevent_fd *fde;
-- int num_fds = 0;
-- int max_fd = 0;
--
-- for (fde = ev->fd_events; fde != NULL; fde = fde->next) {
-- if (fde->flags & (TEVENT_FD_READ|TEVENT_FD_WRITE)) {
-- num_fds += 1;
-- if (fde->fd > max_fd) {
-- max_fd = fde->fd;
-- }
-- }
-- }
-- *pnum_fds = num_fds;
-- *pmax_fd = max_fd;
--}
--
--bool event_add_to_poll_args(struct tevent_context *ev, TALLOC_CTX *mem_ctx,
-- struct pollfd **pfds, int *pnum_pfds,
-- int *ptimeout)
--{
-- struct tevent_poll_private *state;
-- struct tevent_fd *fde;
-- int i, num_fds, max_fd, num_pollfds, idx_len;
-- struct pollfd *fds;
-- struct timeval now, diff;
-- int timeout;
--
-- state = tevent_get_poll_private(ev);
-- if (state == NULL) {
-- return false;
-- }
-- count_fds(ev, &num_fds, &max_fd);
--
-- idx_len = max_fd+1;
--
-- if (talloc_array_length(state->pollfd_idx) < idx_len) {
-- state->pollfd_idx = talloc_realloc(
-- state, state->pollfd_idx, int, idx_len);
-- if (state->pollfd_idx == NULL) {
-- DEBUG(10, ("talloc_realloc failed\n"));
-- return false;
-- }
-- }
--
-- fds = *pfds;
-- num_pollfds = *pnum_pfds;
--
-- if (talloc_array_length(fds) < num_pollfds + num_fds) {
-- fds = talloc_realloc(mem_ctx, fds, struct pollfd,
-- num_pollfds + num_fds);
-- if (fds == NULL) {
-- DEBUG(10, ("talloc_realloc failed\n"));
-- return false;
-- }
-- }
--
-- memset(&fds[num_pollfds], 0, sizeof(struct pollfd) * num_fds);
--
-- /*
-- * This needs tuning. We need to cope with multiple fde's for a file
-- * descriptor. The problem is that we need to re-use pollfd_idx across
-- * calls for efficiency. One way would be a direct bitmask that might
-- * be initialized quicker, but our bitmap_init implementation is
-- * pretty heavy-weight as well.
-- */
-- for (i=0; i<idx_len; i++) {
-- state->pollfd_idx[i] = -1;
-- }
--
-- for (fde = ev->fd_events; fde; fde = fde->next) {
-- struct pollfd *pfd;
--
-- if ((fde->flags & (TEVENT_FD_READ|TEVENT_FD_WRITE)) == 0) {
-- continue;
-- }
--
-- if (state->pollfd_idx[fde->fd] == -1) {
-- /*
-- * We haven't seen this fd yet. Allocate a new pollfd.
-- */
-- state->pollfd_idx[fde->fd] = num_pollfds;
-- pfd = &fds[num_pollfds];
-- num_pollfds += 1;
-- } else {
-- /*
-- * We have already seen this fd. OR in the flags.
-- */
-- pfd = &fds[state->pollfd_idx[fde->fd]];
-- }
--
-- pfd->fd = fde->fd;
--
-- if (fde->flags & TEVENT_FD_READ) {
-- pfd->events |= (POLLIN|POLLHUP);
-- }
-- if (fde->flags & TEVENT_FD_WRITE) {
-- pfd->events |= POLLOUT;
-- }
-- }
-- *pfds = fds;
-- *pnum_pfds = num_pollfds;
--
-- if (ev->immediate_events != NULL) {
-- *ptimeout = 0;
-- return true;
-- }
-- if (ev->timer_events == NULL) {
-- *ptimeout = MIN(*ptimeout, INT_MAX);
-- return true;
-- }
--
-- now = timeval_current();
-- diff = timeval_until(&now, &ev->timer_events->next_event);
-- timeout = timeval_to_msec(diff);
--
-- if (timeout < *ptimeout) {
-- *ptimeout = timeout;
-- }
--
-- return true;
--}
--
--bool run_events_poll(struct tevent_context *ev, int pollrtn,
-- struct pollfd *pfds, int num_pfds)
--{
-- struct tevent_poll_private *state;
-- int *pollfd_idx;
-- struct tevent_fd *fde;
--
-- if (ev->signal_events &&
-- tevent_common_check_signal(ev)) {
-- return true;
-- }
--
-- if (ev->immediate_events &&
-- tevent_common_loop_immediate(ev)) {
-- return true;
-- }
--
-- if (pollrtn <= 0) {
-- struct timeval tval;
--
-- tval = tevent_common_loop_timer_delay(ev);
-- if (tevent_timeval_is_zero(&tval)) {
-- return true;
-- }
--
-- /*
-- * No fd ready
-- */
-- return false;
-- }
--
-- state = (struct tevent_poll_private *)ev->additional_data;
-- pollfd_idx = state->pollfd_idx;
--
-- for (fde = ev->fd_events; fde; fde = fde->next) {
-- struct pollfd *pfd;
-- uint16_t flags = 0;
--
-- if ((fde->flags & (TEVENT_FD_READ|TEVENT_FD_WRITE)) == 0) {
-- continue;
-- }
--
-- if (pollfd_idx[fde->fd] >= num_pfds) {
-- DEBUG(1, ("internal error: pollfd_idx[fde->fd] (%d) "
-- ">= num_pfds (%d)\n", pollfd_idx[fde->fd],
-- num_pfds));
-- return false;
-- }
-- pfd = &pfds[pollfd_idx[fde->fd]];
--
-- if (pfd->fd != fde->fd) {
-- DEBUG(1, ("internal error: pfd->fd (%d) "
-- "!= fde->fd (%d)\n", pollfd_idx[fde->fd],
-- num_pfds));
-- return false;
-- }
--
-- if (pfd->revents & (POLLHUP|POLLERR)) {
-- /* If we only wait for TEVENT_FD_WRITE, we
-- should not tell the event handler about it,
-- and remove the writable flag, as we only
-- report errors when waiting for read events
-- to match the select behavior. */
-- if (!(fde->flags & TEVENT_FD_READ)) {
-- TEVENT_FD_NOT_WRITEABLE(fde);
-- continue;
-- }
-- flags |= TEVENT_FD_READ;
-- }
--
-- if (pfd->revents & POLLIN) {
-- flags |= TEVENT_FD_READ;
-- }
-- if (pfd->revents & POLLOUT) {
-- flags |= TEVENT_FD_WRITE;
-- }
-- if (flags & fde->flags) {
-- DLIST_DEMOTE(ev->fd_events, fde);
-- fde->handler(ev, fde, flags, fde->private_data);
-- return true;
-- }
-- }
--
-- return false;
--}
--
--struct timeval *get_timed_events_timeout(struct tevent_context *ev,
-- struct timeval *to_ret)
--{
-- struct timeval now;
--
-- if ((ev->timer_events == NULL) && (ev->immediate_events == NULL)) {
-- return NULL;
-- }
-- if (ev->immediate_events != NULL) {
-- *to_ret = timeval_zero();
-- return to_ret;
-- }
--
-- now = timeval_current();
-- *to_ret = timeval_until(&now, &ev->timer_events->next_event);
--
-- DEBUG(10, ("timed_events_timeout: %d/%d\n", (int)to_ret->tv_sec,
-- (int)to_ret->tv_usec));
--
-- return to_ret;
--}
--
--static int s3_event_loop_once(struct tevent_context *ev, const char *location)
--{
-- struct tevent_poll_private *state;
-- int timeout;
-- int num_pfds;
-- int ret;
-- int poll_errno;
--
-- timeout = INT_MAX;
--
-- state = tevent_get_poll_private(ev);
-- if (state == NULL) {
-- errno = ENOMEM;
-- return -1;
-- }
--
-- if (run_events_poll(ev, 0, NULL, 0)) {
-- return 0;
-- }
--
-- num_pfds = 0;
-- if (!event_add_to_poll_args(ev, state,
-- &state->pfds, &num_pfds, &timeout)) {
-- return -1;
-- }
--
-- tevent_trace_point_callback(ev, TEVENT_TRACE_BEFORE_WAIT);
-- ret = poll(state->pfds, num_pfds, timeout);
-- poll_errno = errno;
-- tevent_trace_point_callback(ev, TEVENT_TRACE_AFTER_WAIT);
-- errno = poll_errno;
--
-- if (ret == -1 && errno != EINTR) {
-- tevent_debug(ev, TEVENT_DEBUG_FATAL,
-- "poll() failed: %d:%s\n",
-- errno, strerror(errno));
-- return -1;
-- }
--
-- run_events_poll(ev, ret, state->pfds, num_pfds);
-- return 0;
--}
--
--static int s3_event_context_init(struct tevent_context *ev)
--{
-- return 0;
--}
--
--void dump_event_list(struct tevent_context *ev)
--{
-- struct tevent_timer *te;
-- struct tevent_fd *fe;
-- struct timeval evt, now;
--
-- if (!ev) {
-- return;
-- }
--
-- now = timeval_current();
--
-- DEBUG(10,("dump_event_list:\n"));
--
-- for (te = ev->timer_events; te; te = te->next) {
--
-- evt = timeval_until(&now, &te->next_event);
--
-- DEBUGADD(10,("Timed Event \"%s\" %p handled in %d seconds (at %s)\n",
-- te->handler_name,
-- te,
-- (int)evt.tv_sec,
-- http_timestring(talloc_tos(), te->next_event.tv_sec)));
-- }
--
-- for (fe = ev->fd_events; fe; fe = fe->next) {
--
-- DEBUGADD(10,("FD Event %d %p, flags: 0x%04x\n",
-- fe->fd,
-- fe,
-- fe->flags));
-- }
--}
--
--static const struct tevent_ops s3_event_ops = {
-- .context_init = s3_event_context_init,
-- .add_fd = tevent_common_add_fd,
-- .set_fd_close_fn = tevent_common_fd_set_close_fn,
-- .get_fd_flags = tevent_common_fd_get_flags,
-- .set_fd_flags = tevent_common_fd_set_flags,
-- .add_timer = tevent_common_add_timer,
-- .schedule_immediate = tevent_common_schedule_immediate,
-- .add_signal = tevent_common_add_signal,
-- .loop_once = s3_event_loop_once,
-- .loop_wait = tevent_common_loop_wait,
--};
--
--static bool s3_tevent_init(void)
--{
-- static bool initialized;
-- if (initialized) {
-- return true;
-- }
-- initialized = tevent_register_backend("s3", &s3_event_ops);
-- tevent_set_default_backend("s3");
-- return initialized;
--}
--
--struct tevent_context *s3_tevent_context_init(TALLOC_CTX *mem_ctx)
--{
-- struct tevent_context *ev;
--
-- s3_tevent_init();
--
-- ev = tevent_context_init_byname(mem_ctx, "s3");
-- if (ev) {
-- samba_tevent_set_debug(ev, "s3_tevent");
-- }
--
-- return ev;
--}
--
--struct idle_event {
-- struct tevent_timer *te;
-- struct timeval interval;
-- char *name;
-- bool (*handler)(const struct timeval *now, void *private_data);
-- void *private_data;
--};
--
--static void smbd_idle_event_handler(struct tevent_context *ctx,
-- struct tevent_timer *te,
-- struct timeval now,
-- void *private_data)
--{
-- struct idle_event *event =
-- talloc_get_type_abort(private_data, struct idle_event);
--
-- TALLOC_FREE(event->te);
--
-- DEBUG(10,("smbd_idle_event_handler: %s %p called\n",
-- event->name, event->te));
--
-- if (!event->handler(&now, event->private_data)) {
-- DEBUG(10,("smbd_idle_event_handler: %s %p stopped\n",
-- event->name, event->te));
-- /* Don't repeat, delete ourselves */
-- TALLOC_FREE(event);
-- return;
-- }
--
-- DEBUG(10,("smbd_idle_event_handler: %s %p rescheduled\n",
-- event->name, event->te));
--
-- event->te = tevent_add_timer(ctx, event,
-- timeval_sum(&now, &event->interval),
-- smbd_idle_event_handler, event);
--
-- /* We can't do much but fail here. */
-- SMB_ASSERT(event->te != NULL);
--}
--
--struct idle_event *event_add_idle(struct tevent_context *event_ctx,
-- TALLOC_CTX *mem_ctx,
-- struct timeval interval,
-- const char *name,
-- bool (*handler)(const struct timeval *now,
-- void *private_data),
-- void *private_data)
--{
-- struct idle_event *result;
-- struct timeval now = timeval_current();
--
-- result = talloc(mem_ctx, struct idle_event);
-- if (result == NULL) {
-- DEBUG(0, ("talloc failed\n"));
-- return NULL;
-- }
--
-- result->interval = interval;
-- result->handler = handler;
-- result->private_data = private_data;
--
-- if (!(result->name = talloc_asprintf(result, "idle_evt(%s)", name))) {
-- DEBUG(0, ("talloc failed\n"));
-- TALLOC_FREE(result);
-- return NULL;
-- }
--
-- result->te = tevent_add_timer(event_ctx, result,
-- timeval_sum(&now, &interval),
-- smbd_idle_event_handler, result);
-- if (result->te == NULL) {
-- DEBUG(0, ("event_add_timed failed\n"));
-- TALLOC_FREE(result);
-- return NULL;
-- }
--
-- DEBUG(10,("event_add_idle: %s %p\n", result->name, result->te));
-- return result;
--}
--
-diff --git a/source3/lib/util_event.c b/source3/lib/util_event.c
-new file mode 100644
-index 0000000..4ca2840
---- /dev/null
-+++ b/source3/lib/util_event.c
-@@ -0,0 +1,101 @@
-+/*
-+ Unix SMB/CIFS implementation.
-+ Timed event library.
-+ Copyright (C) Andrew Tridgell 1992-1998
-+ Copyright (C) Volker Lendecke 2005-2007
-+
-+ This program is free software; you can redistribute it and/or modify
-+ it under the terms of the GNU General Public License as published by
-+ the Free Software Foundation; either version 3 of the License, or
-+ (at your option) any later version.
-+
-+ This program is distributed in the hope that it will be useful,
-+ but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ GNU General Public License for more details.
-+
-+ You should have received a copy of the GNU General Public License
-+ along with this program. If not, see <http://www.gnu.org/licenses/>.
-+*/
-+
-+#include "includes.h"
-+
-+struct idle_event {
-+ struct tevent_timer *te;
-+ struct timeval interval;
-+ char *name;
-+ bool (*handler)(const struct timeval *now, void *private_data);
-+ void *private_data;
-+};
-+
-+static void smbd_idle_event_handler(struct tevent_context *ctx,
-+ struct tevent_timer *te,
-+ struct timeval now,
-+ void *private_data)
-+{
-+ struct idle_event *event =
-+ talloc_get_type_abort(private_data, struct idle_event);
-+
-+ TALLOC_FREE(event->te);
-+
-+ DEBUG(10,("smbd_idle_event_handler: %s %p called\n",
-+ event->name, event->te));
-+
-+ if (!event->handler(&now, event->private_data)) {
-+ DEBUG(10,("smbd_idle_event_handler: %s %p stopped\n",
-+ event->name, event->te));
-+ /* Don't repeat, delete ourselves */
-+ TALLOC_FREE(event);
-+ return;
-+ }
-+
-+ DEBUG(10,("smbd_idle_event_handler: %s %p rescheduled\n",
-+ event->name, event->te));
-+
-+ event->te = tevent_add_timer(ctx, event,
-+ timeval_sum(&now, &event->interval),
-+ smbd_idle_event_handler, event);
-+
-+ /* We can't do much but fail here. */
-+ SMB_ASSERT(event->te != NULL);
-+}
-+
-+struct idle_event *event_add_idle(struct tevent_context *event_ctx,
-+ TALLOC_CTX *mem_ctx,
-+ struct timeval interval,
-+ const char *name,
-+ bool (*handler)(const struct timeval *now,
-+ void *private_data),
-+ void *private_data)
-+{
-+ struct idle_event *result;
-+ struct timeval now = timeval_current();
-+
-+ result = talloc(mem_ctx, struct idle_event);
-+ if (result == NULL) {
-+ DEBUG(0, ("talloc failed\n"));
-+ return NULL;
-+ }
-+
-+ result->interval = interval;
-+ result->handler = handler;
-+ result->private_data = private_data;
-+
-+ if (!(result->name = talloc_asprintf(result, "idle_evt(%s)", name))) {
-+ DEBUG(0, ("talloc failed\n"));
-+ TALLOC_FREE(result);
-+ return NULL;
-+ }
-+
-+ result->te = tevent_add_timer(event_ctx, result,
-+ timeval_sum(&now, &interval),
-+ smbd_idle_event_handler, result);
-+ if (result->te == NULL) {
-+ DEBUG(0, ("event_add_timed failed\n"));
-+ TALLOC_FREE(result);
-+ return NULL;
-+ }
-+
-+ DEBUG(10,("event_add_idle: %s %p\n", result->name, result->te));
-+ return result;
-+}
-diff --git a/source3/wscript_build b/source3/wscript_build
-index 8546e8d..d19b583 100755
---- a/source3/wscript_build
-+++ b/source3/wscript_build
-@@ -333,7 +333,7 @@ bld.SAMBA3_SUBSYSTEM('samba3core',
- lib/dmallocmsg.c
- intl/lang_tdb.c
- lib/gencache.c
-- lib/events.c
-+ lib/util_event.c
- lib/server_contexts.c
- lib/server_prefork.c
- lib/server_prefork_util.c
---
-1.9.1
-
-
-From cf8c45874d968494b622e7b0c22ada4d054c5c05 Mon Sep 17 00:00:00 2001
-From: Volker Lendecke <vl at samba.org>
-Date: Sat, 24 Sep 2016 10:45:13 -0700
-Subject: [PATCH 12/12] glusterfs: Avoid tevent_internal.h
-MIME-Version: 1.0
-Content-Type: text/plain; charset=UTF-8
-Content-Transfer-Encoding: 8bit
-
-Günther confirmed it still compiles :-)
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12283
-Signed-off-by: Volker Lendecke <vl at samba.org>
-Reviewed-by: Günther Deschner <gd at samba.org>
-
-Autobuild-User(master): Volker Lendecke <vl at samba.org>
-Autobuild-Date(master): Sat Sep 24 23:41:56 CEST 2016 on sn-devel-144
-
-(cherry picked from commit c60ea2c17814f9f7b55514e0d0a553accaa54b15)
----
- source3/modules/vfs_glusterfs.c | 1 -
- 1 file changed, 1 deletion(-)
-
-diff --git a/source3/modules/vfs_glusterfs.c b/source3/modules/vfs_glusterfs.c
-index fbcaf5c..a467235 100644
---- a/source3/modules/vfs_glusterfs.c
-+++ b/source3/modules/vfs_glusterfs.c
-@@ -41,7 +41,6 @@
- #include "api/glfs.h"
- #include "lib/util/dlinklist.h"
- #include "lib/util/tevent_unix.h"
--#include "lib/tevent/tevent_internal.h"
- #include "smbd/globals.h"
- #include "lib/util/sys_rw.h"
- #include "smbprofile.h"
---
-1.9.1
-
diff --git a/debian/patches/gencache-Bail-out-of-stabilize-if-we-can-not-get-the.patch b/debian/patches/gencache-Bail-out-of-stabilize-if-we-can-not-get-the.patch
deleted file mode 100644
index 480dbc6..0000000
--- a/debian/patches/gencache-Bail-out-of-stabilize-if-we-can-not-get-the.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 5bd28ffcf5bb20bc4f3b9c359d99dd2751fe6c93 Mon Sep 17 00:00:00 2001
-From: Volker Lendecke <vl at samba.org>
-Date: Mon, 19 Sep 2016 14:29:21 -0700
-Subject: [PATCH] gencache: Bail out of stabilize if we can not get the
- allrecord lock
-
-Bug: https://bugzilla.samba.org/show_bug.cgi?id=12045
-
-Signed-off-by: Volker Lendecke <vl at samba.org>
-Reviewed-by: Jeremy Allison <jra at samba.org>
-
-Autobuild-User(master): Jeremy Allison <jra at samba.org>
-Autobuild-Date(master): Tue Sep 20 04:09:33 CEST 2016 on sn-devel-144
-
-(cherry picked from commit b208499960eefef02d305a3bd59b03a7c2aafcac)
----
- source3/lib/gencache.c | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/source3/lib/gencache.c b/source3/lib/gencache.c
-index 84d273e..97e0b40 100644
---- a/source3/lib/gencache.c
-+++ b/source3/lib/gencache.c
-@@ -664,7 +664,7 @@ bool gencache_stabilize(void)
- return false;
- }
-
-- res = tdb_lockall(cache_notrans->tdb);
-+ res = tdb_lockall_nonblock(cache_notrans->tdb);
- if (res != 0) {
- tdb_transaction_cancel(cache->tdb);
- DEBUG(10, ("Could not get allrecord lock on "
---
-2.9.3
-
diff --git a/debian/patches/series b/debian/patches/series
index ee1cbfb..ca14c11 100644
--- a/debian/patches/series
+++ b/debian/patches/series
@@ -14,6 +14,4 @@ Skip-raw.write-tests.patch
systemd-syslog.target-is-obsolete.patch
Add-documentation-to-systemd-Unit-files.patch
fix_kill_path_in_units.patch
-bug_12283_segfault_tevent_internals.patch
-gencache-Bail-out-of-stabilize-if-we-can-not-get-the.patch
Fix_parallel_build.patch
diff --git a/debian/patches/usershare.patch b/debian/patches/usershare.patch
index 4086e4e..7e513de 100644
--- a/debian/patches/usershare.patch
+++ b/debian/patches/usershare.patch
@@ -11,7 +11,7 @@ Index: samba/docs/manpages/net.8
===================================================================
--- samba.orig/docs/manpages/net.8
+++ samba/docs/manpages/net.8
-@@ -1201,9 +1201,9 @@ Something we failed to parse\&. Default
+@@ -1063,9 +1063,9 @@ Something we failed to parse\&. Default
.RE
.SS "USERSHARE"
.PP
diff --git a/docs-xml/smbdotconf/misc/usersharemaxshares.xml b/docs-xml/smbdotconf/misc/usersharemaxshares.xml
index 0d69bb8..e985857 100644
--- a/docs-xml/smbdotconf/misc/usersharemaxshares.xml
+++ b/docs-xml/smbdotconf/misc/usersharemaxshares.xml
@@ -9,5 +9,5 @@
</para>
</description>
-<value type="default">0</value>
+<value type="default">100</value>
</samba:parameter>
diff --git a/docs-xml/wscript_build b/docs-xml/wscript_build
index 2b3a180..38c3a9a 100644
--- a/docs-xml/wscript_build
+++ b/docs-xml/wscript_build
@@ -133,7 +133,7 @@ def SMBDOTCONF_MANPAGE(bld, target):
if ('XSLTPROC_MANPAGES' in bld.env and bld.env['XSLTPROC_MANPAGES']):
- SMBDOTCONF_MANPAGE(bld, 'manpages/smb.conf.5')
+ #SMBDOTCONF_MANPAGE(bld, 'manpages/smb.conf.5')
bld.SAMBAMANPAGES(manpages)
if bld.CONFIG_SET('WITH_PAM_MODULES') and bld.CONFIG_SET('HAVE_PAM_START'):
diff --git a/docs/manpages/net.8 b/docs/manpages/net.8
index eb8b840..eeed54f 100644
--- a/docs/manpages/net.8
+++ b/docs/manpages/net.8
@@ -1063,9 +1063,9 @@ Something we failed to parse\&. Default action is to "edit" it in interactive an
.RE
.SS "USERSHARE"
.PP
-Starting with version 3\&.0\&.23, a Samba server now supports the ability for non\-root users to add user defined shares to be exported using the "net usershare" commands\&.
+Starting with version 3\&.0\&.23, a Samba server now supports the ability for non\-root users to add user-defined shares to be exported using the "net usershare" commands\&.
.PP
-To set this up, first set up your smb\&.conf by adding to the [global] section: usershare path = /usr/local/samba/lib/usershares Next create the directory /usr/local/samba/lib/usershares, change the owner to root and set the group owner to the UNIX group who should have the ability to create usershares, for example a group called "serverops"\&. Set the permissions on /usr/local/samba/lib/usershares to 01770\&. (Owner and group all access, no access for others, plus the sticky bit, which [...]
+Members of the UNIX group "sambashare" can create user-defined shares on demand using the commands below\&.
.PP
The usershare commands are:
.RS 4
diff --git a/examples/LDAP/README b/examples/LDAP/README
index f6ce3a9..a918acf 100644
--- a/examples/LDAP/README
+++ b/examples/LDAP/README
@@ -69,6 +69,9 @@ in Samba releases.
The smbldap-tools package can be downloaded individually from
https://gna.org/projects/smbldap-tools/
+On Debian systems, the smbldap-tools exists as a separate package
+and is not included in LDAP examples.
+
!==
!== end of README
!==
diff --git a/lib/param/loadparm.c b/lib/param/loadparm.c
index 5f4610e..0413a2e 100644
--- a/lib/param/loadparm.c
+++ b/lib/param/loadparm.c
@@ -2878,6 +2878,8 @@ struct loadparm_context *loadparm_init(TALLOC_CTX *mem_ctx)
lpcfg_do_global_parameter(lp_ctx, "init logon delay", "100");
+ lpcfg_do_global_parameter(lp_ctx, "usershare max shares", "100");
+
lpcfg_do_global_parameter(lp_ctx, "usershare owner only", "yes");
lpcfg_do_global_parameter(lp_ctx, "-valid", "yes");
diff --git a/packaging/systemd/nmb.service b/packaging/systemd/nmb.service
index 992c0cd..c02e65d 100644
--- a/packaging/systemd/nmb.service
+++ b/packaging/systemd/nmb.service
@@ -1,6 +1,7 @@
[Unit]
Description=Samba NMB Daemon
-After=syslog.target network.target
+Documentation=man:nmbd(8) man:samba(7) man:smb.conf(5)
+After=network.target
[Service]
Type=notify
@@ -8,7 +9,7 @@ NotifyAccess=all
PIDFile=/run/nmbd.pid
EnvironmentFile=-/etc/sysconfig/samba
ExecStart=/usr/sbin/nmbd $NMBDOPTIONS
-ExecReload=/usr/bin/kill -HUP $MAINPID
+ExecReload=/bin/kill -HUP $MAINPID
LimitCORE=infinity
[Install]
diff --git a/packaging/systemd/samba.service b/packaging/systemd/samba.service
index 824f89c..11d2e47 100644
--- a/packaging/systemd/samba.service
+++ b/packaging/systemd/samba.service
@@ -1,6 +1,7 @@
[Unit]
Description=Samba AD Daemon
-After=syslog.target network.target
+Documentation=man:samba(8) man:samba(7) man:smb.conf(5)
+After=network.target
[Service]
Type=notify
@@ -9,7 +10,7 @@ PIDFile=/run/samba.pid
LimitNOFILE=16384
EnvironmentFile=-/etc/sysconfig/samba
ExecStart=/usr/sbin/samba $SAMBAOPTIONS
-ExecReload=/usr/bin/kill -HUP $MAINPID
+ExecReload=/bin/kill -HUP $MAINPID
[Install]
WantedBy=multi-user.target
diff --git a/packaging/systemd/smb.service b/packaging/systemd/smb.service
index 6053a5c..cc7831c 100644
--- a/packaging/systemd/smb.service
+++ b/packaging/systemd/smb.service
@@ -1,6 +1,7 @@
[Unit]
Description=Samba SMB Daemon
-After=syslog.target network.target nmb.service winbind.service
+Documentation=man:smbd(8) man:samba(7) man:smb.conf(5)
+After=network.target nmb.service winbind.service
[Service]
Type=notify
@@ -9,7 +10,7 @@ PIDFile=/run/smbd.pid
LimitNOFILE=16384
EnvironmentFile=-/etc/sysconfig/samba
ExecStart=/usr/sbin/smbd $SMBDOPTIONS
-ExecReload=/usr/bin/kill -HUP $MAINPID
+ExecReload=/bin/kill -HUP $MAINPID
LimitCORE=infinity
[Install]
diff --git a/packaging/systemd/winbind.service b/packaging/systemd/winbind.service
index c511488..e7f1651 100644
--- a/packaging/systemd/winbind.service
+++ b/packaging/systemd/winbind.service
@@ -1,6 +1,7 @@
[Unit]
Description=Samba Winbind Daemon
-After=syslog.target network.target nmb.service
+Documentation=man:winbindd(8) man:samba(7) man:smb.conf(5)
+After=network.target nmb.service
[Service]
Type=notify
@@ -8,7 +9,7 @@ NotifyAccess=all
PIDFile=/run/winbindd.pid
EnvironmentFile=-/etc/sysconfig/samba
ExecStart=/usr/sbin/winbindd "$WINBINDOPTIONS"
-ExecReload=/usr/bin/kill -HUP $MAINPID
+ExecReload=/bin/kill -HUP $MAINPID
LimitCORE=infinity
[Install]
diff --git a/selftest/quick b/selftest/quick
index 7605f3f..19903c6 100644
--- a/selftest/quick
+++ b/selftest/quick
@@ -14,7 +14,8 @@ raw.qfileinfo
raw.mkdir
raw.seek
raw.open
-raw.write
+# "Trying 2^32 offset" fails on 32-bit
+# raw.write
raw.read
raw.close
raw.ioctl
diff --git a/source3/include/libsmbclient.h b/source3/include/libsmbclient.h
index cf67b1d..ff9ed53 100644
--- a/source3/include/libsmbclient.h
+++ b/source3/include/libsmbclient.h
@@ -80,6 +80,16 @@ extern "C" {
#include <fcntl.h>
#include <utime.h>
+ /* Debian bug #221618 */
+#ifdef _LARGEFILE64_SOURCE
+#undef _LARGEFILE64_SOURCE
+#endif
+#define _LARGEFILE64_SOURCE 1
+#ifdef _FILE_OFFSET_BITS
+#undef _FILE_OFFSET_BITS
+#endif
+#define _FILE_OFFSET_BITS 64
+
#define SMBC_BASE_FD 10000 /* smallest file descriptor returned */
#define SMBC_WORKGROUP 1
diff --git a/source3/include/local.h b/source3/include/local.h
index 7f97d4e..60a00d1 100644
--- a/source3/include/local.h
+++ b/source3/include/local.h
@@ -88,7 +88,7 @@
/* the default pager to use for the client "more" command. Users can
override this with the PAGER environment variable */
#ifndef PAGER
-#define PAGER "more"
+#define PAGER "/usr/bin/pager"
#endif
/* the size of the uid cache used to reduce valid user checks */
diff --git a/source3/nmbd/nmbd_packets.c b/source3/nmbd/nmbd_packets.c
index de5ae1e..8739745 100644
--- a/source3/nmbd/nmbd_packets.c
+++ b/source3/nmbd/nmbd_packets.c
@@ -1683,8 +1683,6 @@ on subnet %s\n", rrec->response_id, inet_ntoa(rrec->packet->ip), subrec->subnet_
struct socket_attributes {
enum packet_type type;
bool broadcast;
- int fd;
- bool triggered;
};
static bool create_listen_array(struct socket_attributes **pattrs,
@@ -1716,7 +1714,7 @@ static bool create_listen_array(struct socket_attributes **pattrs,
}
}
- attrs = talloc_zero_array(NULL, struct socket_attributes, count);
+ attrs = talloc_array(NULL, struct socket_attributes, count);
if (attrs == NULL) {
DEBUG(1, ("talloc fail for attrs. "
"size %d\n", count));
@@ -1879,6 +1877,32 @@ static void nmbd_fd_handler(struct tevent_context *ev,
}
/****************************************************************************
+ Timeout callback - just notice we timed out.
+***************************************************************************/
+
+static void nmbd_timeout_handler(struct tevent_context *ev,
+ struct tevent_timer *te,
+ struct timeval current_time,
+ void *private_data)
+{
+ bool *got_timeout = private_data;
+ *got_timeout = true;
+}
+
+/****************************************************************************
+ fd callback - remember the fd that triggered.
+***************************************************************************/
+
+static void nmbd_fd_handler(struct tevent_context *ev,
+ struct tevent_fd *fde,
+ uint16_t flags,
+ void *private_data)
+{
+ struct socket_attributes *attr = private_data;
+ attr->triggered = true;
+}
+
+/****************************************************************************
Listens for NMB or DGRAM packets, and queues them.
return True if the socket is dead
***************************************************************************/
diff --git a/source3/param/loadparm.c b/source3/param/loadparm.c
index f282651..b136c74 100644
--- a/source3/param/loadparm.c
+++ b/source3/param/loadparm.c
@@ -842,7 +842,7 @@ static void init_globals(struct loadparm_context *lp_ctx, bool reinit_globals)
lpcfg_string_set(Globals.ctx, &Globals.usershare_path, s);
TALLOC_FREE(s);
lpcfg_string_set(Globals.ctx, &Globals.usershare_template_share, "");
- Globals.usershare_max_shares = 0;
+ Globals.usershare_max_shares = 100;
/* By default disallow sharing of directories not owned by the sharer. */
Globals.usershare_owner_only = true;
/* By default disallow guest access to usershares. */
diff --git a/source3/script/build_env.sh b/source3/script/build_env.sh
index eb54f37..bdaa2c6 100755
--- a/source3/script/build_env.sh
+++ b/source3/script/build_env.sh
@@ -27,15 +27,4 @@ host=`hostname`
cat <<EOF
/* This file is automatically generated with "make include/build_env.h". DO NOT EDIT */
-#ifndef _BUILD_ENV_H
-#define _BUILD_ENV_H
-
-#define BUILD_ENV_UNAME "${uname}"
-#define BUILD_ENV_DATE "${date}"
-#define BUILD_ENV_SRCDIR "${srcdir}"
-#define BUILD_ENV_BUILDDIR "${builddir}"
-#define BUILD_ENV_USER "${whoami}"
-#define BUILD_ENV_HOST "${host}"
-#define BUILD_ENV_COMPILER "${compiler}"
-#endif /* _BUILD_ENV_H */
EOF
diff --git a/source4/heimdal/lib/wind/rfc3454.txt-table b/source4/heimdal/lib/wind/rfc3454.txt-table
new file mode 100644
index 0000000..5bef0b5
--- /dev/null
+++ b/source4/heimdal/lib/wind/rfc3454.txt-table
@@ -0,0 +1,7074 @@
+ ----- Start Table A.1 -----
+
+ 0221
+
+ 0234-024F
+
+ 02AE-02AF
+
+ 02EF-02FF
+
+ 0350-035F
+
+ 0370-0373
+
+ 0376-0379
+
+ 037B-037D
+
+ 037F-0383
+
+ 038B
+
+ 038D
+
+ 03A2
+
+ 03CF
+
+ 03F7-03FF
+
+ 0487
+
+ 04CF
+
+ 04F6-04F7
+
+ 04FA-04FF
+
+ 0510-0530
+
+ 0557-0558
+
+ 0560
+
+ 0588
+
+ 058B-0590
+
+ 05A2
+
+ 05BA
+
+ 05C5-05CF
+
+ 05EB-05EF
+
+ 05F5-060B
+
+ 060D-061A
+
+ 061C-061E
+
+ 0620
+
+ 063B-063F
+
+ 0656-065F
+
+ 06EE-06EF
+
+ 06FF
+
+ 070E
+
+ 072D-072F
+
+ 074B-077F
+
+ 07B2-0900
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0904
+
+ 093A-093B
+
+ 094E-094F
+
+ 0955-0957
+
+ 0971-0980
+
+ 0984
+
+ 098D-098E
+
+ 0991-0992
+
+ 09A9
+
+ 09B1
+
+ 09B3-09B5
+
+ 09BA-09BB
+
+ 09BD
+
+ 09C5-09C6
+
+ 09C9-09CA
+
+ 09CE-09D6
+
+ 09D8-09DB
+
+ 09DE
+
+ 09E4-09E5
+
+ 09FB-0A01
+
+ 0A03-0A04
+
+ 0A0B-0A0E
+
+ 0A11-0A12
+
+ 0A29
+
+ 0A31
+
+ 0A34
+
+ 0A37
+
+ 0A3A-0A3B
+
+ 0A3D
+
+ 0A43-0A46
+
+ 0A49-0A4A
+
+ 0A4E-0A58
+
+ 0A5D
+
+ 0A5F-0A65
+
+ 0A75-0A80
+
+ 0A84
+
+ 0A8C
+
+ 0A8E
+
+ 0A92
+
+ 0AA9
+
+ 0AB1
+
+ 0AB4
+
+ 0ABA-0ABB
+
+ 0AC6
+
+ 0ACA
+
+ 0ACE-0ACF
+
+ 0AD1-0ADF
+
+ 0AE1-0AE5
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0AF0-0B00
+
+ 0B04
+
+ 0B0D-0B0E
+
+ 0B11-0B12
+
+ 0B29
+
+ 0B31
+
+ 0B34-0B35
+
+ 0B3A-0B3B
+
+ 0B44-0B46
+
+ 0B49-0B4A
+
+ 0B4E-0B55
+
+ 0B58-0B5B
+
+ 0B5E
+
+ 0B62-0B65
+
+ 0B71-0B81
+
+ 0B84
+
+ 0B8B-0B8D
+
+ 0B91
+
+ 0B96-0B98
+
+ 0B9B
+
+ 0B9D
+
+ 0BA0-0BA2
+
+ 0BA5-0BA7
+
+ 0BAB-0BAD
+
+ 0BB6
+
+ 0BBA-0BBD
+
+ 0BC3-0BC5
+
+ 0BC9
+
+ 0BCE-0BD6
+
+ 0BD8-0BE6
+
+ 0BF3-0C00
+
+ 0C04
+
+ 0C0D
+
+ 0C11
+
+ 0C29
+
+ 0C34
+
+ 0C3A-0C3D
+
+ 0C45
+
+ 0C49
+
+ 0C4E-0C54
+
+ 0C57-0C5F
+
+ 0C62-0C65
+
+ 0C70-0C81
+
+ 0C84
+
+ 0C8D
+
+ 0C91
+
+ 0CA9
+
+ 0CB4
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0CBA-0CBD
+
+ 0CC5
+
+ 0CC9
+
+ 0CCE-0CD4
+
+ 0CD7-0CDD
+
+ 0CDF
+
+ 0CE2-0CE5
+
+ 0CF0-0D01
+
+ 0D04
+
+ 0D0D
+
+ 0D11
+
+ 0D29
+
+ 0D3A-0D3D
+
+ 0D44-0D45
+
+ 0D49
+
+ 0D4E-0D56
+
+ 0D58-0D5F
+
+ 0D62-0D65
+
+ 0D70-0D81
+
+ 0D84
+
+ 0D97-0D99
+
+ 0DB2
+
+ 0DBC
+
+ 0DBE-0DBF
+
+ 0DC7-0DC9
+
+ 0DCB-0DCE
+
+ 0DD5
+
+ 0DD7
+
+ 0DE0-0DF1
+
+ 0DF5-0E00
+
+ 0E3B-0E3E
+
+ 0E5C-0E80
+
+ 0E83
+
+ 0E85-0E86
+
+ 0E89
+
+ 0E8B-0E8C
+
+ 0E8E-0E93
+
+ 0E98
+
+ 0EA0
+
+ 0EA4
+
+ 0EA6
+
+ 0EA8-0EA9
+
+ 0EAC
+
+ 0EBA
+
+ 0EBE-0EBF
+
+ 0EC5
+
+ 0EC7
+
+ 0ECE-0ECF
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0EDA-0EDB
+
+ 0EDE-0EFF
+
+ 0F48
+
+ 0F6B-0F70
+
+ 0F8C-0F8F
+
+ 0F98
+
+ 0FBD
+
+ 0FCD-0FCE
+
+ 0FD0-0FFF
+
+ 1022
+
+ 1028
+
+ 102B
+
+ 1033-1035
+
+ 103A-103F
+
+ 105A-109F
+
+ 10C6-10CF
+
+ 10F9-10FA
+
+ 10FC-10FF
+
+ 115A-115E
+
+ 11A3-11A7
+
+ 11FA-11FF
+
+ 1207
+
+ 1247
+
+ 1249
+
+ 124E-124F
+
+ 1257
+
+ 1259
+
+ 125E-125F
+
+ 1287
+
+ 1289
+
+ 128E-128F
+
+ 12AF
+
+ 12B1
+
+ 12B6-12B7
+
+ 12BF
+
+ 12C1
+
+ 12C6-12C7
+
+ 12CF
+
+ 12D7
+
+ 12EF
+
+ 130F
+
+ 1311
+
+ 1316-1317
+
+ 131F
+
+ 1347
+
+ 135B-1360
+
+ 137D-139F
+
+ 13F5-1400
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1677-167F
+
+ 169D-169F
+
+ 16F1-16FF
+
+ 170D
+
+ 1715-171F
+
+ 1737-173F
+
+ 1754-175F
+
+ 176D
+
+ 1771
+
+ 1774-177F
+
+ 17DD-17DF
+
+ 17EA-17FF
+
+ 180F
+
+ 181A-181F
+
+ 1878-187F
+
+ 18AA-1DFF
+
+ 1E9C-1E9F
+
+ 1EFA-1EFF
+
+ 1F16-1F17
+
+ 1F1E-1F1F
+
+ 1F46-1F47
+
+ 1F4E-1F4F
+
+ 1F58
+
+ 1F5A
+
+ 1F5C
+
+ 1F5E
+
+ 1F7E-1F7F
+
+ 1FB5
+
+ 1FC5
+
+ 1FD4-1FD5
+
+ 1FDC
+
+ 1FF0-1FF1
+
+ 1FF5
+
+ 1FFF
+
+ 2053-2056
+
+ 2058-205E
+
+ 2064-2069
+
+ 2072-2073
+
+ 208F-209F
+
+ 20B2-20CF
+
+ 20EB-20FF
+
+ 213B-213C
+
+ 214C-2152
+
+ 2184-218F
+
+ 23CF-23FF
+
+ 2427-243F
+
+ 244B-245F
+
+ 24FF
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2614-2615
+
+ 2618
+
+ 267E-267F
+
+ 268A-2700
+
+ 2705
+
+ 270A-270B
+
+ 2728
+
+ 274C
+
+ 274E
+
+ 2753-2755
+
+ 2757
+
+ 275F-2760
+
+ 2795-2797
+
+ 27B0
+
+ 27BF-27CF
+
+ 27EC-27EF
+
+ 2B00-2E7F
+
+ 2E9A
+
+ 2EF4-2EFF
+
+ 2FD6-2FEF
+
+ 2FFC-2FFF
+
+ 3040
+
+ 3097-3098
+
+ 3100-3104
+
+ 312D-3130
+
+ 318F
+
+ 31B8-31EF
+
+ 321D-321F
+
+ 3244-3250
+
+ 327C-327E
+
+ 32CC-32CF
+
+ 32FF
+
+ 3377-337A
+
+ 33DE-33DF
+
+ 33FF
+
+ 4DB6-4DFF
+
+ 9FA6-9FFF
+
+ A48D-A48F
+
+ A4C7-ABFF
+
+ D7A4-D7FF
+
+ FA2E-FA2F
+
+ FA6B-FAFF
+
+ FB07-FB12
+
+ FB18-FB1C
+
+ FB37
+
+ FB3D
+
+ FB3F
+
+ FB42
+
+
+
+
+
+
+
+
+
+
+
+
+
+ FB45
+
+ FBB2-FBD2
+
+ FD40-FD4F
+
+ FD90-FD91
+
+ FDC8-FDCF
+
+ FDFD-FDFF
+
+ FE10-FE1F
+
+ FE24-FE2F
+
+ FE47-FE48
+
+ FE53
+
+ FE67
+
+ FE6C-FE6F
+
+ FE75
+
+ FEFD-FEFE
+
+ FF00
+
+ FFBF-FFC1
+
+ FFC8-FFC9
+
+ FFD0-FFD1
+
+ FFD8-FFD9
+
+ FFDD-FFDF
+
+ FFE7
+
+ FFEF-FFF8
+
+ 10000-102FF
+
+ 1031F
+
+ 10324-1032F
+
+ 1034B-103FF
+
+ 10426-10427
+
+ 1044E-1CFFF
+
+ 1D0F6-1D0FF
+
+ 1D127-1D129
+
+ 1D1DE-1D3FF
+
+ 1D455
+
+ 1D49D
+
+ 1D4A0-1D4A1
+
+ 1D4A3-1D4A4
+
+ 1D4A7-1D4A8
+
+ 1D4AD
+
+ 1D4BA
+
+ 1D4BC
+
+ 1D4C1
+
+ 1D4C4
+
+ 1D506
+
+ 1D50B-1D50C
+
+ 1D515
+
+ 1D51D
+
+ 1D53A
+
+ 1D53F
+
+ 1D545
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D547-1D549
+
+ 1D551
+
+ 1D6A4-1D6A7
+
+ 1D7CA-1D7CD
+
+ 1D800-1FFFD
+
+ 2A6D7-2F7FF
+
+ 2FA1E-2FFFD
+
+ 30000-3FFFD
+
+ 40000-4FFFD
+
+ 50000-5FFFD
+
+ 60000-6FFFD
+
+ 70000-7FFFD
+
+ 80000-8FFFD
+
+ 90000-9FFFD
+
+ A0000-AFFFD
+
+ B0000-BFFFD
+
+ C0000-CFFFD
+
+ D0000-DFFFD
+
+ E0000
+
+ E0002-E001F
+
+ E0080-EFFFD
+
+ ----- End Table A.1 -----
+
+ ----- Start Table B.1 -----
+
+ 00AD; ; Map to nothing
+
+ 034F; ; Map to nothing
+
+ 1806; ; Map to nothing
+
+ 180B; ; Map to nothing
+
+ 180C; ; Map to nothing
+
+ 180D; ; Map to nothing
+
+ 200B; ; Map to nothing
+
+ 200C; ; Map to nothing
+
+ 200D; ; Map to nothing
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 2060; ; Map to nothing
+
+ FE00; ; Map to nothing
+
+ FE01; ; Map to nothing
+
+ FE02; ; Map to nothing
+
+ FE03; ; Map to nothing
+
+ FE04; ; Map to nothing
+
+ FE05; ; Map to nothing
+
+ FE06; ; Map to nothing
+
+ FE07; ; Map to nothing
+
+ FE08; ; Map to nothing
+
+ FE09; ; Map to nothing
+
+ FE0A; ; Map to nothing
+
+ FE0B; ; Map to nothing
+
+ FE0C; ; Map to nothing
+
+ FE0D; ; Map to nothing
+
+ FE0E; ; Map to nothing
+
+ FE0F; ; Map to nothing
+
+ FEFF; ; Map to nothing
+
+ ----- End Table B.1 -----
+
+ ----- Start Table B.2 -----
+
+ 0041; 0061; Case map
+
+ 0042; 0062; Case map
+
+ 0043; 0063; Case map
+
+ 0044; 0064; Case map
+
+ 0045; 0065; Case map
+
+ 0046; 0066; Case map
+
+ 0047; 0067; Case map
+
+ 0048; 0068; Case map
+
+ 0049; 0069; Case map
+
+ 004A; 006A; Case map
+
+ 004B; 006B; Case map
+
+ 004C; 006C; Case map
+
+ 004D; 006D; Case map
+
+ 004E; 006E; Case map
+
+ 004F; 006F; Case map
+
+ 0050; 0070; Case map
+
+ 0051; 0071; Case map
+
+ 0052; 0072; Case map
+
+ 0053; 0073; Case map
+
+ 0054; 0074; Case map
+
+ 0055; 0075; Case map
+
+ 0056; 0076; Case map
+
+ 0057; 0077; Case map
+
+ 0058; 0078; Case map
+
+ 0059; 0079; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 005A; 007A; Case map
+
+ 00B5; 03BC; Case map
+
+ 00C0; 00E0; Case map
+
+ 00C1; 00E1; Case map
+
+ 00C2; 00E2; Case map
+
+ 00C3; 00E3; Case map
+
+ 00C4; 00E4; Case map
+
+ 00C5; 00E5; Case map
+
+ 00C6; 00E6; Case map
+
+ 00C7; 00E7; Case map
+
+ 00C8; 00E8; Case map
+
+ 00C9; 00E9; Case map
+
+ 00CA; 00EA; Case map
+
+ 00CB; 00EB; Case map
+
+ 00CC; 00EC; Case map
+
+ 00CD; 00ED; Case map
+
+ 00CE; 00EE; Case map
+
+ 00CF; 00EF; Case map
+
+ 00D0; 00F0; Case map
+
+ 00D1; 00F1; Case map
+
+ 00D2; 00F2; Case map
+
+ 00D3; 00F3; Case map
+
+ 00D4; 00F4; Case map
+
+ 00D5; 00F5; Case map
+
+ 00D6; 00F6; Case map
+
+ 00D8; 00F8; Case map
+
+ 00D9; 00F9; Case map
+
+ 00DA; 00FA; Case map
+
+ 00DB; 00FB; Case map
+
+ 00DC; 00FC; Case map
+
+ 00DD; 00FD; Case map
+
+ 00DE; 00FE; Case map
+
+ 00DF; 0073 0073; Case map
+
+ 0100; 0101; Case map
+
+ 0102; 0103; Case map
+
+ 0104; 0105; Case map
+
+ 0106; 0107; Case map
+
+ 0108; 0109; Case map
+
+ 010A; 010B; Case map
+
+ 010C; 010D; Case map
+
+ 010E; 010F; Case map
+
+ 0110; 0111; Case map
+
+ 0112; 0113; Case map
+
+ 0114; 0115; Case map
+
+ 0116; 0117; Case map
+
+ 0118; 0119; Case map
+
+ 011A; 011B; Case map
+
+ 011C; 011D; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 011E; 011F; Case map
+
+ 0120; 0121; Case map
+
+ 0122; 0123; Case map
+
+ 0124; 0125; Case map
+
+ 0126; 0127; Case map
+
+ 0128; 0129; Case map
+
+ 012A; 012B; Case map
+
+ 012C; 012D; Case map
+
+ 012E; 012F; Case map
+
+ 0130; 0069 0307; Case map
+
+ 0132; 0133; Case map
+
+ 0134; 0135; Case map
+
+ 0136; 0137; Case map
+
+ 0139; 013A; Case map
+
+ 013B; 013C; Case map
+
+ 013D; 013E; Case map
+
+ 013F; 0140; Case map
+
+ 0141; 0142; Case map
+
+ 0143; 0144; Case map
+
+ 0145; 0146; Case map
+
+ 0147; 0148; Case map
+
+ 0149; 02BC 006E; Case map
+
+ 014A; 014B; Case map
+
+ 014C; 014D; Case map
+
+ 014E; 014F; Case map
+
+ 0150; 0151; Case map
+
+ 0152; 0153; Case map
+
+ 0154; 0155; Case map
+
+ 0156; 0157; Case map
+
+ 0158; 0159; Case map
+
+ 015A; 015B; Case map
+
+ 015C; 015D; Case map
+
+ 015E; 015F; Case map
+
+ 0160; 0161; Case map
+
+ 0162; 0163; Case map
+
+ 0164; 0165; Case map
+
+ 0166; 0167; Case map
+
+ 0168; 0169; Case map
+
+ 016A; 016B; Case map
+
+ 016C; 016D; Case map
+
+ 016E; 016F; Case map
+
+ 0170; 0171; Case map
+
+ 0172; 0173; Case map
+
+ 0174; 0175; Case map
+
+ 0176; 0177; Case map
+
+ 0178; 00FF; Case map
+
+ 0179; 017A; Case map
+
+ 017B; 017C; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 017D; 017E; Case map
+
+ 017F; 0073; Case map
+
+ 0181; 0253; Case map
+
+ 0182; 0183; Case map
+
+ 0184; 0185; Case map
+
+ 0186; 0254; Case map
+
+ 0187; 0188; Case map
+
+ 0189; 0256; Case map
+
+ 018A; 0257; Case map
+
+ 018B; 018C; Case map
+
+ 018E; 01DD; Case map
+
+ 018F; 0259; Case map
+
+ 0190; 025B; Case map
+
+ 0191; 0192; Case map
+
+ 0193; 0260; Case map
+
+ 0194; 0263; Case map
+
+ 0196; 0269; Case map
+
+ 0197; 0268; Case map
+
+ 0198; 0199; Case map
+
+ 019C; 026F; Case map
+
+ 019D; 0272; Case map
+
+ 019F; 0275; Case map
+
+ 01A0; 01A1; Case map
+
+ 01A2; 01A3; Case map
+
+ 01A4; 01A5; Case map
+
+ 01A6; 0280; Case map
+
+ 01A7; 01A8; Case map
+
+ 01A9; 0283; Case map
+
+ 01AC; 01AD; Case map
+
+ 01AE; 0288; Case map
+
+ 01AF; 01B0; Case map
+
+ 01B1; 028A; Case map
+
+ 01B2; 028B; Case map
+
+ 01B3; 01B4; Case map
+
+ 01B5; 01B6; Case map
+
+ 01B7; 0292; Case map
+
+ 01B8; 01B9; Case map
+
+ 01BC; 01BD; Case map
+
+ 01C4; 01C6; Case map
+
+ 01C5; 01C6; Case map
+
+ 01C7; 01C9; Case map
+
+ 01C8; 01C9; Case map
+
+ 01CA; 01CC; Case map
+
+ 01CB; 01CC; Case map
+
+ 01CD; 01CE; Case map
+
+ 01CF; 01D0; Case map
+
+ 01D1; 01D2; Case map
+
+ 01D3; 01D4; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 01D5; 01D6; Case map
+
+ 01D7; 01D8; Case map
+
+ 01D9; 01DA; Case map
+
+ 01DB; 01DC; Case map
+
+ 01DE; 01DF; Case map
+
+ 01E0; 01E1; Case map
+
+ 01E2; 01E3; Case map
+
+ 01E4; 01E5; Case map
+
+ 01E6; 01E7; Case map
+
+ 01E8; 01E9; Case map
+
+ 01EA; 01EB; Case map
+
+ 01EC; 01ED; Case map
+
+ 01EE; 01EF; Case map
+
+ 01F0; 006A 030C; Case map
+
+ 01F1; 01F3; Case map
+
+ 01F2; 01F3; Case map
+
+ 01F4; 01F5; Case map
+
+ 01F6; 0195; Case map
+
+ 01F7; 01BF; Case map
+
+ 01F8; 01F9; Case map
+
+ 01FA; 01FB; Case map
+
+ 01FC; 01FD; Case map
+
+ 01FE; 01FF; Case map
+
+ 0200; 0201; Case map
+
+ 0202; 0203; Case map
+
+ 0204; 0205; Case map
+
+ 0206; 0207; Case map
+
+ 0208; 0209; Case map
+
+ 020A; 020B; Case map
+
+ 020C; 020D; Case map
+
+ 020E; 020F; Case map
+
+ 0210; 0211; Case map
+
+ 0212; 0213; Case map
+
+ 0214; 0215; Case map
+
+ 0216; 0217; Case map
+
+ 0218; 0219; Case map
+
+ 021A; 021B; Case map
+
+ 021C; 021D; Case map
+
+ 021E; 021F; Case map
+
+ 0220; 019E; Case map
+
+ 0222; 0223; Case map
+
+ 0224; 0225; Case map
+
+ 0226; 0227; Case map
+
+ 0228; 0229; Case map
+
+ 022A; 022B; Case map
+
+ 022C; 022D; Case map
+
+ 022E; 022F; Case map
+
+ 0230; 0231; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0232; 0233; Case map
+
+ 0345; 03B9; Case map
+
+ 037A; 0020 03B9; Additional folding
+
+ 0386; 03AC; Case map
+
+ 0388; 03AD; Case map
+
+ 0389; 03AE; Case map
+
+ 038A; 03AF; Case map
+
+ 038C; 03CC; Case map
+
+ 038E; 03CD; Case map
+
+ 038F; 03CE; Case map
+
+ 0390; 03B9 0308 0301; Case map
+
+ 0391; 03B1; Case map
+
+ 0392; 03B2; Case map
+
+ 0393; 03B3; Case map
+
+ 0394; 03B4; Case map
+
+ 0395; 03B5; Case map
+
+ 0396; 03B6; Case map
+
+ 0397; 03B7; Case map
+
+ 0398; 03B8; Case map
+
+ 0399; 03B9; Case map
+
+ 039A; 03BA; Case map
+
+ 039B; 03BB; Case map
+
+ 039C; 03BC; Case map
+
+ 039D; 03BD; Case map
+
+ 039E; 03BE; Case map
+
+ 039F; 03BF; Case map
+
+ 03A0; 03C0; Case map
+
+ 03A1; 03C1; Case map
+
+ 03A3; 03C3; Case map
+
+ 03A4; 03C4; Case map
+
+ 03A5; 03C5; Case map
+
+ 03A6; 03C6; Case map
+
+ 03A7; 03C7; Case map
+
+ 03A8; 03C8; Case map
+
+ 03A9; 03C9; Case map
+
+ 03AA; 03CA; Case map
+
+ 03AB; 03CB; Case map
+
+ 03B0; 03C5 0308 0301; Case map
+
+ 03C2; 03C3; Case map
+
+ 03D0; 03B2; Case map
+
+ 03D1; 03B8; Case map
+
+ 03D2; 03C5; Additional folding
+
+ 03D3; 03CD; Additional folding
+
+ 03D4; 03CB; Additional folding
+
+ 03D5; 03C6; Case map
+
+ 03D6; 03C0; Case map
+
+ 03D8; 03D9; Case map
+
+ 03DA; 03DB; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 03DC; 03DD; Case map
+
+ 03DE; 03DF; Case map
+
+ 03E0; 03E1; Case map
+
+ 03E2; 03E3; Case map
+
+ 03E4; 03E5; Case map
+
+ 03E6; 03E7; Case map
+
+ 03E8; 03E9; Case map
+
+ 03EA; 03EB; Case map
+
+ 03EC; 03ED; Case map
+
+ 03EE; 03EF; Case map
+
+ 03F0; 03BA; Case map
+
+ 03F1; 03C1; Case map
+
+ 03F2; 03C3; Case map
+
+ 03F4; 03B8; Case map
+
+ 03F5; 03B5; Case map
+
+ 0400; 0450; Case map
+
+ 0401; 0451; Case map
+
+ 0402; 0452; Case map
+
+ 0403; 0453; Case map
+
+ 0404; 0454; Case map
+
+ 0405; 0455; Case map
+
+ 0406; 0456; Case map
+
+ 0407; 0457; Case map
+
+ 0408; 0458; Case map
+
+ 0409; 0459; Case map
+
+ 040A; 045A; Case map
+
+ 040B; 045B; Case map
+
+ 040C; 045C; Case map
+
+ 040D; 045D; Case map
+
+ 040E; 045E; Case map
+
+ 040F; 045F; Case map
+
+ 0410; 0430; Case map
+
+ 0411; 0431; Case map
+
+ 0412; 0432; Case map
+
+ 0413; 0433; Case map
+
+ 0414; 0434; Case map
+
+ 0415; 0435; Case map
+
+ 0416; 0436; Case map
+
+ 0417; 0437; Case map
+
+ 0418; 0438; Case map
+
+ 0419; 0439; Case map
+
+ 041A; 043A; Case map
+
+ 041B; 043B; Case map
+
+ 041C; 043C; Case map
+
+ 041D; 043D; Case map
+
+ 041E; 043E; Case map
+
+ 041F; 043F; Case map
+
+ 0420; 0440; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0421; 0441; Case map
+
+ 0422; 0442; Case map
+
+ 0423; 0443; Case map
+
+ 0424; 0444; Case map
+
+ 0425; 0445; Case map
+
+ 0426; 0446; Case map
+
+ 0427; 0447; Case map
+
+ 0428; 0448; Case map
+
+ 0429; 0449; Case map
+
+ 042A; 044A; Case map
+
+ 042B; 044B; Case map
+
+ 042C; 044C; Case map
+
+ 042D; 044D; Case map
+
+ 042E; 044E; Case map
+
+ 042F; 044F; Case map
+
+ 0460; 0461; Case map
+
+ 0462; 0463; Case map
+
+ 0464; 0465; Case map
+
+ 0466; 0467; Case map
+
+ 0468; 0469; Case map
+
+ 046A; 046B; Case map
+
+ 046C; 046D; Case map
+
+ 046E; 046F; Case map
+
+ 0470; 0471; Case map
+
+ 0472; 0473; Case map
+
+ 0474; 0475; Case map
+
+ 0476; 0477; Case map
+
+ 0478; 0479; Case map
+
+ 047A; 047B; Case map
+
+ 047C; 047D; Case map
+
+ 047E; 047F; Case map
+
+ 0480; 0481; Case map
+
+ 048A; 048B; Case map
+
+ 048C; 048D; Case map
+
+ 048E; 048F; Case map
+
+ 0490; 0491; Case map
+
+ 0492; 0493; Case map
+
+ 0494; 0495; Case map
+
+ 0496; 0497; Case map
+
+ 0498; 0499; Case map
+
+ 049A; 049B; Case map
+
+ 049C; 049D; Case map
+
+ 049E; 049F; Case map
+
+ 04A0; 04A1; Case map
+
+ 04A2; 04A3; Case map
+
+ 04A4; 04A5; Case map
+
+ 04A6; 04A7; Case map
+
+ 04A8; 04A9; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 04AA; 04AB; Case map
+
+ 04AC; 04AD; Case map
+
+ 04AE; 04AF; Case map
+
+ 04B0; 04B1; Case map
+
+ 04B2; 04B3; Case map
+
+ 04B4; 04B5; Case map
+
+ 04B6; 04B7; Case map
+
+ 04B8; 04B9; Case map
+
+ 04BA; 04BB; Case map
+
+ 04BC; 04BD; Case map
+
+ 04BE; 04BF; Case map
+
+ 04C1; 04C2; Case map
+
+ 04C3; 04C4; Case map
+
+ 04C5; 04C6; Case map
+
+ 04C7; 04C8; Case map
+
+ 04C9; 04CA; Case map
+
+ 04CB; 04CC; Case map
+
+ 04CD; 04CE; Case map
+
+ 04D0; 04D1; Case map
+
+ 04D2; 04D3; Case map
+
+ 04D4; 04D5; Case map
+
+ 04D6; 04D7; Case map
+
+ 04D8; 04D9; Case map
+
+ 04DA; 04DB; Case map
+
+ 04DC; 04DD; Case map
+
+ 04DE; 04DF; Case map
+
+ 04E0; 04E1; Case map
+
+ 04E2; 04E3; Case map
+
+ 04E4; 04E5; Case map
+
+ 04E6; 04E7; Case map
+
+ 04E8; 04E9; Case map
+
+ 04EA; 04EB; Case map
+
+ 04EC; 04ED; Case map
+
+ 04EE; 04EF; Case map
+
+ 04F0; 04F1; Case map
+
+ 04F2; 04F3; Case map
+
+ 04F4; 04F5; Case map
+
+ 04F8; 04F9; Case map
+
+ 0500; 0501; Case map
+
+ 0502; 0503; Case map
+
+ 0504; 0505; Case map
+
+ 0506; 0507; Case map
+
+ 0508; 0509; Case map
+
+ 050A; 050B; Case map
+
+ 050C; 050D; Case map
+
+ 050E; 050F; Case map
+
+ 0531; 0561; Case map
+
+ 0532; 0562; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0533; 0563; Case map
+
+ 0534; 0564; Case map
+
+ 0535; 0565; Case map
+
+ 0536; 0566; Case map
+
+ 0537; 0567; Case map
+
+ 0538; 0568; Case map
+
+ 0539; 0569; Case map
+
+ 053A; 056A; Case map
+
+ 053B; 056B; Case map
+
+ 053C; 056C; Case map
+
+ 053D; 056D; Case map
+
+ 053E; 056E; Case map
+
+ 053F; 056F; Case map
+
+ 0540; 0570; Case map
+
+ 0541; 0571; Case map
+
+ 0542; 0572; Case map
+
+ 0543; 0573; Case map
+
+ 0544; 0574; Case map
+
+ 0545; 0575; Case map
+
+ 0546; 0576; Case map
+
+ 0547; 0577; Case map
+
+ 0548; 0578; Case map
+
+ 0549; 0579; Case map
+
+ 054A; 057A; Case map
+
+ 054B; 057B; Case map
+
+ 054C; 057C; Case map
+
+ 054D; 057D; Case map
+
+ 054E; 057E; Case map
+
+ 054F; 057F; Case map
+
+ 0550; 0580; Case map
+
+ 0551; 0581; Case map
+
+ 0552; 0582; Case map
+
+ 0553; 0583; Case map
+
+ 0554; 0584; Case map
+
+ 0555; 0585; Case map
+
+ 0556; 0586; Case map
+
+ 0587; 0565 0582; Case map
+
+ 1E00; 1E01; Case map
+
+ 1E02; 1E03; Case map
+
+ 1E04; 1E05; Case map
+
+ 1E06; 1E07; Case map
+
+ 1E08; 1E09; Case map
+
+ 1E0A; 1E0B; Case map
+
+ 1E0C; 1E0D; Case map
+
+ 1E0E; 1E0F; Case map
+
+ 1E10; 1E11; Case map
+
+ 1E12; 1E13; Case map
+
+ 1E14; 1E15; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1E16; 1E17; Case map
+
+ 1E18; 1E19; Case map
+
+ 1E1A; 1E1B; Case map
+
+ 1E1C; 1E1D; Case map
+
+ 1E1E; 1E1F; Case map
+
+ 1E20; 1E21; Case map
+
+ 1E22; 1E23; Case map
+
+ 1E24; 1E25; Case map
+
+ 1E26; 1E27; Case map
+
+ 1E28; 1E29; Case map
+
+ 1E2A; 1E2B; Case map
+
+ 1E2C; 1E2D; Case map
+
+ 1E2E; 1E2F; Case map
+
+ 1E30; 1E31; Case map
+
+ 1E32; 1E33; Case map
+
+ 1E34; 1E35; Case map
+
+ 1E36; 1E37; Case map
+
+ 1E38; 1E39; Case map
+
+ 1E3A; 1E3B; Case map
+
+ 1E3C; 1E3D; Case map
+
+ 1E3E; 1E3F; Case map
+
+ 1E40; 1E41; Case map
+
+ 1E42; 1E43; Case map
+
+ 1E44; 1E45; Case map
+
+ 1E46; 1E47; Case map
+
+ 1E48; 1E49; Case map
+
+ 1E4A; 1E4B; Case map
+
+ 1E4C; 1E4D; Case map
+
+ 1E4E; 1E4F; Case map
+
+ 1E50; 1E51; Case map
+
+ 1E52; 1E53; Case map
+
+ 1E54; 1E55; Case map
+
+ 1E56; 1E57; Case map
+
+ 1E58; 1E59; Case map
+
+ 1E5A; 1E5B; Case map
+
+ 1E5C; 1E5D; Case map
+
+ 1E5E; 1E5F; Case map
+
+ 1E60; 1E61; Case map
+
+ 1E62; 1E63; Case map
+
+ 1E64; 1E65; Case map
+
+ 1E66; 1E67; Case map
+
+ 1E68; 1E69; Case map
+
+ 1E6A; 1E6B; Case map
+
+ 1E6C; 1E6D; Case map
+
+ 1E6E; 1E6F; Case map
+
+ 1E70; 1E71; Case map
+
+ 1E72; 1E73; Case map
+
+ 1E74; 1E75; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1E76; 1E77; Case map
+
+ 1E78; 1E79; Case map
+
+ 1E7A; 1E7B; Case map
+
+ 1E7C; 1E7D; Case map
+
+ 1E7E; 1E7F; Case map
+
+ 1E80; 1E81; Case map
+
+ 1E82; 1E83; Case map
+
+ 1E84; 1E85; Case map
+
+ 1E86; 1E87; Case map
+
+ 1E88; 1E89; Case map
+
+ 1E8A; 1E8B; Case map
+
+ 1E8C; 1E8D; Case map
+
+ 1E8E; 1E8F; Case map
+
+ 1E90; 1E91; Case map
+
+ 1E92; 1E93; Case map
+
+ 1E94; 1E95; Case map
+
+ 1E96; 0068 0331; Case map
+
+ 1E97; 0074 0308; Case map
+
+ 1E98; 0077 030A; Case map
+
+ 1E99; 0079 030A; Case map
+
+ 1E9A; 0061 02BE; Case map
+
+ 1E9B; 1E61; Case map
+
+ 1EA0; 1EA1; Case map
+
+ 1EA2; 1EA3; Case map
+
+ 1EA4; 1EA5; Case map
+
+ 1EA6; 1EA7; Case map
+
+ 1EA8; 1EA9; Case map
+
+ 1EAA; 1EAB; Case map
+
+ 1EAC; 1EAD; Case map
+
+ 1EAE; 1EAF; Case map
+
+ 1EB0; 1EB1; Case map
+
+ 1EB2; 1EB3; Case map
+
+ 1EB4; 1EB5; Case map
+
+ 1EB6; 1EB7; Case map
+
+ 1EB8; 1EB9; Case map
+
+ 1EBA; 1EBB; Case map
+
+ 1EBC; 1EBD; Case map
+
+ 1EBE; 1EBF; Case map
+
+ 1EC0; 1EC1; Case map
+
+ 1EC2; 1EC3; Case map
+
+ 1EC4; 1EC5; Case map
+
+ 1EC6; 1EC7; Case map
+
+ 1EC8; 1EC9; Case map
+
+ 1ECA; 1ECB; Case map
+
+ 1ECC; 1ECD; Case map
+
+ 1ECE; 1ECF; Case map
+
+ 1ED0; 1ED1; Case map
+
+ 1ED2; 1ED3; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1ED4; 1ED5; Case map
+
+ 1ED6; 1ED7; Case map
+
+ 1ED8; 1ED9; Case map
+
+ 1EDA; 1EDB; Case map
+
+ 1EDC; 1EDD; Case map
+
+ 1EDE; 1EDF; Case map
+
+ 1EE0; 1EE1; Case map
+
+ 1EE2; 1EE3; Case map
+
+ 1EE4; 1EE5; Case map
+
+ 1EE6; 1EE7; Case map
+
+ 1EE8; 1EE9; Case map
+
+ 1EEA; 1EEB; Case map
+
+ 1EEC; 1EED; Case map
+
+ 1EEE; 1EEF; Case map
+
+ 1EF0; 1EF1; Case map
+
+ 1EF2; 1EF3; Case map
+
+ 1EF4; 1EF5; Case map
+
+ 1EF6; 1EF7; Case map
+
+ 1EF8; 1EF9; Case map
+
+ 1F08; 1F00; Case map
+
+ 1F09; 1F01; Case map
+
+ 1F0A; 1F02; Case map
+
+ 1F0B; 1F03; Case map
+
+ 1F0C; 1F04; Case map
+
+ 1F0D; 1F05; Case map
+
+ 1F0E; 1F06; Case map
+
+ 1F0F; 1F07; Case map
+
+ 1F18; 1F10; Case map
+
+ 1F19; 1F11; Case map
+
+ 1F1A; 1F12; Case map
+
+ 1F1B; 1F13; Case map
+
+ 1F1C; 1F14; Case map
+
+ 1F1D; 1F15; Case map
+
+ 1F28; 1F20; Case map
+
+ 1F29; 1F21; Case map
+
+ 1F2A; 1F22; Case map
+
+ 1F2B; 1F23; Case map
+
+ 1F2C; 1F24; Case map
+
+ 1F2D; 1F25; Case map
+
+ 1F2E; 1F26; Case map
+
+ 1F2F; 1F27; Case map
+
+ 1F38; 1F30; Case map
+
+ 1F39; 1F31; Case map
+
+ 1F3A; 1F32; Case map
+
+ 1F3B; 1F33; Case map
+
+ 1F3C; 1F34; Case map
+
+ 1F3D; 1F35; Case map
+
+ 1F3E; 1F36; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1F3F; 1F37; Case map
+
+ 1F48; 1F40; Case map
+
+ 1F49; 1F41; Case map
+
+ 1F4A; 1F42; Case map
+
+ 1F4B; 1F43; Case map
+
+ 1F4C; 1F44; Case map
+
+ 1F4D; 1F45; Case map
+
+ 1F50; 03C5 0313; Case map
+
+ 1F52; 03C5 0313 0300; Case map
+
+ 1F54; 03C5 0313 0301; Case map
+
+ 1F56; 03C5 0313 0342; Case map
+
+ 1F59; 1F51; Case map
+
+ 1F5B; 1F53; Case map
+
+ 1F5D; 1F55; Case map
+
+ 1F5F; 1F57; Case map
+
+ 1F68; 1F60; Case map
+
+ 1F69; 1F61; Case map
+
+ 1F6A; 1F62; Case map
+
+ 1F6B; 1F63; Case map
+
+ 1F6C; 1F64; Case map
+
+ 1F6D; 1F65; Case map
+
+ 1F6E; 1F66; Case map
+
+ 1F6F; 1F67; Case map
+
+ 1F80; 1F00 03B9; Case map
+
+ 1F81; 1F01 03B9; Case map
+
+ 1F82; 1F02 03B9; Case map
+
+ 1F83; 1F03 03B9; Case map
+
+ 1F84; 1F04 03B9; Case map
+
+ 1F85; 1F05 03B9; Case map
+
+ 1F86; 1F06 03B9; Case map
+
+ 1F87; 1F07 03B9; Case map
+
+ 1F88; 1F00 03B9; Case map
+
+ 1F89; 1F01 03B9; Case map
+
+ 1F8A; 1F02 03B9; Case map
+
+ 1F8B; 1F03 03B9; Case map
+
+ 1F8C; 1F04 03B9; Case map
+
+ 1F8D; 1F05 03B9; Case map
+
+ 1F8E; 1F06 03B9; Case map
+
+ 1F8F; 1F07 03B9; Case map
+
+ 1F90; 1F20 03B9; Case map
+
+ 1F91; 1F21 03B9; Case map
+
+ 1F92; 1F22 03B9; Case map
+
+ 1F93; 1F23 03B9; Case map
+
+ 1F94; 1F24 03B9; Case map
+
+ 1F95; 1F25 03B9; Case map
+
+ 1F96; 1F26 03B9; Case map
+
+ 1F97; 1F27 03B9; Case map
+
+ 1F98; 1F20 03B9; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1F99; 1F21 03B9; Case map
+
+ 1F9A; 1F22 03B9; Case map
+
+ 1F9B; 1F23 03B9; Case map
+
+ 1F9C; 1F24 03B9; Case map
+
+ 1F9D; 1F25 03B9; Case map
+
+ 1F9E; 1F26 03B9; Case map
+
+ 1F9F; 1F27 03B9; Case map
+
+ 1FA0; 1F60 03B9; Case map
+
+ 1FA1; 1F61 03B9; Case map
+
+ 1FA2; 1F62 03B9; Case map
+
+ 1FA3; 1F63 03B9; Case map
+
+ 1FA4; 1F64 03B9; Case map
+
+ 1FA5; 1F65 03B9; Case map
+
+ 1FA6; 1F66 03B9; Case map
+
+ 1FA7; 1F67 03B9; Case map
+
+ 1FA8; 1F60 03B9; Case map
+
+ 1FA9; 1F61 03B9; Case map
+
+ 1FAA; 1F62 03B9; Case map
+
+ 1FAB; 1F63 03B9; Case map
+
+ 1FAC; 1F64 03B9; Case map
+
+ 1FAD; 1F65 03B9; Case map
+
+ 1FAE; 1F66 03B9; Case map
+
+ 1FAF; 1F67 03B9; Case map
+
+ 1FB2; 1F70 03B9; Case map
+
+ 1FB3; 03B1 03B9; Case map
+
+ 1FB4; 03AC 03B9; Case map
+
+ 1FB6; 03B1 0342; Case map
+
+ 1FB7; 03B1 0342 03B9; Case map
+
+ 1FB8; 1FB0; Case map
+
+ 1FB9; 1FB1; Case map
+
+ 1FBA; 1F70; Case map
+
+ 1FBB; 1F71; Case map
+
+ 1FBC; 03B1 03B9; Case map
+
+ 1FBE; 03B9; Case map
+
+ 1FC2; 1F74 03B9; Case map
+
+ 1FC3; 03B7 03B9; Case map
+
+ 1FC4; 03AE 03B9; Case map
+
+ 1FC6; 03B7 0342; Case map
+
+ 1FC7; 03B7 0342 03B9; Case map
+
+ 1FC8; 1F72; Case map
+
+ 1FC9; 1F73; Case map
+
+ 1FCA; 1F74; Case map
+
+ 1FCB; 1F75; Case map
+
+ 1FCC; 03B7 03B9; Case map
+
+ 1FD2; 03B9 0308 0300; Case map
+
+ 1FD3; 03B9 0308 0301; Case map
+
+ 1FD6; 03B9 0342; Case map
+
+ 1FD7; 03B9 0308 0342; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1FD8; 1FD0; Case map
+
+ 1FD9; 1FD1; Case map
+
+ 1FDA; 1F76; Case map
+
+ 1FDB; 1F77; Case map
+
+ 1FE2; 03C5 0308 0300; Case map
+
+ 1FE3; 03C5 0308 0301; Case map
+
+ 1FE4; 03C1 0313; Case map
+
+ 1FE6; 03C5 0342; Case map
+
+ 1FE7; 03C5 0308 0342; Case map
+
+ 1FE8; 1FE0; Case map
+
+ 1FE9; 1FE1; Case map
+
+ 1FEA; 1F7A; Case map
+
+ 1FEB; 1F7B; Case map
+
+ 1FEC; 1FE5; Case map
+
+ 1FF2; 1F7C 03B9; Case map
+
+ 1FF3; 03C9 03B9; Case map
+
+ 1FF4; 03CE 03B9; Case map
+
+ 1FF6; 03C9 0342; Case map
+
+ 1FF7; 03C9 0342 03B9; Case map
+
+ 1FF8; 1F78; Case map
+
+ 1FF9; 1F79; Case map
+
+ 1FFA; 1F7C; Case map
+
+ 1FFB; 1F7D; Case map
+
+ 1FFC; 03C9 03B9; Case map
+
+ 20A8; 0072 0073; Additional folding
+
+ 2102; 0063; Additional folding
+
+ 2103; 00B0 0063; Additional folding
+
+ 2107; 025B; Additional folding
+
+ 2109; 00B0 0066; Additional folding
+
+ 210B; 0068; Additional folding
+
+ 210C; 0068; Additional folding
+
+ 210D; 0068; Additional folding
+
+ 2110; 0069; Additional folding
+
+ 2111; 0069; Additional folding
+
+ 2112; 006C; Additional folding
+
+ 2115; 006E; Additional folding
+
+ 2116; 006E 006F; Additional folding
+
+ 2119; 0070; Additional folding
+
+ 211A; 0071; Additional folding
+
+ 211B; 0072; Additional folding
+
+ 211C; 0072; Additional folding
+
+ 211D; 0072; Additional folding
+
+ 2120; 0073 006D; Additional folding
+
+ 2121; 0074 0065 006C; Additional folding
+
+ 2122; 0074 006D; Additional folding
+
+ 2124; 007A; Additional folding
+
+ 2126; 03C9; Case map
+
+ 2128; 007A; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 212A; 006B; Case map
+
+ 212B; 00E5; Case map
+
+ 212C; 0062; Additional folding
+
+ 212D; 0063; Additional folding
+
+ 2130; 0065; Additional folding
+
+ 2131; 0066; Additional folding
+
+ 2133; 006D; Additional folding
+
+ 213E; 03B3; Additional folding
+
+ 213F; 03C0; Additional folding
+
+ 2145; 0064; Additional folding
+
+ 2160; 2170; Case map
+
+ 2161; 2171; Case map
+
+ 2162; 2172; Case map
+
+ 2163; 2173; Case map
+
+ 2164; 2174; Case map
+
+ 2165; 2175; Case map
+
+ 2166; 2176; Case map
+
+ 2167; 2177; Case map
+
+ 2168; 2178; Case map
+
+ 2169; 2179; Case map
+
+ 216A; 217A; Case map
+
+ 216B; 217B; Case map
+
+ 216C; 217C; Case map
+
+ 216D; 217D; Case map
+
+ 216E; 217E; Case map
+
+ 216F; 217F; Case map
+
+ 24B6; 24D0; Case map
+
+ 24B7; 24D1; Case map
+
+ 24B8; 24D2; Case map
+
+ 24B9; 24D3; Case map
+
+ 24BA; 24D4; Case map
+
+ 24BB; 24D5; Case map
+
+ 24BC; 24D6; Case map
+
+ 24BD; 24D7; Case map
+
+ 24BE; 24D8; Case map
+
+ 24BF; 24D9; Case map
+
+ 24C0; 24DA; Case map
+
+ 24C1; 24DB; Case map
+
+ 24C2; 24DC; Case map
+
+ 24C3; 24DD; Case map
+
+ 24C4; 24DE; Case map
+
+ 24C5; 24DF; Case map
+
+ 24C6; 24E0; Case map
+
+ 24C7; 24E1; Case map
+
+ 24C8; 24E2; Case map
+
+ 24C9; 24E3; Case map
+
+ 24CA; 24E4; Case map
+
+ 24CB; 24E5; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 24CC; 24E6; Case map
+
+ 24CD; 24E7; Case map
+
+ 24CE; 24E8; Case map
+
+ 24CF; 24E9; Case map
+
+ 3371; 0068 0070 0061; Additional folding
+
+ 3373; 0061 0075; Additional folding
+
+ 3375; 006F 0076; Additional folding
+
+ 3380; 0070 0061; Additional folding
+
+ 3381; 006E 0061; Additional folding
+
+ 3382; 03BC 0061; Additional folding
+
+ 3383; 006D 0061; Additional folding
+
+ 3384; 006B 0061; Additional folding
+
+ 3385; 006B 0062; Additional folding
+
+ 3386; 006D 0062; Additional folding
+
+ 3387; 0067 0062; Additional folding
+
+ 338A; 0070 0066; Additional folding
+
+ 338B; 006E 0066; Additional folding
+
+ 338C; 03BC 0066; Additional folding
+
+ 3390; 0068 007A; Additional folding
+
+ 3391; 006B 0068 007A; Additional folding
+
+ 3392; 006D 0068 007A; Additional folding
+
+ 3393; 0067 0068 007A; Additional folding
+
+ 3394; 0074 0068 007A; Additional folding
+
+ 33A9; 0070 0061; Additional folding
+
+ 33AA; 006B 0070 0061; Additional folding
+
+ 33AB; 006D 0070 0061; Additional folding
+
+ 33AC; 0067 0070 0061; Additional folding
+
+ 33B4; 0070 0076; Additional folding
+
+ 33B5; 006E 0076; Additional folding
+
+ 33B6; 03BC 0076; Additional folding
+
+ 33B7; 006D 0076; Additional folding
+
+ 33B8; 006B 0076; Additional folding
+
+ 33B9; 006D 0076; Additional folding
+
+ 33BA; 0070 0077; Additional folding
+
+ 33BB; 006E 0077; Additional folding
+
+ 33BC; 03BC 0077; Additional folding
+
+ 33BD; 006D 0077; Additional folding
+
+ 33BE; 006B 0077; Additional folding
+
+ 33BF; 006D 0077; Additional folding
+
+ 33C0; 006B 03C9; Additional folding
+
+ 33C1; 006D 03C9; Additional folding
+
+ 33C3; 0062 0071; Additional folding
+
+ 33C6; 0063 2215 006B 0067; Additional folding
+
+ 33C7; 0063 006F 002E; Additional folding
+
+ 33C8; 0064 0062; Additional folding
+
+ 33C9; 0067 0079; Additional folding
+
+ 33CB; 0068 0070; Additional folding
+
+ 33CD; 006B 006B; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 33CE; 006B 006D; Additional folding
+
+ 33D7; 0070 0068; Additional folding
+
+ 33D9; 0070 0070 006D; Additional folding
+
+ 33DA; 0070 0072; Additional folding
+
+ 33DC; 0073 0076; Additional folding
+
+ 33DD; 0077 0062; Additional folding
+
+ FB00; 0066 0066; Case map
+
+ FB01; 0066 0069; Case map
+
+ FB02; 0066 006C; Case map
+
+ FB03; 0066 0066 0069; Case map
+
+ FB04; 0066 0066 006C; Case map
+
+ FB05; 0073 0074; Case map
+
+ FB06; 0073 0074; Case map
+
+ FB13; 0574 0576; Case map
+
+ FB14; 0574 0565; Case map
+
+ FB15; 0574 056B; Case map
+
+ FB16; 057E 0576; Case map
+
+ FB17; 0574 056D; Case map
+
+ FF21; FF41; Case map
+
+ FF22; FF42; Case map
+
+ FF23; FF43; Case map
+
+ FF24; FF44; Case map
+
+ FF25; FF45; Case map
+
+ FF26; FF46; Case map
+
+ FF27; FF47; Case map
+
+ FF28; FF48; Case map
+
+ FF29; FF49; Case map
+
+ FF2A; FF4A; Case map
+
+ FF2B; FF4B; Case map
+
+ FF2C; FF4C; Case map
+
+ FF2D; FF4D; Case map
+
+ FF2E; FF4E; Case map
+
+ FF2F; FF4F; Case map
+
+ FF30; FF50; Case map
+
+ FF31; FF51; Case map
+
+ FF32; FF52; Case map
+
+ FF33; FF53; Case map
+
+ FF34; FF54; Case map
+
+ FF35; FF55; Case map
+
+ FF36; FF56; Case map
+
+ FF37; FF57; Case map
+
+ FF38; FF58; Case map
+
+ FF39; FF59; Case map
+
+ FF3A; FF5A; Case map
+
+ 10400; 10428; Case map
+
+ 10401; 10429; Case map
+
+ 10402; 1042A; Case map
+
+ 10403; 1042B; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 10404; 1042C; Case map
+
+ 10405; 1042D; Case map
+
+ 10406; 1042E; Case map
+
+ 10407; 1042F; Case map
+
+ 10408; 10430; Case map
+
+ 10409; 10431; Case map
+
+ 1040A; 10432; Case map
+
+ 1040B; 10433; Case map
+
+ 1040C; 10434; Case map
+
+ 1040D; 10435; Case map
+
+ 1040E; 10436; Case map
+
+ 1040F; 10437; Case map
+
+ 10410; 10438; Case map
+
+ 10411; 10439; Case map
+
+ 10412; 1043A; Case map
+
+ 10413; 1043B; Case map
+
+ 10414; 1043C; Case map
+
+ 10415; 1043D; Case map
+
+ 10416; 1043E; Case map
+
+ 10417; 1043F; Case map
+
+ 10418; 10440; Case map
+
+ 10419; 10441; Case map
+
+ 1041A; 10442; Case map
+
+ 1041B; 10443; Case map
+
+ 1041C; 10444; Case map
+
+ 1041D; 10445; Case map
+
+ 1041E; 10446; Case map
+
+ 1041F; 10447; Case map
+
+ 10420; 10448; Case map
+
+ 10421; 10449; Case map
+
+ 10422; 1044A; Case map
+
+ 10423; 1044B; Case map
+
+ 10424; 1044C; Case map
+
+ 10425; 1044D; Case map
+
+ 1D400; 0061; Additional folding
+
+ 1D401; 0062; Additional folding
+
+ 1D402; 0063; Additional folding
+
+ 1D403; 0064; Additional folding
+
+ 1D404; 0065; Additional folding
+
+ 1D405; 0066; Additional folding
+
+ 1D406; 0067; Additional folding
+
+ 1D407; 0068; Additional folding
+
+ 1D408; 0069; Additional folding
+
+ 1D409; 006A; Additional folding
+
+ 1D40A; 006B; Additional folding
+
+ 1D40B; 006C; Additional folding
+
+ 1D40C; 006D; Additional folding
+
+ 1D40D; 006E; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D40E; 006F; Additional folding
+
+ 1D40F; 0070; Additional folding
+
+ 1D410; 0071; Additional folding
+
+ 1D411; 0072; Additional folding
+
+ 1D412; 0073; Additional folding
+
+ 1D413; 0074; Additional folding
+
+ 1D414; 0075; Additional folding
+
+ 1D415; 0076; Additional folding
+
+ 1D416; 0077; Additional folding
+
+ 1D417; 0078; Additional folding
+
+ 1D418; 0079; Additional folding
+
+ 1D419; 007A; Additional folding
+
+ 1D434; 0061; Additional folding
+
+ 1D435; 0062; Additional folding
+
+ 1D436; 0063; Additional folding
+
+ 1D437; 0064; Additional folding
+
+ 1D438; 0065; Additional folding
+
+ 1D439; 0066; Additional folding
+
+ 1D43A; 0067; Additional folding
+
+ 1D43B; 0068; Additional folding
+
+ 1D43C; 0069; Additional folding
+
+ 1D43D; 006A; Additional folding
+
+ 1D43E; 006B; Additional folding
+
+ 1D43F; 006C; Additional folding
+
+ 1D440; 006D; Additional folding
+
+ 1D441; 006E; Additional folding
+
+ 1D442; 006F; Additional folding
+
+ 1D443; 0070; Additional folding
+
+ 1D444; 0071; Additional folding
+
+ 1D445; 0072; Additional folding
+
+ 1D446; 0073; Additional folding
+
+ 1D447; 0074; Additional folding
+
+ 1D448; 0075; Additional folding
+
+ 1D449; 0076; Additional folding
+
+ 1D44A; 0077; Additional folding
+
+ 1D44B; 0078; Additional folding
+
+ 1D44C; 0079; Additional folding
+
+ 1D44D; 007A; Additional folding
+
+ 1D468; 0061; Additional folding
+
+ 1D469; 0062; Additional folding
+
+ 1D46A; 0063; Additional folding
+
+ 1D46B; 0064; Additional folding
+
+ 1D46C; 0065; Additional folding
+
+ 1D46D; 0066; Additional folding
+
+ 1D46E; 0067; Additional folding
+
+ 1D46F; 0068; Additional folding
+
+ 1D470; 0069; Additional folding
+
+ 1D471; 006A; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D472; 006B; Additional folding
+
+ 1D473; 006C; Additional folding
+
+ 1D474; 006D; Additional folding
+
+ 1D475; 006E; Additional folding
+
+ 1D476; 006F; Additional folding
+
+ 1D477; 0070; Additional folding
+
+ 1D478; 0071; Additional folding
+
+ 1D479; 0072; Additional folding
+
+ 1D47A; 0073; Additional folding
+
+ 1D47B; 0074; Additional folding
+
+ 1D47C; 0075; Additional folding
+
+ 1D47D; 0076; Additional folding
+
+ 1D47E; 0077; Additional folding
+
+ 1D47F; 0078; Additional folding
+
+ 1D480; 0079; Additional folding
+
+ 1D481; 007A; Additional folding
+
+ 1D49C; 0061; Additional folding
+
+ 1D49E; 0063; Additional folding
+
+ 1D49F; 0064; Additional folding
+
+ 1D4A2; 0067; Additional folding
+
+ 1D4A5; 006A; Additional folding
+
+ 1D4A6; 006B; Additional folding
+
+ 1D4A9; 006E; Additional folding
+
+ 1D4AA; 006F; Additional folding
+
+ 1D4AB; 0070; Additional folding
+
+ 1D4AC; 0071; Additional folding
+
+ 1D4AE; 0073; Additional folding
+
+ 1D4AF; 0074; Additional folding
+
+ 1D4B0; 0075; Additional folding
+
+ 1D4B1; 0076; Additional folding
+
+ 1D4B2; 0077; Additional folding
+
+ 1D4B3; 0078; Additional folding
+
+ 1D4B4; 0079; Additional folding
+
+ 1D4B5; 007A; Additional folding
+
+ 1D4D0; 0061; Additional folding
+
+ 1D4D1; 0062; Additional folding
+
+ 1D4D2; 0063; Additional folding
+
+ 1D4D3; 0064; Additional folding
+
+ 1D4D4; 0065; Additional folding
+
+ 1D4D5; 0066; Additional folding
+
+ 1D4D6; 0067; Additional folding
+
+ 1D4D7; 0068; Additional folding
+
+ 1D4D8; 0069; Additional folding
+
+ 1D4D9; 006A; Additional folding
+
+ 1D4DA; 006B; Additional folding
+
+ 1D4DB; 006C; Additional folding
+
+ 1D4DC; 006D; Additional folding
+
+ 1D4DD; 006E; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D4DE; 006F; Additional folding
+
+ 1D4DF; 0070; Additional folding
+
+ 1D4E0; 0071; Additional folding
+
+ 1D4E1; 0072; Additional folding
+
+ 1D4E2; 0073; Additional folding
+
+ 1D4E3; 0074; Additional folding
+
+ 1D4E4; 0075; Additional folding
+
+ 1D4E5; 0076; Additional folding
+
+ 1D4E6; 0077; Additional folding
+
+ 1D4E7; 0078; Additional folding
+
+ 1D4E8; 0079; Additional folding
+
+ 1D4E9; 007A; Additional folding
+
+ 1D504; 0061; Additional folding
+
+ 1D505; 0062; Additional folding
+
+ 1D507; 0064; Additional folding
+
+ 1D508; 0065; Additional folding
+
+ 1D509; 0066; Additional folding
+
+ 1D50A; 0067; Additional folding
+
+ 1D50D; 006A; Additional folding
+
+ 1D50E; 006B; Additional folding
+
+ 1D50F; 006C; Additional folding
+
+ 1D510; 006D; Additional folding
+
+ 1D511; 006E; Additional folding
+
+ 1D512; 006F; Additional folding
+
+ 1D513; 0070; Additional folding
+
+ 1D514; 0071; Additional folding
+
+ 1D516; 0073; Additional folding
+
+ 1D517; 0074; Additional folding
+
+ 1D518; 0075; Additional folding
+
+ 1D519; 0076; Additional folding
+
+ 1D51A; 0077; Additional folding
+
+ 1D51B; 0078; Additional folding
+
+ 1D51C; 0079; Additional folding
+
+ 1D538; 0061; Additional folding
+
+ 1D539; 0062; Additional folding
+
+ 1D53B; 0064; Additional folding
+
+ 1D53C; 0065; Additional folding
+
+ 1D53D; 0066; Additional folding
+
+ 1D53E; 0067; Additional folding
+
+ 1D540; 0069; Additional folding
+
+ 1D541; 006A; Additional folding
+
+ 1D542; 006B; Additional folding
+
+ 1D543; 006C; Additional folding
+
+ 1D544; 006D; Additional folding
+
+ 1D546; 006F; Additional folding
+
+ 1D54A; 0073; Additional folding
+
+ 1D54B; 0074; Additional folding
+
+ 1D54C; 0075; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D54D; 0076; Additional folding
+
+ 1D54E; 0077; Additional folding
+
+ 1D54F; 0078; Additional folding
+
+ 1D550; 0079; Additional folding
+
+ 1D56C; 0061; Additional folding
+
+ 1D56D; 0062; Additional folding
+
+ 1D56E; 0063; Additional folding
+
+ 1D56F; 0064; Additional folding
+
+ 1D570; 0065; Additional folding
+
+ 1D571; 0066; Additional folding
+
+ 1D572; 0067; Additional folding
+
+ 1D573; 0068; Additional folding
+
+ 1D574; 0069; Additional folding
+
+ 1D575; 006A; Additional folding
+
+ 1D576; 006B; Additional folding
+
+ 1D577; 006C; Additional folding
+
+ 1D578; 006D; Additional folding
+
+ 1D579; 006E; Additional folding
+
+ 1D57A; 006F; Additional folding
+
+ 1D57B; 0070; Additional folding
+
+ 1D57C; 0071; Additional folding
+
+ 1D57D; 0072; Additional folding
+
+ 1D57E; 0073; Additional folding
+
+ 1D57F; 0074; Additional folding
+
+ 1D580; 0075; Additional folding
+
+ 1D581; 0076; Additional folding
+
+ 1D582; 0077; Additional folding
+
+ 1D583; 0078; Additional folding
+
+ 1D584; 0079; Additional folding
+
+ 1D585; 007A; Additional folding
+
+ 1D5A0; 0061; Additional folding
+
+ 1D5A1; 0062; Additional folding
+
+ 1D5A2; 0063; Additional folding
+
+ 1D5A3; 0064; Additional folding
+
+ 1D5A4; 0065; Additional folding
+
+ 1D5A5; 0066; Additional folding
+
+ 1D5A6; 0067; Additional folding
+
+ 1D5A7; 0068; Additional folding
+
+ 1D5A8; 0069; Additional folding
+
+ 1D5A9; 006A; Additional folding
+
+ 1D5AA; 006B; Additional folding
+
+ 1D5AB; 006C; Additional folding
+
+ 1D5AC; 006D; Additional folding
+
+ 1D5AD; 006E; Additional folding
+
+ 1D5AE; 006F; Additional folding
+
+ 1D5AF; 0070; Additional folding
+
+ 1D5B0; 0071; Additional folding
+
+ 1D5B1; 0072; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D5B2; 0073; Additional folding
+
+ 1D5B3; 0074; Additional folding
+
+ 1D5B4; 0075; Additional folding
+
+ 1D5B5; 0076; Additional folding
+
+ 1D5B6; 0077; Additional folding
+
+ 1D5B7; 0078; Additional folding
+
+ 1D5B8; 0079; Additional folding
+
+ 1D5B9; 007A; Additional folding
+
+ 1D5D4; 0061; Additional folding
+
+ 1D5D5; 0062; Additional folding
+
+ 1D5D6; 0063; Additional folding
+
+ 1D5D7; 0064; Additional folding
+
+ 1D5D8; 0065; Additional folding
+
+ 1D5D9; 0066; Additional folding
+
+ 1D5DA; 0067; Additional folding
+
+ 1D5DB; 0068; Additional folding
+
+ 1D5DC; 0069; Additional folding
+
+ 1D5DD; 006A; Additional folding
+
+ 1D5DE; 006B; Additional folding
+
+ 1D5DF; 006C; Additional folding
+
+ 1D5E0; 006D; Additional folding
+
+ 1D5E1; 006E; Additional folding
+
+ 1D5E2; 006F; Additional folding
+
+ 1D5E3; 0070; Additional folding
+
+ 1D5E4; 0071; Additional folding
+
+ 1D5E5; 0072; Additional folding
+
+ 1D5E6; 0073; Additional folding
+
+ 1D5E7; 0074; Additional folding
+
+ 1D5E8; 0075; Additional folding
+
+ 1D5E9; 0076; Additional folding
+
+ 1D5EA; 0077; Additional folding
+
+ 1D5EB; 0078; Additional folding
+
+ 1D5EC; 0079; Additional folding
+
+ 1D5ED; 007A; Additional folding
+
+ 1D608; 0061; Additional folding
+
+ 1D609; 0062; Additional folding
+
+ 1D60A; 0063; Additional folding
+
+ 1D60B; 0064; Additional folding
+
+ 1D60C; 0065; Additional folding
+
+ 1D60D; 0066; Additional folding
+
+ 1D60E; 0067; Additional folding
+
+ 1D60F; 0068; Additional folding
+
+ 1D610; 0069; Additional folding
+
+ 1D611; 006A; Additional folding
+
+ 1D612; 006B; Additional folding
+
+ 1D613; 006C; Additional folding
+
+ 1D614; 006D; Additional folding
+
+ 1D615; 006E; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D616; 006F; Additional folding
+
+ 1D617; 0070; Additional folding
+
+ 1D618; 0071; Additional folding
+
+ 1D619; 0072; Additional folding
+
+ 1D61A; 0073; Additional folding
+
+ 1D61B; 0074; Additional folding
+
+ 1D61C; 0075; Additional folding
+
+ 1D61D; 0076; Additional folding
+
+ 1D61E; 0077; Additional folding
+
+ 1D61F; 0078; Additional folding
+
+ 1D620; 0079; Additional folding
+
+ 1D621; 007A; Additional folding
+
+ 1D63C; 0061; Additional folding
+
+ 1D63D; 0062; Additional folding
+
+ 1D63E; 0063; Additional folding
+
+ 1D63F; 0064; Additional folding
+
+ 1D640; 0065; Additional folding
+
+ 1D641; 0066; Additional folding
+
+ 1D642; 0067; Additional folding
+
+ 1D643; 0068; Additional folding
+
+ 1D644; 0069; Additional folding
+
+ 1D645; 006A; Additional folding
+
+ 1D646; 006B; Additional folding
+
+ 1D647; 006C; Additional folding
+
+ 1D648; 006D; Additional folding
+
+ 1D649; 006E; Additional folding
+
+ 1D64A; 006F; Additional folding
+
+ 1D64B; 0070; Additional folding
+
+ 1D64C; 0071; Additional folding
+
+ 1D64D; 0072; Additional folding
+
+ 1D64E; 0073; Additional folding
+
+ 1D64F; 0074; Additional folding
+
+ 1D650; 0075; Additional folding
+
+ 1D651; 0076; Additional folding
+
+ 1D652; 0077; Additional folding
+
+ 1D653; 0078; Additional folding
+
+ 1D654; 0079; Additional folding
+
+ 1D655; 007A; Additional folding
+
+ 1D670; 0061; Additional folding
+
+ 1D671; 0062; Additional folding
+
+ 1D672; 0063; Additional folding
+
+ 1D673; 0064; Additional folding
+
+ 1D674; 0065; Additional folding
+
+ 1D675; 0066; Additional folding
+
+ 1D676; 0067; Additional folding
+
+ 1D677; 0068; Additional folding
+
+ 1D678; 0069; Additional folding
+
+ 1D679; 006A; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D67A; 006B; Additional folding
+
+ 1D67B; 006C; Additional folding
+
+ 1D67C; 006D; Additional folding
+
+ 1D67D; 006E; Additional folding
+
+ 1D67E; 006F; Additional folding
+
+ 1D67F; 0070; Additional folding
+
+ 1D680; 0071; Additional folding
+
+ 1D681; 0072; Additional folding
+
+ 1D682; 0073; Additional folding
+
+ 1D683; 0074; Additional folding
+
+ 1D684; 0075; Additional folding
+
+ 1D685; 0076; Additional folding
+
+ 1D686; 0077; Additional folding
+
+ 1D687; 0078; Additional folding
+
+ 1D688; 0079; Additional folding
+
+ 1D689; 007A; Additional folding
+
+ 1D6A8; 03B1; Additional folding
+
+ 1D6A9; 03B2; Additional folding
+
+ 1D6AA; 03B3; Additional folding
+
+ 1D6AB; 03B4; Additional folding
+
+ 1D6AC; 03B5; Additional folding
+
+ 1D6AD; 03B6; Additional folding
+
+ 1D6AE; 03B7; Additional folding
+
+ 1D6AF; 03B8; Additional folding
+
+ 1D6B0; 03B9; Additional folding
+
+ 1D6B1; 03BA; Additional folding
+
+ 1D6B2; 03BB; Additional folding
+
+ 1D6B3; 03BC; Additional folding
+
+ 1D6B4; 03BD; Additional folding
+
+ 1D6B5; 03BE; Additional folding
+
+ 1D6B6; 03BF; Additional folding
+
+ 1D6B7; 03C0; Additional folding
+
+ 1D6B8; 03C1; Additional folding
+
+ 1D6B9; 03B8; Additional folding
+
+ 1D6BA; 03C3; Additional folding
+
+ 1D6BB; 03C4; Additional folding
+
+ 1D6BC; 03C5; Additional folding
+
+ 1D6BD; 03C6; Additional folding
+
+ 1D6BE; 03C7; Additional folding
+
+ 1D6BF; 03C8; Additional folding
+
+ 1D6C0; 03C9; Additional folding
+
+ 1D6D3; 03C3; Additional folding
+
+ 1D6E2; 03B1; Additional folding
+
+ 1D6E3; 03B2; Additional folding
+
+ 1D6E4; 03B3; Additional folding
+
+ 1D6E5; 03B4; Additional folding
+
+ 1D6E6; 03B5; Additional folding
+
+ 1D6E7; 03B6; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D6E8; 03B7; Additional folding
+
+ 1D6E9; 03B8; Additional folding
+
+ 1D6EA; 03B9; Additional folding
+
+ 1D6EB; 03BA; Additional folding
+
+ 1D6EC; 03BB; Additional folding
+
+ 1D6ED; 03BC; Additional folding
+
+ 1D6EE; 03BD; Additional folding
+
+ 1D6EF; 03BE; Additional folding
+
+ 1D6F0; 03BF; Additional folding
+
+ 1D6F1; 03C0; Additional folding
+
+ 1D6F2; 03C1; Additional folding
+
+ 1D6F3; 03B8; Additional folding
+
+ 1D6F4; 03C3; Additional folding
+
+ 1D6F5; 03C4; Additional folding
+
+ 1D6F6; 03C5; Additional folding
+
+ 1D6F7; 03C6; Additional folding
+
+ 1D6F8; 03C7; Additional folding
+
+ 1D6F9; 03C8; Additional folding
+
+ 1D6FA; 03C9; Additional folding
+
+ 1D70D; 03C3; Additional folding
+
+ 1D71C; 03B1; Additional folding
+
+ 1D71D; 03B2; Additional folding
+
+ 1D71E; 03B3; Additional folding
+
+ 1D71F; 03B4; Additional folding
+
+ 1D720; 03B5; Additional folding
+
+ 1D721; 03B6; Additional folding
+
+ 1D722; 03B7; Additional folding
+
+ 1D723; 03B8; Additional folding
+
+ 1D724; 03B9; Additional folding
+
+ 1D725; 03BA; Additional folding
+
+ 1D726; 03BB; Additional folding
+
+ 1D727; 03BC; Additional folding
+
+ 1D728; 03BD; Additional folding
+
+ 1D729; 03BE; Additional folding
+
+ 1D72A; 03BF; Additional folding
+
+ 1D72B; 03C0; Additional folding
+
+ 1D72C; 03C1; Additional folding
+
+ 1D72D; 03B8; Additional folding
+
+ 1D72E; 03C3; Additional folding
+
+ 1D72F; 03C4; Additional folding
+
+ 1D730; 03C5; Additional folding
+
+ 1D731; 03C6; Additional folding
+
+ 1D732; 03C7; Additional folding
+
+ 1D733; 03C8; Additional folding
+
+ 1D734; 03C9; Additional folding
+
+ 1D747; 03C3; Additional folding
+
+ 1D756; 03B1; Additional folding
+
+ 1D757; 03B2; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D758; 03B3; Additional folding
+
+ 1D759; 03B4; Additional folding
+
+ 1D75A; 03B5; Additional folding
+
+ 1D75B; 03B6; Additional folding
+
+ 1D75C; 03B7; Additional folding
+
+ 1D75D; 03B8; Additional folding
+
+ 1D75E; 03B9; Additional folding
+
+ 1D75F; 03BA; Additional folding
+
+ 1D760; 03BB; Additional folding
+
+ 1D761; 03BC; Additional folding
+
+ 1D762; 03BD; Additional folding
+
+ 1D763; 03BE; Additional folding
+
+ 1D764; 03BF; Additional folding
+
+ 1D765; 03C0; Additional folding
+
+ 1D766; 03C1; Additional folding
+
+ 1D767; 03B8; Additional folding
+
+ 1D768; 03C3; Additional folding
+
+ 1D769; 03C4; Additional folding
+
+ 1D76A; 03C5; Additional folding
+
+ 1D76B; 03C6; Additional folding
+
+ 1D76C; 03C7; Additional folding
+
+ 1D76D; 03C8; Additional folding
+
+ 1D76E; 03C9; Additional folding
+
+ 1D781; 03C3; Additional folding
+
+ 1D790; 03B1; Additional folding
+
+ 1D791; 03B2; Additional folding
+
+ 1D792; 03B3; Additional folding
+
+ 1D793; 03B4; Additional folding
+
+ 1D794; 03B5; Additional folding
+
+ 1D795; 03B6; Additional folding
+
+ 1D796; 03B7; Additional folding
+
+ 1D797; 03B8; Additional folding
+
+ 1D798; 03B9; Additional folding
+
+ 1D799; 03BA; Additional folding
+
+ 1D79A; 03BB; Additional folding
+
+ 1D79B; 03BC; Additional folding
+
+ 1D79C; 03BD; Additional folding
+
+ 1D79D; 03BE; Additional folding
+
+ 1D79E; 03BF; Additional folding
+
+ 1D79F; 03C0; Additional folding
+
+ 1D7A0; 03C1; Additional folding
+
+ 1D7A1; 03B8; Additional folding
+
+ 1D7A2; 03C3; Additional folding
+
+ 1D7A3; 03C4; Additional folding
+
+ 1D7A4; 03C5; Additional folding
+
+ 1D7A5; 03C6; Additional folding
+
+ 1D7A6; 03C7; Additional folding
+
+ 1D7A7; 03C8; Additional folding
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D7A8; 03C9; Additional folding
+
+ 1D7BB; 03C3; Additional folding
+
+ ----- End Table B.2 -----
+
+ ----- Start Table B.3 -----
+
+ 0041; 0061; Case map
+
+ 0042; 0062; Case map
+
+ 0043; 0063; Case map
+
+ 0044; 0064; Case map
+
+ 0045; 0065; Case map
+
+ 0046; 0066; Case map
+
+ 0047; 0067; Case map
+
+ 0048; 0068; Case map
+
+ 0049; 0069; Case map
+
+ 004A; 006A; Case map
+
+ 004B; 006B; Case map
+
+ 004C; 006C; Case map
+
+ 004D; 006D; Case map
+
+ 004E; 006E; Case map
+
+ 004F; 006F; Case map
+
+ 0050; 0070; Case map
+
+ 0051; 0071; Case map
+
+ 0052; 0072; Case map
+
+ 0053; 0073; Case map
+
+ 0054; 0074; Case map
+
+ 0055; 0075; Case map
+
+ 0056; 0076; Case map
+
+ 0057; 0077; Case map
+
+ 0058; 0078; Case map
+
+ 0059; 0079; Case map
+
+ 005A; 007A; Case map
+
+ 00B5; 03BC; Case map
+
+ 00C0; 00E0; Case map
+
+ 00C1; 00E1; Case map
+
+ 00C2; 00E2; Case map
+
+ 00C3; 00E3; Case map
+
+ 00C4; 00E4; Case map
+
+ 00C5; 00E5; Case map
+
+ 00C6; 00E6; Case map
+
+ 00C7; 00E7; Case map
+
+ 00C8; 00E8; Case map
+
+ 00C9; 00E9; Case map
+
+ 00CA; 00EA; Case map
+
+ 00CB; 00EB; Case map
+
+ 00CC; 00EC; Case map
+
+ 00CD; 00ED; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 00CE; 00EE; Case map
+
+ 00CF; 00EF; Case map
+
+ 00D0; 00F0; Case map
+
+ 00D1; 00F1; Case map
+
+ 00D2; 00F2; Case map
+
+ 00D3; 00F3; Case map
+
+ 00D4; 00F4; Case map
+
+ 00D5; 00F5; Case map
+
+ 00D6; 00F6; Case map
+
+ 00D8; 00F8; Case map
+
+ 00D9; 00F9; Case map
+
+ 00DA; 00FA; Case map
+
+ 00DB; 00FB; Case map
+
+ 00DC; 00FC; Case map
+
+ 00DD; 00FD; Case map
+
+ 00DE; 00FE; Case map
+
+ 00DF; 0073 0073; Case map
+
+ 0100; 0101; Case map
+
+ 0102; 0103; Case map
+
+ 0104; 0105; Case map
+
+ 0106; 0107; Case map
+
+ 0108; 0109; Case map
+
+ 010A; 010B; Case map
+
+ 010C; 010D; Case map
+
+ 010E; 010F; Case map
+
+ 0110; 0111; Case map
+
+ 0112; 0113; Case map
+
+ 0114; 0115; Case map
+
+ 0116; 0117; Case map
+
+ 0118; 0119; Case map
+
+ 011A; 011B; Case map
+
+ 011C; 011D; Case map
+
+ 011E; 011F; Case map
+
+ 0120; 0121; Case map
+
+ 0122; 0123; Case map
+
+ 0124; 0125; Case map
+
+ 0126; 0127; Case map
+
+ 0128; 0129; Case map
+
+ 012A; 012B; Case map
+
+ 012C; 012D; Case map
+
+ 012E; 012F; Case map
+
+ 0130; 0069 0307; Case map
+
+ 0132; 0133; Case map
+
+ 0134; 0135; Case map
+
+ 0136; 0137; Case map
+
+ 0139; 013A; Case map
+
+ 013B; 013C; Case map
+
+ 013D; 013E; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 013F; 0140; Case map
+
+ 0141; 0142; Case map
+
+ 0143; 0144; Case map
+
+ 0145; 0146; Case map
+
+ 0147; 0148; Case map
+
+ 0149; 02BC 006E; Case map
+
+ 014A; 014B; Case map
+
+ 014C; 014D; Case map
+
+ 014E; 014F; Case map
+
+ 0150; 0151; Case map
+
+ 0152; 0153; Case map
+
+ 0154; 0155; Case map
+
+ 0156; 0157; Case map
+
+ 0158; 0159; Case map
+
+ 015A; 015B; Case map
+
+ 015C; 015D; Case map
+
+ 015E; 015F; Case map
+
+ 0160; 0161; Case map
+
+ 0162; 0163; Case map
+
+ 0164; 0165; Case map
+
+ 0166; 0167; Case map
+
+ 0168; 0169; Case map
+
+ 016A; 016B; Case map
+
+ 016C; 016D; Case map
+
+ 016E; 016F; Case map
+
+ 0170; 0171; Case map
+
+ 0172; 0173; Case map
+
+ 0174; 0175; Case map
+
+ 0176; 0177; Case map
+
+ 0178; 00FF; Case map
+
+ 0179; 017A; Case map
+
+ 017B; 017C; Case map
+
+ 017D; 017E; Case map
+
+ 017F; 0073; Case map
+
+ 0181; 0253; Case map
+
+ 0182; 0183; Case map
+
+ 0184; 0185; Case map
+
+ 0186; 0254; Case map
+
+ 0187; 0188; Case map
+
+ 0189; 0256; Case map
+
+ 018A; 0257; Case map
+
+ 018B; 018C; Case map
+
+ 018E; 01DD; Case map
+
+ 018F; 0259; Case map
+
+ 0190; 025B; Case map
+
+ 0191; 0192; Case map
+
+ 0193; 0260; Case map
+
+ 0194; 0263; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0196; 0269; Case map
+
+ 0197; 0268; Case map
+
+ 0198; 0199; Case map
+
+ 019C; 026F; Case map
+
+ 019D; 0272; Case map
+
+ 019F; 0275; Case map
+
+ 01A0; 01A1; Case map
+
+ 01A2; 01A3; Case map
+
+ 01A4; 01A5; Case map
+
+ 01A6; 0280; Case map
+
+ 01A7; 01A8; Case map
+
+ 01A9; 0283; Case map
+
+ 01AC; 01AD; Case map
+
+ 01AE; 0288; Case map
+
+ 01AF; 01B0; Case map
+
+ 01B1; 028A; Case map
+
+ 01B2; 028B; Case map
+
+ 01B3; 01B4; Case map
+
+ 01B5; 01B6; Case map
+
+ 01B7; 0292; Case map
+
+ 01B8; 01B9; Case map
+
+ 01BC; 01BD; Case map
+
+ 01C4; 01C6; Case map
+
+ 01C5; 01C6; Case map
+
+ 01C7; 01C9; Case map
+
+ 01C8; 01C9; Case map
+
+ 01CA; 01CC; Case map
+
+ 01CB; 01CC; Case map
+
+ 01CD; 01CE; Case map
+
+ 01CF; 01D0; Case map
+
+ 01D1; 01D2; Case map
+
+ 01D3; 01D4; Case map
+
+ 01D5; 01D6; Case map
+
+ 01D7; 01D8; Case map
+
+ 01D9; 01DA; Case map
+
+ 01DB; 01DC; Case map
+
+ 01DE; 01DF; Case map
+
+ 01E0; 01E1; Case map
+
+ 01E2; 01E3; Case map
+
+ 01E4; 01E5; Case map
+
+ 01E6; 01E7; Case map
+
+ 01E8; 01E9; Case map
+
+ 01EA; 01EB; Case map
+
+ 01EC; 01ED; Case map
+
+ 01EE; 01EF; Case map
+
+ 01F0; 006A 030C; Case map
+
+ 01F1; 01F3; Case map
+
+ 01F2; 01F3; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 01F4; 01F5; Case map
+
+ 01F6; 0195; Case map
+
+ 01F7; 01BF; Case map
+
+ 01F8; 01F9; Case map
+
+ 01FA; 01FB; Case map
+
+ 01FC; 01FD; Case map
+
+ 01FE; 01FF; Case map
+
+ 0200; 0201; Case map
+
+ 0202; 0203; Case map
+
+ 0204; 0205; Case map
+
+ 0206; 0207; Case map
+
+ 0208; 0209; Case map
+
+ 020A; 020B; Case map
+
+ 020C; 020D; Case map
+
+ 020E; 020F; Case map
+
+ 0210; 0211; Case map
+
+ 0212; 0213; Case map
+
+ 0214; 0215; Case map
+
+ 0216; 0217; Case map
+
+ 0218; 0219; Case map
+
+ 021A; 021B; Case map
+
+ 021C; 021D; Case map
+
+ 021E; 021F; Case map
+
+ 0220; 019E; Case map
+
+ 0222; 0223; Case map
+
+ 0224; 0225; Case map
+
+ 0226; 0227; Case map
+
+ 0228; 0229; Case map
+
+ 022A; 022B; Case map
+
+ 022C; 022D; Case map
+
+ 022E; 022F; Case map
+
+ 0230; 0231; Case map
+
+ 0232; 0233; Case map
+
+ 0345; 03B9; Case map
+
+ 0386; 03AC; Case map
+
+ 0388; 03AD; Case map
+
+ 0389; 03AE; Case map
+
+ 038A; 03AF; Case map
+
+ 038C; 03CC; Case map
+
+ 038E; 03CD; Case map
+
+ 038F; 03CE; Case map
+
+ 0390; 03B9 0308 0301; Case map
+
+ 0391; 03B1; Case map
+
+ 0392; 03B2; Case map
+
+ 0393; 03B3; Case map
+
+ 0394; 03B4; Case map
+
+ 0395; 03B5; Case map
+
+ 0396; 03B6; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0397; 03B7; Case map
+
+ 0398; 03B8; Case map
+
+ 0399; 03B9; Case map
+
+ 039A; 03BA; Case map
+
+ 039B; 03BB; Case map
+
+ 039C; 03BC; Case map
+
+ 039D; 03BD; Case map
+
+ 039E; 03BE; Case map
+
+ 039F; 03BF; Case map
+
+ 03A0; 03C0; Case map
+
+ 03A1; 03C1; Case map
+
+ 03A3; 03C3; Case map
+
+ 03A4; 03C4; Case map
+
+ 03A5; 03C5; Case map
+
+ 03A6; 03C6; Case map
+
+ 03A7; 03C7; Case map
+
+ 03A8; 03C8; Case map
+
+ 03A9; 03C9; Case map
+
+ 03AA; 03CA; Case map
+
+ 03AB; 03CB; Case map
+
+ 03B0; 03C5 0308 0301; Case map
+
+ 03C2; 03C3; Case map
+
+ 03D0; 03B2; Case map
+
+ 03D1; 03B8; Case map
+
+ 03D5; 03C6; Case map
+
+ 03D6; 03C0; Case map
+
+ 03D8; 03D9; Case map
+
+ 03DA; 03DB; Case map
+
+ 03DC; 03DD; Case map
+
+ 03DE; 03DF; Case map
+
+ 03E0; 03E1; Case map
+
+ 03E2; 03E3; Case map
+
+ 03E4; 03E5; Case map
+
+ 03E6; 03E7; Case map
+
+ 03E8; 03E9; Case map
+
+ 03EA; 03EB; Case map
+
+ 03EC; 03ED; Case map
+
+ 03EE; 03EF; Case map
+
+ 03F0; 03BA; Case map
+
+ 03F1; 03C1; Case map
+
+ 03F2; 03C3; Case map
+
+ 03F4; 03B8; Case map
+
+ 03F5; 03B5; Case map
+
+ 0400; 0450; Case map
+
+ 0401; 0451; Case map
+
+ 0402; 0452; Case map
+
+ 0403; 0453; Case map
+
+ 0404; 0454; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0405; 0455; Case map
+
+ 0406; 0456; Case map
+
+ 0407; 0457; Case map
+
+ 0408; 0458; Case map
+
+ 0409; 0459; Case map
+
+ 040A; 045A; Case map
+
+ 040B; 045B; Case map
+
+ 040C; 045C; Case map
+
+ 040D; 045D; Case map
+
+ 040E; 045E; Case map
+
+ 040F; 045F; Case map
+
+ 0410; 0430; Case map
+
+ 0411; 0431; Case map
+
+ 0412; 0432; Case map
+
+ 0413; 0433; Case map
+
+ 0414; 0434; Case map
+
+ 0415; 0435; Case map
+
+ 0416; 0436; Case map
+
+ 0417; 0437; Case map
+
+ 0418; 0438; Case map
+
+ 0419; 0439; Case map
+
+ 041A; 043A; Case map
+
+ 041B; 043B; Case map
+
+ 041C; 043C; Case map
+
+ 041D; 043D; Case map
+
+ 041E; 043E; Case map
+
+ 041F; 043F; Case map
+
+ 0420; 0440; Case map
+
+ 0421; 0441; Case map
+
+ 0422; 0442; Case map
+
+ 0423; 0443; Case map
+
+ 0424; 0444; Case map
+
+ 0425; 0445; Case map
+
+ 0426; 0446; Case map
+
+ 0427; 0447; Case map
+
+ 0428; 0448; Case map
+
+ 0429; 0449; Case map
+
+ 042A; 044A; Case map
+
+ 042B; 044B; Case map
+
+ 042C; 044C; Case map
+
+ 042D; 044D; Case map
+
+ 042E; 044E; Case map
+
+ 042F; 044F; Case map
+
+ 0460; 0461; Case map
+
+ 0462; 0463; Case map
+
+ 0464; 0465; Case map
+
+ 0466; 0467; Case map
+
+ 0468; 0469; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 046A; 046B; Case map
+
+ 046C; 046D; Case map
+
+ 046E; 046F; Case map
+
+ 0470; 0471; Case map
+
+ 0472; 0473; Case map
+
+ 0474; 0475; Case map
+
+ 0476; 0477; Case map
+
+ 0478; 0479; Case map
+
+ 047A; 047B; Case map
+
+ 047C; 047D; Case map
+
+ 047E; 047F; Case map
+
+ 0480; 0481; Case map
+
+ 048A; 048B; Case map
+
+ 048C; 048D; Case map
+
+ 048E; 048F; Case map
+
+ 0490; 0491; Case map
+
+ 0492; 0493; Case map
+
+ 0494; 0495; Case map
+
+ 0496; 0497; Case map
+
+ 0498; 0499; Case map
+
+ 049A; 049B; Case map
+
+ 049C; 049D; Case map
+
+ 049E; 049F; Case map
+
+ 04A0; 04A1; Case map
+
+ 04A2; 04A3; Case map
+
+ 04A4; 04A5; Case map
+
+ 04A6; 04A7; Case map
+
+ 04A8; 04A9; Case map
+
+ 04AA; 04AB; Case map
+
+ 04AC; 04AD; Case map
+
+ 04AE; 04AF; Case map
+
+ 04B0; 04B1; Case map
+
+ 04B2; 04B3; Case map
+
+ 04B4; 04B5; Case map
+
+ 04B6; 04B7; Case map
+
+ 04B8; 04B9; Case map
+
+ 04BA; 04BB; Case map
+
+ 04BC; 04BD; Case map
+
+ 04BE; 04BF; Case map
+
+ 04C1; 04C2; Case map
+
+ 04C3; 04C4; Case map
+
+ 04C5; 04C6; Case map
+
+ 04C7; 04C8; Case map
+
+ 04C9; 04CA; Case map
+
+ 04CB; 04CC; Case map
+
+ 04CD; 04CE; Case map
+
+ 04D0; 04D1; Case map
+
+ 04D2; 04D3; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 04D4; 04D5; Case map
+
+ 04D6; 04D7; Case map
+
+ 04D8; 04D9; Case map
+
+ 04DA; 04DB; Case map
+
+ 04DC; 04DD; Case map
+
+ 04DE; 04DF; Case map
+
+ 04E0; 04E1; Case map
+
+ 04E2; 04E3; Case map
+
+ 04E4; 04E5; Case map
+
+ 04E6; 04E7; Case map
+
+ 04E8; 04E9; Case map
+
+ 04EA; 04EB; Case map
+
+ 04EC; 04ED; Case map
+
+ 04EE; 04EF; Case map
+
+ 04F0; 04F1; Case map
+
+ 04F2; 04F3; Case map
+
+ 04F4; 04F5; Case map
+
+ 04F8; 04F9; Case map
+
+ 0500; 0501; Case map
+
+ 0502; 0503; Case map
+
+ 0504; 0505; Case map
+
+ 0506; 0507; Case map
+
+ 0508; 0509; Case map
+
+ 050A; 050B; Case map
+
+ 050C; 050D; Case map
+
+ 050E; 050F; Case map
+
+ 0531; 0561; Case map
+
+ 0532; 0562; Case map
+
+ 0533; 0563; Case map
+
+ 0534; 0564; Case map
+
+ 0535; 0565; Case map
+
+ 0536; 0566; Case map
+
+ 0537; 0567; Case map
+
+ 0538; 0568; Case map
+
+ 0539; 0569; Case map
+
+ 053A; 056A; Case map
+
+ 053B; 056B; Case map
+
+ 053C; 056C; Case map
+
+ 053D; 056D; Case map
+
+ 053E; 056E; Case map
+
+ 053F; 056F; Case map
+
+ 0540; 0570; Case map
+
+ 0541; 0571; Case map
+
+ 0542; 0572; Case map
+
+ 0543; 0573; Case map
+
+ 0544; 0574; Case map
+
+ 0545; 0575; Case map
+
+ 0546; 0576; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0547; 0577; Case map
+
+ 0548; 0578; Case map
+
+ 0549; 0579; Case map
+
+ 054A; 057A; Case map
+
+ 054B; 057B; Case map
+
+ 054C; 057C; Case map
+
+ 054D; 057D; Case map
+
+ 054E; 057E; Case map
+
+ 054F; 057F; Case map
+
+ 0550; 0580; Case map
+
+ 0551; 0581; Case map
+
+ 0552; 0582; Case map
+
+ 0553; 0583; Case map
+
+ 0554; 0584; Case map
+
+ 0555; 0585; Case map
+
+ 0556; 0586; Case map
+
+ 0587; 0565 0582; Case map
+
+ 1E00; 1E01; Case map
+
+ 1E02; 1E03; Case map
+
+ 1E04; 1E05; Case map
+
+ 1E06; 1E07; Case map
+
+ 1E08; 1E09; Case map
+
+ 1E0A; 1E0B; Case map
+
+ 1E0C; 1E0D; Case map
+
+ 1E0E; 1E0F; Case map
+
+ 1E10; 1E11; Case map
+
+ 1E12; 1E13; Case map
+
+ 1E14; 1E15; Case map
+
+ 1E16; 1E17; Case map
+
+ 1E18; 1E19; Case map
+
+ 1E1A; 1E1B; Case map
+
+ 1E1C; 1E1D; Case map
+
+ 1E1E; 1E1F; Case map
+
+ 1E20; 1E21; Case map
+
+ 1E22; 1E23; Case map
+
+ 1E24; 1E25; Case map
+
+ 1E26; 1E27; Case map
+
+ 1E28; 1E29; Case map
+
+ 1E2A; 1E2B; Case map
+
+ 1E2C; 1E2D; Case map
+
+ 1E2E; 1E2F; Case map
+
+ 1E30; 1E31; Case map
+
+ 1E32; 1E33; Case map
+
+ 1E34; 1E35; Case map
+
+ 1E36; 1E37; Case map
+
+ 1E38; 1E39; Case map
+
+ 1E3A; 1E3B; Case map
+
+ 1E3C; 1E3D; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1E3E; 1E3F; Case map
+
+ 1E40; 1E41; Case map
+
+ 1E42; 1E43; Case map
+
+ 1E44; 1E45; Case map
+
+ 1E46; 1E47; Case map
+
+ 1E48; 1E49; Case map
+
+ 1E4A; 1E4B; Case map
+
+ 1E4C; 1E4D; Case map
+
+ 1E4E; 1E4F; Case map
+
+ 1E50; 1E51; Case map
+
+ 1E52; 1E53; Case map
+
+ 1E54; 1E55; Case map
+
+ 1E56; 1E57; Case map
+
+ 1E58; 1E59; Case map
+
+ 1E5A; 1E5B; Case map
+
+ 1E5C; 1E5D; Case map
+
+ 1E5E; 1E5F; Case map
+
+ 1E60; 1E61; Case map
+
+ 1E62; 1E63; Case map
+
+ 1E64; 1E65; Case map
+
+ 1E66; 1E67; Case map
+
+ 1E68; 1E69; Case map
+
+ 1E6A; 1E6B; Case map
+
+ 1E6C; 1E6D; Case map
+
+ 1E6E; 1E6F; Case map
+
+ 1E70; 1E71; Case map
+
+ 1E72; 1E73; Case map
+
+ 1E74; 1E75; Case map
+
+ 1E76; 1E77; Case map
+
+ 1E78; 1E79; Case map
+
+ 1E7A; 1E7B; Case map
+
+ 1E7C; 1E7D; Case map
+
+ 1E7E; 1E7F; Case map
+
+ 1E80; 1E81; Case map
+
+ 1E82; 1E83; Case map
+
+ 1E84; 1E85; Case map
+
+ 1E86; 1E87; Case map
+
+ 1E88; 1E89; Case map
+
+ 1E8A; 1E8B; Case map
+
+ 1E8C; 1E8D; Case map
+
+ 1E8E; 1E8F; Case map
+
+ 1E90; 1E91; Case map
+
+ 1E92; 1E93; Case map
+
+ 1E94; 1E95; Case map
+
+ 1E96; 0068 0331; Case map
+
+ 1E97; 0074 0308; Case map
+
+ 1E98; 0077 030A; Case map
+
+ 1E99; 0079 030A; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1E9A; 0061 02BE; Case map
+
+ 1E9B; 1E61; Case map
+
+ 1EA0; 1EA1; Case map
+
+ 1EA2; 1EA3; Case map
+
+ 1EA4; 1EA5; Case map
+
+ 1EA6; 1EA7; Case map
+
+ 1EA8; 1EA9; Case map
+
+ 1EAA; 1EAB; Case map
+
+ 1EAC; 1EAD; Case map
+
+ 1EAE; 1EAF; Case map
+
+ 1EB0; 1EB1; Case map
+
+ 1EB2; 1EB3; Case map
+
+ 1EB4; 1EB5; Case map
+
+ 1EB6; 1EB7; Case map
+
+ 1EB8; 1EB9; Case map
+
+ 1EBA; 1EBB; Case map
+
+ 1EBC; 1EBD; Case map
+
+ 1EBE; 1EBF; Case map
+
+ 1EC0; 1EC1; Case map
+
+ 1EC2; 1EC3; Case map
+
+ 1EC4; 1EC5; Case map
+
+ 1EC6; 1EC7; Case map
+
+ 1EC8; 1EC9; Case map
+
+ 1ECA; 1ECB; Case map
+
+ 1ECC; 1ECD; Case map
+
+ 1ECE; 1ECF; Case map
+
+ 1ED0; 1ED1; Case map
+
+ 1ED2; 1ED3; Case map
+
+ 1ED4; 1ED5; Case map
+
+ 1ED6; 1ED7; Case map
+
+ 1ED8; 1ED9; Case map
+
+ 1EDA; 1EDB; Case map
+
+ 1EDC; 1EDD; Case map
+
+ 1EDE; 1EDF; Case map
+
+ 1EE0; 1EE1; Case map
+
+ 1EE2; 1EE3; Case map
+
+ 1EE4; 1EE5; Case map
+
+ 1EE6; 1EE7; Case map
+
+ 1EE8; 1EE9; Case map
+
+ 1EEA; 1EEB; Case map
+
+ 1EEC; 1EED; Case map
+
+ 1EEE; 1EEF; Case map
+
+ 1EF0; 1EF1; Case map
+
+ 1EF2; 1EF3; Case map
+
+ 1EF4; 1EF5; Case map
+
+ 1EF6; 1EF7; Case map
+
+ 1EF8; 1EF9; Case map
+
+ 1F08; 1F00; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1F09; 1F01; Case map
+
+ 1F0A; 1F02; Case map
+
+ 1F0B; 1F03; Case map
+
+ 1F0C; 1F04; Case map
+
+ 1F0D; 1F05; Case map
+
+ 1F0E; 1F06; Case map
+
+ 1F0F; 1F07; Case map
+
+ 1F18; 1F10; Case map
+
+ 1F19; 1F11; Case map
+
+ 1F1A; 1F12; Case map
+
+ 1F1B; 1F13; Case map
+
+ 1F1C; 1F14; Case map
+
+ 1F1D; 1F15; Case map
+
+ 1F28; 1F20; Case map
+
+ 1F29; 1F21; Case map
+
+ 1F2A; 1F22; Case map
+
+ 1F2B; 1F23; Case map
+
+ 1F2C; 1F24; Case map
+
+ 1F2D; 1F25; Case map
+
+ 1F2E; 1F26; Case map
+
+ 1F2F; 1F27; Case map
+
+ 1F38; 1F30; Case map
+
+ 1F39; 1F31; Case map
+
+ 1F3A; 1F32; Case map
+
+ 1F3B; 1F33; Case map
+
+ 1F3C; 1F34; Case map
+
+ 1F3D; 1F35; Case map
+
+ 1F3E; 1F36; Case map
+
+ 1F3F; 1F37; Case map
+
+ 1F48; 1F40; Case map
+
+ 1F49; 1F41; Case map
+
+ 1F4A; 1F42; Case map
+
+ 1F4B; 1F43; Case map
+
+ 1F4C; 1F44; Case map
+
+ 1F4D; 1F45; Case map
+
+ 1F50; 03C5 0313; Case map
+
+ 1F52; 03C5 0313 0300; Case map
+
+ 1F54; 03C5 0313 0301; Case map
+
+ 1F56; 03C5 0313 0342; Case map
+
+ 1F59; 1F51; Case map
+
+ 1F5B; 1F53; Case map
+
+ 1F5D; 1F55; Case map
+
+ 1F5F; 1F57; Case map
+
+ 1F68; 1F60; Case map
+
+ 1F69; 1F61; Case map
+
+ 1F6A; 1F62; Case map
+
+ 1F6B; 1F63; Case map
+
+ 1F6C; 1F64; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1F6D; 1F65; Case map
+
+ 1F6E; 1F66; Case map
+
+ 1F6F; 1F67; Case map
+
+ 1F80; 1F00 03B9; Case map
+
+ 1F81; 1F01 03B9; Case map
+
+ 1F82; 1F02 03B9; Case map
+
+ 1F83; 1F03 03B9; Case map
+
+ 1F84; 1F04 03B9; Case map
+
+ 1F85; 1F05 03B9; Case map
+
+ 1F86; 1F06 03B9; Case map
+
+ 1F87; 1F07 03B9; Case map
+
+ 1F88; 1F00 03B9; Case map
+
+ 1F89; 1F01 03B9; Case map
+
+ 1F8A; 1F02 03B9; Case map
+
+ 1F8B; 1F03 03B9; Case map
+
+ 1F8C; 1F04 03B9; Case map
+
+ 1F8D; 1F05 03B9; Case map
+
+ 1F8E; 1F06 03B9; Case map
+
+ 1F8F; 1F07 03B9; Case map
+
+ 1F90; 1F20 03B9; Case map
+
+ 1F91; 1F21 03B9; Case map
+
+ 1F92; 1F22 03B9; Case map
+
+ 1F93; 1F23 03B9; Case map
+
+ 1F94; 1F24 03B9; Case map
+
+ 1F95; 1F25 03B9; Case map
+
+ 1F96; 1F26 03B9; Case map
+
+ 1F97; 1F27 03B9; Case map
+
+ 1F98; 1F20 03B9; Case map
+
+ 1F99; 1F21 03B9; Case map
+
+ 1F9A; 1F22 03B9; Case map
+
+ 1F9B; 1F23 03B9; Case map
+
+ 1F9C; 1F24 03B9; Case map
+
+ 1F9D; 1F25 03B9; Case map
+
+ 1F9E; 1F26 03B9; Case map
+
+ 1F9F; 1F27 03B9; Case map
+
+ 1FA0; 1F60 03B9; Case map
+
+ 1FA1; 1F61 03B9; Case map
+
+ 1FA2; 1F62 03B9; Case map
+
+ 1FA3; 1F63 03B9; Case map
+
+ 1FA4; 1F64 03B9; Case map
+
+ 1FA5; 1F65 03B9; Case map
+
+ 1FA6; 1F66 03B9; Case map
+
+ 1FA7; 1F67 03B9; Case map
+
+ 1FA8; 1F60 03B9; Case map
+
+ 1FA9; 1F61 03B9; Case map
+
+ 1FAA; 1F62 03B9; Case map
+
+ 1FAB; 1F63 03B9; Case map
+
+ 1FAC; 1F64 03B9; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1FAD; 1F65 03B9; Case map
+
+ 1FAE; 1F66 03B9; Case map
+
+ 1FAF; 1F67 03B9; Case map
+
+ 1FB2; 1F70 03B9; Case map
+
+ 1FB3; 03B1 03B9; Case map
+
+ 1FB4; 03AC 03B9; Case map
+
+ 1FB6; 03B1 0342; Case map
+
+ 1FB7; 03B1 0342 03B9; Case map
+
+ 1FB8; 1FB0; Case map
+
+ 1FB9; 1FB1; Case map
+
+ 1FBA; 1F70; Case map
+
+ 1FBB; 1F71; Case map
+
+ 1FBC; 03B1 03B9; Case map
+
+ 1FBE; 03B9; Case map
+
+ 1FC2; 1F74 03B9; Case map
+
+ 1FC3; 03B7 03B9; Case map
+
+ 1FC4; 03AE 03B9; Case map
+
+ 1FC6; 03B7 0342; Case map
+
+ 1FC7; 03B7 0342 03B9; Case map
+
+ 1FC8; 1F72; Case map
+
+ 1FC9; 1F73; Case map
+
+ 1FCA; 1F74; Case map
+
+ 1FCB; 1F75; Case map
+
+ 1FCC; 03B7 03B9; Case map
+
+ 1FD2; 03B9 0308 0300; Case map
+
+ 1FD3; 03B9 0308 0301; Case map
+
+ 1FD6; 03B9 0342; Case map
+
+ 1FD7; 03B9 0308 0342; Case map
+
+ 1FD8; 1FD0; Case map
+
+ 1FD9; 1FD1; Case map
+
+ 1FDA; 1F76; Case map
+
+ 1FDB; 1F77; Case map
+
+ 1FE2; 03C5 0308 0300; Case map
+
+ 1FE3; 03C5 0308 0301; Case map
+
+ 1FE4; 03C1 0313; Case map
+
+ 1FE6; 03C5 0342; Case map
+
+ 1FE7; 03C5 0308 0342; Case map
+
+ 1FE8; 1FE0; Case map
+
+ 1FE9; 1FE1; Case map
+
+ 1FEA; 1F7A; Case map
+
+ 1FEB; 1F7B; Case map
+
+ 1FEC; 1FE5; Case map
+
+ 1FF2; 1F7C 03B9; Case map
+
+ 1FF3; 03C9 03B9; Case map
+
+ 1FF4; 03CE 03B9; Case map
+
+ 1FF6; 03C9 0342; Case map
+
+ 1FF7; 03C9 0342 03B9; Case map
+
+ 1FF8; 1F78; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1FF9; 1F79; Case map
+
+ 1FFA; 1F7C; Case map
+
+ 1FFB; 1F7D; Case map
+
+ 1FFC; 03C9 03B9; Case map
+
+ 2126; 03C9; Case map
+
+ 212A; 006B; Case map
+
+ 212B; 00E5; Case map
+
+ 2160; 2170; Case map
+
+ 2161; 2171; Case map
+
+ 2162; 2172; Case map
+
+ 2163; 2173; Case map
+
+ 2164; 2174; Case map
+
+ 2165; 2175; Case map
+
+ 2166; 2176; Case map
+
+ 2167; 2177; Case map
+
+ 2168; 2178; Case map
+
+ 2169; 2179; Case map
+
+ 216A; 217A; Case map
+
+ 216B; 217B; Case map
+
+ 216C; 217C; Case map
+
+ 216D; 217D; Case map
+
+ 216E; 217E; Case map
+
+ 216F; 217F; Case map
+
+ 24B6; 24D0; Case map
+
+ 24B7; 24D1; Case map
+
+ 24B8; 24D2; Case map
+
+ 24B9; 24D3; Case map
+
+ 24BA; 24D4; Case map
+
+ 24BB; 24D5; Case map
+
+ 24BC; 24D6; Case map
+
+ 24BD; 24D7; Case map
+
+ 24BE; 24D8; Case map
+
+ 24BF; 24D9; Case map
+
+ 24C0; 24DA; Case map
+
+ 24C1; 24DB; Case map
+
+ 24C2; 24DC; Case map
+
+ 24C3; 24DD; Case map
+
+ 24C4; 24DE; Case map
+
+ 24C5; 24DF; Case map
+
+ 24C6; 24E0; Case map
+
+ 24C7; 24E1; Case map
+
+ 24C8; 24E2; Case map
+
+ 24C9; 24E3; Case map
+
+ 24CA; 24E4; Case map
+
+ 24CB; 24E5; Case map
+
+ 24CC; 24E6; Case map
+
+ 24CD; 24E7; Case map
+
+ 24CE; 24E8; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 24CF; 24E9; Case map
+
+ FB00; 0066 0066; Case map
+
+ FB01; 0066 0069; Case map
+
+ FB02; 0066 006C; Case map
+
+ FB03; 0066 0066 0069; Case map
+
+ FB04; 0066 0066 006C; Case map
+
+ FB05; 0073 0074; Case map
+
+ FB06; 0073 0074; Case map
+
+ FB13; 0574 0576; Case map
+
+ FB14; 0574 0565; Case map
+
+ FB15; 0574 056B; Case map
+
+ FB16; 057E 0576; Case map
+
+ FB17; 0574 056D; Case map
+
+ FF21; FF41; Case map
+
+ FF22; FF42; Case map
+
+ FF23; FF43; Case map
+
+ FF24; FF44; Case map
+
+ FF25; FF45; Case map
+
+ FF26; FF46; Case map
+
+ FF27; FF47; Case map
+
+ FF28; FF48; Case map
+
+ FF29; FF49; Case map
+
+ FF2A; FF4A; Case map
+
+ FF2B; FF4B; Case map
+
+ FF2C; FF4C; Case map
+
+ FF2D; FF4D; Case map
+
+ FF2E; FF4E; Case map
+
+ FF2F; FF4F; Case map
+
+ FF30; FF50; Case map
+
+ FF31; FF51; Case map
+
+ FF32; FF52; Case map
+
+ FF33; FF53; Case map
+
+ FF34; FF54; Case map
+
+ FF35; FF55; Case map
+
+ FF36; FF56; Case map
+
+ FF37; FF57; Case map
+
+ FF38; FF58; Case map
+
+ FF39; FF59; Case map
+
+ FF3A; FF5A; Case map
+
+ 10400; 10428; Case map
+
+ 10401; 10429; Case map
+
+ 10402; 1042A; Case map
+
+ 10403; 1042B; Case map
+
+ 10404; 1042C; Case map
+
+ 10405; 1042D; Case map
+
+ 10406; 1042E; Case map
+
+ 10407; 1042F; Case map
+
+ 10408; 10430; Case map
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 10409; 10431; Case map
+
+ 1040A; 10432; Case map
+
+ 1040B; 10433; Case map
+
+ 1040C; 10434; Case map
+
+ 1040D; 10435; Case map
+
+ 1040E; 10436; Case map
+
+ 1040F; 10437; Case map
+
+ 10410; 10438; Case map
+
+ 10411; 10439; Case map
+
+ 10412; 1043A; Case map
+
+ 10413; 1043B; Case map
+
+ 10414; 1043C; Case map
+
+ 10415; 1043D; Case map
+
+ 10416; 1043E; Case map
+
+ 10417; 1043F; Case map
+
+ 10418; 10440; Case map
+
+ 10419; 10441; Case map
+
+ 1041A; 10442; Case map
+
+ 1041B; 10443; Case map
+
+ 1041C; 10444; Case map
+
+ 1041D; 10445; Case map
+
+ 1041E; 10446; Case map
+
+ 1041F; 10447; Case map
+
+ 10420; 10448; Case map
+
+ 10421; 10449; Case map
+
+ 10422; 1044A; Case map
+
+ 10423; 1044B; Case map
+
+ 10424; 1044C; Case map
+
+ 10425; 1044D; Case map
+
+ ----- End Table B.3 -----
+
+ ----- Start Table C.1.1 -----
+
+ 0020; SPACE
+
+ ----- End Table C.1.1 -----
+
+ ----- Start Table C.1.2 -----
+
+ 00A0; NO-BREAK SPACE
+
+ 1680; OGHAM SPACE MARK
+
+ 2000; EN QUAD
+
+ 2001; EM QUAD
+
+ 2002; EN SPACE
+
+ 2003; EM SPACE
+
+ 2004; THREE-PER-EM SPACE
+
+ 2005; FOUR-PER-EM SPACE
+
+ 2006; SIX-PER-EM SPACE
+
+ 2007; FIGURE SPACE
+
+ 2008; PUNCTUATION SPACE
+
+ 2009; THIN SPACE
+
+ 200A; HAIR SPACE
+
+ 200B; ZERO WIDTH SPACE
+
+ 202F; NARROW NO-BREAK SPACE
+
+ 205F; MEDIUM MATHEMATICAL SPACE
+
+ 3000; IDEOGRAPHIC SPACE
+
+ ----- End Table C.1.2 -----
+
+ ----- Start Table C.2.1 -----
+
+ 0000-001F; [CONTROL CHARACTERS]
+
+ 007F; DELETE
+
+ ----- End Table C.2.1 -----
+
+ ----- Start Table C.2.2 -----
+
+ 0080-009F; [CONTROL CHARACTERS]
+
+ 06DD; ARABIC END OF AYAH
+
+ 070F; SYRIAC ABBREVIATION MARK
+
+ 180E; MONGOLIAN VOWEL SEPARATOR
+
+ 200C; ZERO WIDTH NON-JOINER
+
+ 200D; ZERO WIDTH JOINER
+
+ 2028; LINE SEPARATOR
+
+ 2029; PARAGRAPH SEPARATOR
+
+ 2060; WORD JOINER
+
+ 2061; FUNCTION APPLICATION
+
+ 2062; INVISIBLE TIMES
+
+ 2063; INVISIBLE SEPARATOR
+
+ 206A-206F; [CONTROL CHARACTERS]
+
+ FEFF; ZERO WIDTH NO-BREAK SPACE
+
+ FFF9-FFFC; [CONTROL CHARACTERS]
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D173-1D17A; [MUSICAL CONTROL CHARACTERS]
+
+ ----- End Table C.2.2 -----
+
+ ----- Start Table C.3 -----
+
+ E000-F8FF; [PRIVATE USE, PLANE 0]
+
+ F0000-FFFFD; [PRIVATE USE, PLANE 15]
+
+ 100000-10FFFD; [PRIVATE USE, PLANE 16]
+
+ ----- End Table C.3 -----
+
+ ----- Start Table C.4 -----
+
+ FDD0-FDEF; [NONCHARACTER CODE POINTS]
+
+ FFFE-FFFF; [NONCHARACTER CODE POINTS]
+
+ 1FFFE-1FFFF; [NONCHARACTER CODE POINTS]
+
+ 2FFFE-2FFFF; [NONCHARACTER CODE POINTS]
+
+ 3FFFE-3FFFF; [NONCHARACTER CODE POINTS]
+
+ 4FFFE-4FFFF; [NONCHARACTER CODE POINTS]
+
+ 5FFFE-5FFFF; [NONCHARACTER CODE POINTS]
+
+ 6FFFE-6FFFF; [NONCHARACTER CODE POINTS]
+
+ 7FFFE-7FFFF; [NONCHARACTER CODE POINTS]
+
+ 8FFFE-8FFFF; [NONCHARACTER CODE POINTS]
+
+ 9FFFE-9FFFF; [NONCHARACTER CODE POINTS]
+
+ AFFFE-AFFFF; [NONCHARACTER CODE POINTS]
+
+ BFFFE-BFFFF; [NONCHARACTER CODE POINTS]
+
+ CFFFE-CFFFF; [NONCHARACTER CODE POINTS]
+
+ DFFFE-DFFFF; [NONCHARACTER CODE POINTS]
+
+ EFFFE-EFFFF; [NONCHARACTER CODE POINTS]
+
+ FFFFE-FFFFF; [NONCHARACTER CODE POINTS]
+
+ 10FFFE-10FFFF; [NONCHARACTER CODE POINTS]
+
+ ----- End Table C.4 -----
+
+ ----- Start Table C.5 -----
+
+ D800-DFFF; [SURROGATE CODES]
+
+ ----- End Table C.5 -----
+
+ ----- Start Table C.6 -----
+
+ FFF9; INTERLINEAR ANNOTATION ANCHOR
+
+ FFFA; INTERLINEAR ANNOTATION SEPARATOR
+
+ FFFB; INTERLINEAR ANNOTATION TERMINATOR
+
+ FFFC; OBJECT REPLACEMENT CHARACTER
+
+ FFFD; REPLACEMENT CHARACTER
+
+
+
+
+
+
+
+
+
+
+
+
+
+ ----- End Table C.6 -----
+
+ ----- Start Table C.7 -----
+
+ 2FF0-2FFB; [IDEOGRAPHIC DESCRIPTION CHARACTERS]
+
+ ----- End Table C.7 -----
+
+ ----- Start Table C.8 -----
+
+ 0340; COMBINING GRAVE TONE MARK
+
+ 0341; COMBINING ACUTE TONE MARK
+
+ 200E; LEFT-TO-RIGHT MARK
+
+ 200F; RIGHT-TO-LEFT MARK
+
+ 202A; LEFT-TO-RIGHT EMBEDDING
+
+ 202B; RIGHT-TO-LEFT EMBEDDING
+
+ 202C; POP DIRECTIONAL FORMATTING
+
+ 202D; LEFT-TO-RIGHT OVERRIDE
+
+ 202E; RIGHT-TO-LEFT OVERRIDE
+
+ 206A; INHIBIT SYMMETRIC SWAPPING
+
+ 206B; ACTIVATE SYMMETRIC SWAPPING
+
+ 206C; INHIBIT ARABIC FORM SHAPING
+
+ 206D; ACTIVATE ARABIC FORM SHAPING
+
+ 206E; NATIONAL DIGIT SHAPES
+
+ 206F; NOMINAL DIGIT SHAPES
+
+ ----- End Table C.8 -----
+
+ ----- Start Table C.9 -----
+
+ E0001; LANGUAGE TAG
+
+ E0020-E007F; [TAGGING CHARACTERS]
+
+ ----- End Table C.9 -----
+
+ ----- Start Table D.1 -----
+
+ 05BE
+
+ 05C0
+
+ 05C3
+
+ 05D0-05EA
+
+ 05F0-05F4
+
+ 061B
+
+ 061F
+
+ 0621-063A
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0640-064A
+
+ 066D-066F
+
+ 0671-06D5
+
+ 06DD
+
+ 06E5-06E6
+
+ 06FA-06FE
+
+ 0700-070D
+
+ 0710
+
+ 0712-072C
+
+ 0780-07A5
+
+ 07B1
+
+ 200F
+
+ FB1D
+
+ FB1F-FB28
+
+ FB2A-FB36
+
+ FB38-FB3C
+
+ FB3E
+
+ FB40-FB41
+
+ FB43-FB44
+
+ FB46-FBB1
+
+ FBD3-FD3D
+
+ FD50-FD8F
+
+ FD92-FDC7
+
+ FDF0-FDFC
+
+ FE70-FE74
+
+ FE76-FEFC
+
+ ----- End Table D.1 -----
+
+ ----- Start Table D.2 -----
+
+ 0041-005A
+
+ 0061-007A
+
+ 00AA
+
+ 00B5
+
+ 00BA
+
+ 00C0-00D6
+
+ 00D8-00F6
+
+ 00F8-0220
+
+ 0222-0233
+
+ 0250-02AD
+
+ 02B0-02B8
+
+ 02BB-02C1
+
+ 02D0-02D1
+
+ 02E0-02E4
+
+ 02EE
+
+ 037A
+
+ 0386
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0388-038A
+
+ 038C
+
+ 038E-03A1
+
+ 03A3-03CE
+
+ 03D0-03F5
+
+ 0400-0482
+
+ 048A-04CE
+
+ 04D0-04F5
+
+ 04F8-04F9
+
+ 0500-050F
+
+ 0531-0556
+
+ 0559-055F
+
+ 0561-0587
+
+ 0589
+
+ 0903
+
+ 0905-0939
+
+ 093D-0940
+
+ 0949-094C
+
+ 0950
+
+ 0958-0961
+
+ 0964-0970
+
+ 0982-0983
+
+ 0985-098C
+
+ 098F-0990
+
+ 0993-09A8
+
+ 09AA-09B0
+
+ 09B2
+
+ 09B6-09B9
+
+ 09BE-09C0
+
+ 09C7-09C8
+
+ 09CB-09CC
+
+ 09D7
+
+ 09DC-09DD
+
+ 09DF-09E1
+
+ 09E6-09F1
+
+ 09F4-09FA
+
+ 0A05-0A0A
+
+ 0A0F-0A10
+
+ 0A13-0A28
+
+ 0A2A-0A30
+
+ 0A32-0A33
+
+ 0A35-0A36
+
+ 0A38-0A39
+
+ 0A3E-0A40
+
+ 0A59-0A5C
+
+ 0A5E
+
+ 0A66-0A6F
+
+ 0A72-0A74
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0A83
+
+ 0A85-0A8B
+
+ 0A8D
+
+ 0A8F-0A91
+
+ 0A93-0AA8
+
+ 0AAA-0AB0
+
+ 0AB2-0AB3
+
+ 0AB5-0AB9
+
+ 0ABD-0AC0
+
+ 0AC9
+
+ 0ACB-0ACC
+
+ 0AD0
+
+ 0AE0
+
+ 0AE6-0AEF
+
+ 0B02-0B03
+
+ 0B05-0B0C
+
+ 0B0F-0B10
+
+ 0B13-0B28
+
+ 0B2A-0B30
+
+ 0B32-0B33
+
+ 0B36-0B39
+
+ 0B3D-0B3E
+
+ 0B40
+
+ 0B47-0B48
+
+ 0B4B-0B4C
+
+ 0B57
+
+ 0B5C-0B5D
+
+ 0B5F-0B61
+
+ 0B66-0B70
+
+ 0B83
+
+ 0B85-0B8A
+
+ 0B8E-0B90
+
+ 0B92-0B95
+
+ 0B99-0B9A
+
+ 0B9C
+
+ 0B9E-0B9F
+
+ 0BA3-0BA4
+
+ 0BA8-0BAA
+
+ 0BAE-0BB5
+
+ 0BB7-0BB9
+
+ 0BBE-0BBF
+
+ 0BC1-0BC2
+
+ 0BC6-0BC8
+
+ 0BCA-0BCC
+
+ 0BD7
+
+ 0BE7-0BF2
+
+ 0C01-0C03
+
+ 0C05-0C0C
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0C0E-0C10
+
+ 0C12-0C28
+
+ 0C2A-0C33
+
+ 0C35-0C39
+
+ 0C41-0C44
+
+ 0C60-0C61
+
+ 0C66-0C6F
+
+ 0C82-0C83
+
+ 0C85-0C8C
+
+ 0C8E-0C90
+
+ 0C92-0CA8
+
+ 0CAA-0CB3
+
+ 0CB5-0CB9
+
+ 0CBE
+
+ 0CC0-0CC4
+
+ 0CC7-0CC8
+
+ 0CCA-0CCB
+
+ 0CD5-0CD6
+
+ 0CDE
+
+ 0CE0-0CE1
+
+ 0CE6-0CEF
+
+ 0D02-0D03
+
+ 0D05-0D0C
+
+ 0D0E-0D10
+
+ 0D12-0D28
+
+ 0D2A-0D39
+
+ 0D3E-0D40
+
+ 0D46-0D48
+
+ 0D4A-0D4C
+
+ 0D57
+
+ 0D60-0D61
+
+ 0D66-0D6F
+
+ 0D82-0D83
+
+ 0D85-0D96
+
+ 0D9A-0DB1
+
+ 0DB3-0DBB
+
+ 0DBD
+
+ 0DC0-0DC6
+
+ 0DCF-0DD1
+
+ 0DD8-0DDF
+
+ 0DF2-0DF4
+
+ 0E01-0E30
+
+ 0E32-0E33
+
+ 0E40-0E46
+
+ 0E4F-0E5B
+
+ 0E81-0E82
+
+ 0E84
+
+ 0E87-0E88
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 0E8A
+
+ 0E8D
+
+ 0E94-0E97
+
+ 0E99-0E9F
+
+ 0EA1-0EA3
+
+ 0EA5
+
+ 0EA7
+
+ 0EAA-0EAB
+
+ 0EAD-0EB0
+
+ 0EB2-0EB3
+
+ 0EBD
+
+ 0EC0-0EC4
+
+ 0EC6
+
+ 0ED0-0ED9
+
+ 0EDC-0EDD
+
+ 0F00-0F17
+
+ 0F1A-0F34
+
+ 0F36
+
+ 0F38
+
+ 0F3E-0F47
+
+ 0F49-0F6A
+
+ 0F7F
+
+ 0F85
+
+ 0F88-0F8B
+
+ 0FBE-0FC5
+
+ 0FC7-0FCC
+
+ 0FCF
+
+ 1000-1021
+
+ 1023-1027
+
+ 1029-102A
+
+ 102C
+
+ 1031
+
+ 1038
+
+ 1040-1057
+
+ 10A0-10C5
+
+ 10D0-10F8
+
+ 10FB
+
+ 1100-1159
+
+ 115F-11A2
+
+ 11A8-11F9
+
+ 1200-1206
+
+ 1208-1246
+
+ 1248
+
+ 124A-124D
+
+ 1250-1256
+
+ 1258
+
+ 125A-125D
+
+ 1260-1286
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1288
+
+ 128A-128D
+
+ 1290-12AE
+
+ 12B0
+
+ 12B2-12B5
+
+ 12B8-12BE
+
+ 12C0
+
+ 12C2-12C5
+
+ 12C8-12CE
+
+ 12D0-12D6
+
+ 12D8-12EE
+
+ 12F0-130E
+
+ 1310
+
+ 1312-1315
+
+ 1318-131E
+
+ 1320-1346
+
+ 1348-135A
+
+ 1361-137C
+
+ 13A0-13F4
+
+ 1401-1676
+
+ 1681-169A
+
+ 16A0-16F0
+
+ 1700-170C
+
+ 170E-1711
+
+ 1720-1731
+
+ 1735-1736
+
+ 1740-1751
+
+ 1760-176C
+
+ 176E-1770
+
+ 1780-17B6
+
+ 17BE-17C5
+
+ 17C7-17C8
+
+ 17D4-17DA
+
+ 17DC
+
+ 17E0-17E9
+
+ 1810-1819
+
+ 1820-1877
+
+ 1880-18A8
+
+ 1E00-1E9B
+
+ 1EA0-1EF9
+
+ 1F00-1F15
+
+ 1F18-1F1D
+
+ 1F20-1F45
+
+ 1F48-1F4D
+
+ 1F50-1F57
+
+ 1F59
+
+ 1F5B
+
+ 1F5D
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1F5F-1F7D
+
+ 1F80-1FB4
+
+ 1FB6-1FBC
+
+ 1FBE
+
+ 1FC2-1FC4
+
+ 1FC6-1FCC
+
+ 1FD0-1FD3
+
+ 1FD6-1FDB
+
+ 1FE0-1FEC
+
+ 1FF2-1FF4
+
+ 1FF6-1FFC
+
+ 200E
+
+ 2071
+
+ 207F
+
+ 2102
+
+ 2107
+
+ 210A-2113
+
+ 2115
+
+ 2119-211D
+
+ 2124
+
+ 2126
+
+ 2128
+
+ 212A-212D
+
+ 212F-2131
+
+ 2133-2139
+
+ 213D-213F
+
+ 2145-2149
+
+ 2160-2183
+
+ 2336-237A
+
+ 2395
+
+ 249C-24E9
+
+ 3005-3007
+
+ 3021-3029
+
+ 3031-3035
+
+ 3038-303C
+
+ 3041-3096
+
+ 309D-309F
+
+ 30A1-30FA
+
+ 30FC-30FF
+
+ 3105-312C
+
+ 3131-318E
+
+ 3190-31B7
+
+ 31F0-321C
+
+ 3220-3243
+
+ 3260-327B
+
+ 327F-32B0
+
+ 32C0-32CB
+
+ 32D0-32FE
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 3300-3376
+
+ 337B-33DD
+
+ 33E0-33FE
+
+ 3400-4DB5
+
+ 4E00-9FA5
+
+ A000-A48C
+
+ AC00-D7A3
+
+ D800-FA2D
+
+ FA30-FA6A
+
+ FB00-FB06
+
+ FB13-FB17
+
+ FF21-FF3A
+
+ FF41-FF5A
+
+ FF66-FFBE
+
+ FFC2-FFC7
+
+ FFCA-FFCF
+
+ FFD2-FFD7
+
+ FFDA-FFDC
+
+ 10300-1031E
+
+ 10320-10323
+
+ 10330-1034A
+
+ 10400-10425
+
+ 10428-1044D
+
+ 1D000-1D0F5
+
+ 1D100-1D126
+
+ 1D12A-1D166
+
+ 1D16A-1D172
+
+ 1D183-1D184
+
+ 1D18C-1D1A9
+
+ 1D1AE-1D1DD
+
+ 1D400-1D454
+
+ 1D456-1D49C
+
+ 1D49E-1D49F
+
+ 1D4A2
+
+ 1D4A5-1D4A6
+
+ 1D4A9-1D4AC
+
+ 1D4AE-1D4B9
+
+ 1D4BB
+
+ 1D4BD-1D4C0
+
+ 1D4C2-1D4C3
+
+ 1D4C5-1D505
+
+ 1D507-1D50A
+
+ 1D50D-1D514
+
+ 1D516-1D51C
+
+ 1D51E-1D539
+
+ 1D53B-1D53E
+
+ 1D540-1D544
+
+ 1D546
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 1D54A-1D550
+
+ 1D552-1D6A3
+
+ 1D6A8-1D7C9
+
+ 20000-2A6D6
+
+ 2F800-2FA1D
+
+ F0000-FFFFD
+
+ 100000-10FFFD
+
+ ----- End Table D.2 -----
+
diff --git a/source4/heimdal_build/wscript_build b/source4/heimdal_build/wscript_build
index c733b8f..f3e9ab2 100644
--- a/source4/heimdal_build/wscript_build
+++ b/source4/heimdal_build/wscript_build
@@ -843,7 +843,7 @@ if not bld.CONFIG_SET('USING_SYSTEM_WIND'):
HEIMDAL_GENERATOR(
name="HEIMDAL_ERRORLIST",
rule="${PYTHON} '${SRC[0].abspath()}' '${SRC[1].abspath()}' '${SRC[1].parent.abspath(env)}'",
- source = '../heimdal/lib/wind/gen-errorlist.py ../heimdal/lib/wind/rfc3454.txt ../heimdal/lib/wind/stringprep.py',
+ source = '../heimdal/lib/wind/gen-errorlist.py ../heimdal/lib/wind/rfc3454.txt-table ../heimdal/lib/wind/stringprep.py',
target = '../heimdal/lib/wind/errorlist_table.c ../heimdal/lib/wind/errorlist_table.h'
)
@@ -865,7 +865,7 @@ if not bld.CONFIG_SET('USING_SYSTEM_WIND'):
HEIMDAL_GENERATOR(
name = 'HEIMDAL_BIDI_TABLE',
rule="${PYTHON} '${SRC[0].abspath()}' '${SRC[1].abspath()}' '${SRC[1].parent.abspath(env)}'",
- source = '../heimdal/lib/wind/gen-bidi.py ../heimdal/lib/wind/rfc3454.txt',
+ source = '../heimdal/lib/wind/gen-bidi.py ../heimdal/lib/wind/rfc3454.txt-table',
target = '../heimdal/lib/wind/bidi_table.h ../heimdal/lib/wind/bidi_table.c'
)
@@ -873,7 +873,7 @@ if not bld.CONFIG_SET('USING_SYSTEM_WIND'):
HEIMDAL_GENERATOR(
name = 'HEIMDAL_MAP_TABLE',
rule="${PYTHON} '${SRC[0].abspath()}' '${SRC[2].abspath()}' '${SRC[2].parent.abspath(env)}'",
- source = '../heimdal/lib/wind/gen-map.py ../heimdal/lib/wind/stringprep.py ../heimdal/lib/wind/rfc3454.txt',
+ source = '../heimdal/lib/wind/gen-map.py ../heimdal/lib/wind/stringprep.py ../heimdal/lib/wind/rfc3454.txt-table',
target = '../heimdal/lib/wind/map_table.h ../heimdal/lib/wind/map_table.c'
)
diff --git a/source4/param/wscript_build b/source4/param/wscript_build
index 2ad753b..6fa1c4c 100644
--- a/source4/param/wscript_build
+++ b/source4/param/wscript_build
@@ -18,7 +18,7 @@ bld.SAMBA_MODULE('share_classic',
source='share_classic.c',
subsystem='share',
init_function='share_classic_init',
- deps='samba-util'
+ deps='samba-util samba-hostconfig'
)
@@ -26,7 +26,8 @@ bld.SAMBA_MODULE('share_ldb',
source='share_ldb.c',
subsystem='share',
init_function='share_ldb_init',
- deps='ldbsamba auth_system_session'
+ deps='ldbsamba auth_system_session',
+ internal_module=False,
)
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-samba/samba.git
More information about the Pkg-samba-maint
mailing list