diff options
39 files changed, 16121 insertions, 0 deletions
diff --git a/source3/intl/ChangeLog b/source3/intl/ChangeLog new file mode 100644 index 0000000000..198950159d --- /dev/null +++ b/source3/intl/ChangeLog @@ -0,0 +1,1086 @@ +1998-04-29 Ulrich Drepper <drepper@cygnus.com> + + * intl/localealias.c (read_alias_file): Use unsigned char for + local variables. Remove unused variable tp. + * intl/l10nflist.c (_nl_normalize_codeset): Use unsigned char * + for type of codeset. For loosing Solaris systems. + * intl/loadinfo.h: Adapt prototype of _nl_normalize_codeset. + * intl/bindtextdom.c (BINDTEXTDOMAIN): Don't define local variable + len if not needed. + Patches by Jim Meyering. + +1998-04-28 Ulrich Drepper <drepper@cygnus.com> + + * loadmsgcat.c (_nl_load_domain): Don't assign the element use_mmap if + mmap is not supported. + + * hash-string.h: Don't include <values.h>. + +1998-04-27 Ulrich Drepper <drepper@cygnus.com> + + * textdomain.c: Use strdup is available. + + * localealias.c: Define HAVE_MEMPCPY so that we can use this + function. Define and use semapahores to protect modfication of + global objects when compiling for glibc. Add code to allow + freeing alias table. + + * l10nflist.c: Don't assume stpcpy not being a macro. + + * gettextP.h: Define internal_function macri if not already done. + Use glibc byte-swap macros instead of defining SWAP when compiled + for glibc. + (struct loaded_domain): Add elements to allow unloading. + + * Makefile.in (distclean): Don't remove libintl.h here. + + * bindtextdomain.c: Carry over changes from glibc. Use strdup if + available. + + * dcgettext.c: Don't assume stpcpy not being a macro. Mark internal + functions. Add memory freeing code for glibc. + + * dgettext.c: Update copyright. + + * explodename.c: Include stdlib.h and string.h only if they exist. + Use strings.h eventually. + + * finddomain.c: Mark internal functions. Use strdup if available. + Add memory freeing code for glibc. + +1997-10-10 20:00 Ulrich Drepper <drepper@cygnus.com> + + * libgettext.h: Fix dummy textdomain and bindtextdomain macros. + They should return reasonable values. + Reported by Tom Tromey <tromey@cygnus.com>. + +1997-09-16 03:33 Ulrich Drepper <drepper@cygnus.com> + + * libgettext.h: Define PARAMS also to `args' if __cplusplus is defined. + * intlh.inst.in: Likewise. + Reported by Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>. + + * libintl.glibc: Update from current glibc version. + +1997-09-06 02:10 Ulrich Drepper <drepper@cygnus.com> + + * intlh.inst.in: Reformat copyright. + +1997-08-19 15:22 Ulrich Drepper <drepper@cygnus.com> + + * dcgettext.c (DCGETTEXT): Remove wrong comment. + +1997-08-16 00:13 Ulrich Drepper <drepper@cygnus.com> + + * Makefile.in (install-data): Don't change directory to install. + +1997-08-01 14:30 Ulrich Drepper <drepper@cygnus.com> + + * cat-compat.c: Fix copyright. + + * localealias.c: Don't define strchr unless !HAVE_STRCHR. + + * loadmsgcat.c: Update copyright. Fix typos. + + * l10nflist.c: Don't define strchr unless !HAVE_STRCHR. + (_nl_make_l10nflist): Handle sponsor and revision correctly. + + * gettext.c: Update copyright. + * gettext.h: Likewise. + * hash-string.h: Likewise. + + * finddomain.c: Remoave dead code. Define strchr only if + !HAVE_STRCHR. + + * explodename.c: Include <sys/types.h>. + + * explodename.c: Reformat copyright text. + (_nl_explode_name): Fix typo. + + * dcgettext.c: Define and use __set_errno. + (guess_category_value): Don't use setlocale if HAVE_LC_MESSAGES is + not defined. + + * bindtextdom.c: Pretty printing. + +1997-05-01 02:25 Ulrich Drepper <drepper@cygnus.com> + + * dcgettext.c (guess_category_value): Don't depend on + HAVE_LC_MESSAGES. We don't need the macro here. + Patch by Bruno Haible <haible@ilog.fr>. + + * cat-compat.c (textdomain): DoN't refer to HAVE_SETLOCALE_NULL + macro. Instead use HAVE_LOCALE_NULL and define it when using + glibc, as in dcgettext.c. + Patch by Bruno Haible <haible@ilog.fr>. + + * Makefile.in (CPPFLAGS): New variable. Reported by Franc,ois + Pinard. + +Mon Mar 10 06:51:17 1997 Ulrich Drepper <drepper@cygnus.com> + + * Makefile.in: Implement handling of libtool. + + * gettextP.h: Change data structures for use of generic lowlevel + i18n file handling. + +Wed Dec 4 20:21:18 1996 Ulrich Drepper <drepper@cygnus.com> + + * textdomain.c: Put parentheses around arguments of memcpy macro + definition. + * localealias.c: Likewise. + * l10nflist.c: Likewise. + * finddomain.c: Likewise. + * bindtextdom.c: Likewise. + Reported by Thomas Esken. + +Mon Nov 25 22:57:51 1996 Ulrich Drepper <drepper@cygnus.com> + + * textdomain.c: Move definition of `memcpy` macro to right + position. + +Fri Nov 22 04:01:58 1996 Ulrich Drepper <drepper@cygnus.com> + + * finddomain.c [!HAVE_STRING_H && !_LIBC]: Define memcpy using + bcopy if not already defined. Reported by Thomas Esken. + * bindtextdom.c: Likewise. + * l10nflist.c: Likewise. + * localealias.c: Likewise. + * textdomain.c: Likewise. + +Tue Oct 29 11:10:27 1996 Ulrich Drepper <drepper@cygnus.com> + + * Makefile.in (libdir): Change to use exec_prefix instead of + prefix. Reported by Knut-HåvardAksnes <etokna@eto.ericsson.se>. + +Sat Aug 31 03:07:09 1996 Ulrich Drepper <drepper@cygnus.com> + + * l10nflist.c (_nl_normalize_codeset): We convert to lower case, + so don't prepend uppercase `ISO' for only numeric arg. + +Fri Jul 19 00:15:46 1996 Ulrich Drepper <drepper@cygnus.com> + + * l10nflist.c: Move inclusion of argz.h, ctype.h, stdlib.h after + definition of _GNU_SOURCE. Patch by Roland McGrath. + + * Makefile.in (uninstall): Fix another bug with `for' loop and + empty arguments. Patch by Jim Meyering. Correct name os + uninstalled files: no intl- prefix anymore. + + * Makefile.in (install-data): Again work around shells which + cannot handle mpty for list. Reported by Jim Meyering. + +Sat Jul 13 18:11:35 1996 Ulrich Drepper <drepper@cygnus.com> + + * Makefile.in (install): Split goal. Now depend on install-exec + and install-data. + (install-exec, install-data): New goals. Created from former + install goal. + Reported by Karl Berry. + +Sat Jun 22 04:58:14 1996 Ulrich Drepper <drepper@cygnus.com> + + * Makefile.in (MKINSTALLDIRS): New variable. Path to + mkinstalldirs script. + (install): use MKINSTALLDIRS variable or if the script is not present + try to find it in the $top_scrdir). + +Wed Jun 19 02:56:56 1996 Ulrich Drepper <drepper@cygnus.com> + + * l10nflist.c: Linux libc *partly* includes the argz_* functions. + Grr. Work around by renaming the static version and use macros + for renaming. + +Tue Jun 18 20:11:17 1996 Ulrich Drepper <drepper@cygnus.com> + + * l10nflist.c: Correct presence test macros of __argz_* functions. + + * l10nflist.c: Include <argz.h> based on test of it instead when + __argz_* functions are available. + Reported by Andreas Schwab. + +Thu Jun 13 15:17:44 1996 Ulrich Drepper <drepper@cygnus.com> + + * explodename.c, l10nflist.c: Define NULL for dumb systems. + +Tue Jun 11 17:05:13 1996 Ulrich Drepper <drepper@cygnus.com> + + * intlh.inst.in, libgettext.h (dcgettext): Rename local variable + result to __result to prevent name clash. + + * l10nflist.c, localealias.c, dcgettext.c: Define _GNU_SOURCE to + get prototype for stpcpy and strcasecmp. + + * intlh.inst.in, libgettext.h: Move declaration of + `_nl_msg_cat_cntr' outside __extension__ block to prevent warning + from gcc's -Wnested-extern option. + +Fri Jun 7 01:58:00 1996 Ulrich Drepper <drepper@cygnus.com> + + * Makefile.in (install): Remove comment. + +Thu Jun 6 17:28:17 1996 Ulrich Drepper <drepper@cygnus.com> + + * Makefile.in (install): Work around for another Buglix stupidity. + Always use an `else' close for `if's. Reported by Nelson Beebe. + + * Makefile.in (intlh.inst): Correct typo in phony rule. + Reported by Nelson Beebe. + +Thu Jun 6 01:49:52 1996 Ulrich Drepper <drepper@cygnus.com> + + * dcgettext.c (read_alias_file): Rename variable alloca_list to + block_list as the macro calls assume. + Patch by Eric Backus. + + * localealias.c [!HAVE_ALLOCA]: Define alloca as macro using + malloc. + (read_alias_file): Rename varriabe alloca_list to block_list as the + macro calls assume. + Patch by Eric Backus. + + * l10nflist.c: Correct conditional for <argz.h> inclusion. + Reported by Roland McGrath. + + * Makefile.in (all): Depend on all-@USE_INCLUDED_LIBINTL@, not + all-@USE_NLS@. + + * Makefile.in (install): intlh.inst comes from local dir, not + $(srcdir). + + * Makefile.in (intlh.inst): Special handling of this goal. If + used in gettext, this is really a rul to construct this file. If + used in any other package it is defined as a .PHONY rule with + empty body. + + * finddomain.c: Extract locale file information handling into + l10nfile.c. Rename local stpcpy__ function to stpcpy. + + * dcgettext.c (stpcpy): Add local definition. + + * l10nflist.c: Solve some portability problems. Patches partly by + Thomas Esken. Add local definition of stpcpy. + +Tue Jun 4 02:47:49 1996 Ulrich Drepper <drepper@cygnus.com> + + * intlh.inst.in: Don't depend including <locale.h> on + HAVE_LOCALE_H. Instead configure must rewrite this fiile + depending on the result of the configure run. + + * Makefile.in (install): libintl.inst is now called intlh.inst. + Add rules for updating intlh.inst from intlh.inst.in. + + * libintl.inst: Renamed to intlh.inst.in. + + * localealias.c, dcgettext.c [__GNUC__]: Define HAVE_ALLOCA to 1 + because gcc has __buitlin_alloca. + Reported by Roland McGrath. + +Mon Jun 3 00:32:16 1996 Ulrich Drepper <drepper@cygnus.com> + + * Makefile.in (installcheck): New goal to fulfill needs of + automake's distcheck. + + * Makefile.in (install): Reorder commands so that VERSION is + found. + + * Makefile.in (gettextsrcdir): Now use subdirectory intl/ in + @datadir@/gettext. + (COMSRCS): Add l10nfile.c. + (OBJECTS): Add l10nfile.o. + (DISTFILES): Rename to DISTFILE.normal. Remove $(DISTFILES.common). + (DISTFILE.gettext): Remove $(DISTFILES.common). + (all-gettext): Remove goal. + (install): If $(PACKAGE) = gettext install, otherwose do nothing. No + package but gettext itself should install libintl.h + headers. + (dist): Extend goal to work for gettext, too. + (dist-gettext): Remove goal. + + * dcgettext.c [!HAVE_ALLOCA]: Define macro alloca by using malloc. + +Sun Jun 2 17:33:06 1996 Ulrich Drepper <drepper@cygnus.com> + + * loadmsgcat.c (_nl_load_domain): Parameter is now comes from + find_l10nfile. + +Sat Jun 1 02:23:03 1996 Ulrich Drepper <drepper@cygnus.com> + + * l10nflist.c (__argz_next): Add definition. + + * dcgettext.c [!HAVE_ALLOCA]: Add code for handling missing alloca + code. Use new l10nfile handling. + + * localealias.c [!HAVE_ALLOCA]: Add code for handling missing + alloca code. + + * l10nflist.c: Initial revision. + +Tue Apr 2 18:51:18 1996 Ulrich Drepper <drepper@myware> + + * Makefile.in (all-gettext): New goal. Same as all-yes. + +Thu Mar 28 23:01:22 1996 Karl Eichwalder <ke@ke.central.de> + + * Makefile.in (gettextsrcdir): Define using @datadir@. + +Tue Mar 26 12:39:14 1996 Ulrich Drepper <drepper@myware> + + * finddomain.c: Include <ctype.h>. Reported by Roland McGrath. + +Sat Mar 23 02:00:35 1996 Ulrich Drepper <drepper@myware> + + * finddomain.c (stpcpy): Rename to stpcpy__ to prevent clashing + with external declaration. + +Sat Mar 2 00:47:09 1996 Ulrich Drepper <drepper@myware> + + * Makefile.in (all-no): Rename from all_no. + +Sat Feb 17 00:25:59 1996 Ulrich Drepper <drepper@myware> + + * gettextP.h [loaded_domain]: Array `successor' must now contain up + to 63 elements (because of codeset name normalization). + + * finddomain.c: Implement codeset name normalization. + +Thu Feb 15 04:39:09 1996 Ulrich Drepper <drepper@myware> + + * Makefile.in (all): Define to `all-@USE_NLS@'. + (all-yes, all_no): New goals. `all-no' is noop, `all-yes' + is former all. + +Mon Jan 15 21:46:01 1996 Howard Gayle <howard@hal.com> + + * localealias.c (alias_compare): Increment string pointers in loop + of strcasecmp replacement. + +Fri Dec 29 21:16:34 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (install-src): Who commented this goal out ? :-) + +Fri Dec 29 15:08:16 1995 Ulrich Drepper <drepper@myware> + + * dcgettext.c (DCGETTEXT): Save `errno'. Failing system calls + should not effect it because a missing catalog is no error. + Reported by Harald K<o:>nig <koenig@tat.physik.uni-tuebingen.de>. + +Tue Dec 19 22:09:13 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (Makefile): Explicitly use $(SHELL) for running + shell scripts. + +Fri Dec 15 17:34:59 1995 Andreas Schwab <schwab@issan.informatik.uni-dortmund.de> + + * Makefile.in (install-src): Only install library and header when + we use the own implementation. Don't do it when using the + system's gettext or catgets functions. + + * dcgettext.c (find_msg): Must not swap domain->hash_size here. + +Sat Dec 9 16:24:37 1995 Ulrich Drepper <drepper@myware> + + * localealias.c, libintl.inst, libgettext.h, hash-string.h, + gettextP.h, finddomain.c, dcgettext.c, cat-compat.c: + Use PARAMS instead of __P. Suggested by Roland McGrath. + +Tue Dec 5 11:39:14 1995 Larry Schwimmer <rosebud@cyclone.stanford.edu> + + * libgettext.h: Use `#if !defined (_LIBINTL_H)' instead of `#if + !_LIBINTL_H' because Solaris defines _LIBINTL_H as empty. + +Mon Dec 4 15:42:07 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (install-src): + Install libintl.inst instead of libintl.h.install. + +Sat Dec 2 22:51:38 1995 Marcus Daniels <marcus@sysc.pdx.edu> + + * cat-compat.c (textdomain): + Reverse order in which files are tried you load. First + try local file, when this failed absolute path. + +Wed Nov 29 02:03:53 1995 Nelson H. F. Beebe <beebe@math.utah.edu> + + * cat-compat.c (bindtextdomain): Add missing { }. + +Sun Nov 26 18:21:41 1995 Ulrich Drepper <drepper@myware> + + * libintl.inst: Add missing __P definition. Reported by Nelson Beebe. + + * Makefile.in: + Add dummy `all' and `dvi' goals. Reported by Tom Tromey. + +Sat Nov 25 16:12:01 1995 Franc,ois Pinard <pinard@iro.umontreal.ca> + + * hash-string.h: Capitalize arguments of macros. + +Sat Nov 25 12:01:36 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (DISTFILES): Prevent files names longer than 13 + characters. libintl.h.glibc->libintl.glibc, + libintl.h.install->libintl.inst. Reported by Joshua R. Poulson. + +Sat Nov 25 11:31:12 1995 Eric Backus <ericb@lsid.hp.com> + + * dcgettext.c: Fix bug in preprocessor conditionals. + +Sat Nov 25 02:35:27 1995 Nelson H. F. Beebe <beebe@math.utah.edu> + + * libgettext.h: Solaris cc does not understand + #if !SYMBOL1 && !SYMBOL2. Sad but true. + +Thu Nov 23 16:22:14 1995 Ulrich Drepper <drepper@myware> + + * hash-string.h (hash_string): + Fix for machine with >32 bit `unsigned long's. + + * dcgettext.c (DCGETTEXT): + Fix horrible bug in loop for alternative translation. + +Thu Nov 23 01:45:29 1995 Ulrich Drepper <drepper@myware> + + * po2tbl.sed.in, linux-msg.sed, xopen-msg.sed: + Some further simplifications in message number generation. + +Mon Nov 20 21:08:43 1995 Ulrich Drepper <drepper@myware> + + * libintl.h.glibc: Use __const instead of const in prototypes. + + * Makefile.in (install-src): + Install libintl.h.install instead of libintl.h. This + is a stripped-down version. Suggested by Peter Miller. + + * libintl.h.install, libintl.h.glibc: Initial revision. + + * localealias.c (_nl_expand_alias, read_alias_file): + Protect prototypes in type casts by __P. + +Tue Nov 14 16:43:58 1995 Ulrich Drepper <drepper@myware> + + * hash-string.h: Correct prototype for hash_string. + +Sun Nov 12 12:42:30 1995 Ulrich Drepper <drepper@myware> + + * hash-string.h (hash_string): Add prototype. + + * gettextP.h: Fix copyright. + (SWAP): Add prototype. + +Wed Nov 8 22:56:33 1995 Ulrich Drepper <drepper@myware> + + * localealias.c (read_alias_file): Forgot sizeof. + Avoid calling *printf function. This introduces a big overhead. + Patch by Roland McGrath. + +Tue Nov 7 14:21:08 1995 Ulrich Drepper <drepper@myware> + + * finddomain.c, cat-compat.c: Wrong indentation in #if for stpcpy. + + * finddomain.c (stpcpy): + Define substitution function local. The macro was to flaky. + + * cat-compat.c: Fix typo. + + * xopen-msg.sed, linux-msg.sed: + While bringing message number to right place only accept digits. + + * linux-msg.sed, xopen-msg.sed: Now that the counter does not have + leading 0s we don't need to remove them. Reported by Marcus + Daniels. + + * Makefile.in (../po/cat-id-tbl.o): Use $(top_srdir) in + dependency. Reported by Marcus Daniels. + + * cat-compat.c: (stpcpy) [!_LIBC && !HAVE_STPCPY]: Define replacement. + Generally cleanup using #if instead of #ifndef. + + * Makefile.in: Correct typos in comment. By Franc,ois Pinard. + +Mon Nov 6 00:27:02 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (install-src): Don't install libintl.h and libintl.a + if we use an available gettext implementation. + +Sun Nov 5 22:02:08 1995 Ulrich Drepper <drepper@myware> + + * libgettext.h: Fix typo: HAVE_CATGETTS -> HAVE_CATGETS. Reported + by Franc,ois Pinard. + + * libgettext.h: Use #if instead of #ifdef/#ifndef. + + * finddomain.c: + Comments describing what has to be done should start with FIXME. + +Sun Nov 5 19:38:01 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (DISTFILES): Split. Use DISTFILES with normal meaning. + DISTFILES.common names the files common to both dist goals. + DISTFILES.gettext are the files only distributed in GNU gettext. + +Sun Nov 5 17:32:54 1995 Ulrich Drepper <drepper@myware> + + * dcgettext.c (DCGETTEXT): Correct searching in derived locales. + This was necessary since a change in _nl_find_msg several weeks + ago. I really don't know this is still not fixed. + +Sun Nov 5 12:43:12 1995 Ulrich Drepper <drepper@myware> + + * loadmsgcat.c (_nl_load_domain): Test for FILENAME == NULL. This + might mark a special condition. + + * finddomain.c (make_entry_rec): Don't make illegal entry as decided. + + * Makefile.in (dist): Suppress error message when ln failed. + Get files from $(srcdir) explicitly. + + * libgettext.h (gettext_const): Rename to gettext_noop. + +Fri Nov 3 07:36:50 1995 Ulrich Drepper <drepper@myware> + + * finddomain.c (make_entry_rec): + Protect against wrong locale names by testing mask. + + * libgettext.h (gettext_const): Add macro definition. + Capitalize macro arguments. + +Thu Nov 2 23:15:51 1995 Ulrich Drepper <drepper@myware> + + * finddomain.c (_nl_find_domain): + Test for pointer != NULL before accessing value. + Reported by Tom Tromey. + + * gettext.c (NULL): + Define as (void*)0 instad of 0. Reported by Franc,ois Pinard. + +Mon Oct 30 21:28:52 1995 Ulrich Drepper <drepper@myware> + + * po2tbl.sed.in: Serious typo bug fixed by Jim Meyering. + +Sat Oct 28 23:20:47 1995 Ulrich Drepper <drepper@myware> + + * libgettext.h: Disable dcgettext optimization for Solaris 2.3. + + * localealias.c (alias_compare): + Peter Miller reported that tolower in some systems is + even dumber than I thought. Protect call by `isupper'. + +Fri Oct 27 22:22:51 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (libdir, includedir): New variables. + (install-src): Install libintl.a and libintl.h in correct dirs. + +Fri Oct 27 22:07:29 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (SOURCES): Fix typo: intrl.compat.c -> intl-compat.c. + + * po2tbl.sed.in: Patch for buggy SEDs by Christian von Roques. + + * localealias.c: + Fix typo and superflous test. Reported by Christian von Roques. + +Fri Oct 6 11:52:05 1995 Ulrich Drepper <drepper@myware> + + * finddomain.c (_nl_find_domain): + Correct some remainder from the pre-CEN syntax. Now + we don't have a constant number of successors anymore. + +Wed Sep 27 21:41:13 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (DISTFILES): Add libintl.h.glibc. + + * Makefile.in (dist-libc): Add goal for packing sources for glibc. + (COMSRCS, COMHDRS): Splitted to separate sources shared with glibc. + + * loadmsgcat.c: Forget to continue #if line. + + * localealias.c: + [_LIBC]: Rename strcasecmp to __strcasecmp to keep ANSI C name + space clean. + + * dcgettext.c, finddomain.c: Better comment to last change. + + * loadmsgcat.c: + [_LIBC]: Rename fstat, open, close, read, mmap, and munmap to + __fstat, __open, __close, __read, __mmap, and __munmap resp + to keep ANSI C name space clean. + + * finddomain.c: + [_LIBC]: Rename stpcpy to __stpcpy to keep ANSI C name space clean. + + * dcgettext.c: + [_LIBC]: Rename getced and stpcpy to __getcwd and __stpcpy resp to + keep ANSI C name space clean. + + * libgettext.h: + Include sys/types.h for those old SysV systems out there. + Reported by Francesco Potorti`. + + * loadmsgcat.c (use_mmap): Define if compiled for glibc. + + * bindtextdom.c: Include all those standard headers + unconditionally if _LIBC is defined. + + * finddomain.c: Fix 2 times defiend -> defined. + + * textdomain.c: Include libintl.h instead of libgettext.h when + compiling for glibc. Include all those standard headers + unconditionally if _LIBC is defined. + + * localealias.c, loadmsgcat.c: Prepare to be compiled in glibc. + + * gettext.c: + Include libintl.h instead of libgettext.h when compiling for glibc. + Get NULL from stddef.h if we compile for glibc. + + * finddomain.c: Include libintl.h instead of libgettext.h when + compiling for glibc. Include all those standard headers + unconditionally if _LIBC is defined. + + * dcgettext.c: Include all those standard headers unconditionally + if _LIBC is defined. + + * dgettext.c: If compiled in glibc include libintl.h instead of + libgettext.h. + (locale.h): Don't rely on HAVE_LOCALE_H when compiling for glibc. + + * dcgettext.c: If compiled in glibc include libintl.h instead of + libgettext.h. + (getcwd): Don't rely on HAVE_GETCWD when compiling for glibc. + + * bindtextdom.c: + If compiled in glibc include libintl.h instead of libgettext.h. + +Mon Sep 25 22:23:06 1995 Ulrich Drepper <drepper@myware> + + * localealias.c (_nl_expand_alias): Don't call bsearch if NMAP <= 0. + Reported by Marcus Daniels. + + * cat-compat.c (bindtextdomain): + String used in putenv must not be recycled. + Reported by Marcus Daniels. + + * libgettext.h (__USE_GNU_GETTEXT): + Additional symbol to signal that we use GNU gettext + library. + + * cat-compat.c (bindtextdomain): + Fix bug with the strange stpcpy replacement. + Reported by Nelson Beebe. + +Sat Sep 23 08:23:51 1995 Ulrich Drepper <drepper@myware> + + * cat-compat.c: Include <string.h> for stpcpy prototype. + + * localealias.c (read_alias_file): + While expand strdup code temporary variable `cp' hided + higher level variable with same name. Rename to `tp'. + + * textdomain.c (textdomain): + Avoid warning by using temporary variable in strdup code. + + * finddomain.c (_nl_find_domain): Remove unused variable `application'. + +Thu Sep 21 15:51:44 1995 Ulrich Drepper <drepper@myware> + + * localealias.c (alias_compare): + Use strcasecmp() only if available. Else use + implementation in place. + + * intl-compat.c: + Wrapper functions now call *__ functions instead of __*. + + * libgettext.h: Declare prototypes for *__ functions instead for __*. + + * cat-compat.c, loadmsgcat.c: + Don't use xmalloc, xstrdup, and stpcpy. These functions are not part + of the standard libc and so prevent libintl.a from being used + standalone. + + * bindtextdom.c: + Don't use xmalloc, xstrdup, and stpcpy. These functions are not part + of the standard libc and so prevent libintl.a from being used + standalone. + Rename to bindtextdomain__ if not used in GNU C Library. + + * dgettext.c: + Rename function to dgettext__ if not used in GNU C Library. + + * gettext.c: + Don't use xmalloc, xstrdup, and stpcpy. These functions are not part + of the standard libc and so prevent libintl.a from being used + standalone. + Functions now called gettext__ if not used in GNU C Library. + + * dcgettext.c, localealias.c, textdomain.c, finddomain.c: + Don't use xmalloc, xstrdup, and stpcpy. These functions are not part + of the standard libc and so prevent libintl.a from being used + standalone. + +Sun Sep 17 23:14:49 1995 Ulrich Drepper <drepper@myware> + + * finddomain.c: Correct some bugs in handling of CEN standard + locale definitions. + +Thu Sep 7 01:49:28 1995 Ulrich Drepper <drepper@myware> + + * finddomain.c: Implement CEN syntax. + + * gettextP.h (loaded_domain): Extend number of successors to 31. + +Sat Aug 19 19:25:29 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (aliaspath): Remove path to X11 locale dir. + + * Makefile.in: Make install-src depend on install. This helps + gettext to install the sources and other packages can use the + install goal. + +Sat Aug 19 15:19:33 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (uninstall): Remove stuff installed by install-src. + +Tue Aug 15 13:13:53 1995 Ulrich Drepper <drepper@myware> + + * VERSION.in: Initial revision. + + * Makefile.in (DISTFILES): + Add VERSION file. This is not necessary for gettext, but + for other packages using this library. + +Tue Aug 15 06:16:44 1995 Ulrich Drepper <drepper@myware> + + * gettextP.h (_nl_find_domain): + New prototype after changing search strategy. + + * finddomain.c (_nl_find_domain): + We now try only to find a specified catalog. Fall back to other + catalogs listed in the locale list is now done in __dcgettext. + + * dcgettext.c (__dcgettext): + Now we provide message fall back even to different languages. + I.e. if a message is not available in one language all the other + in the locale list a tried. Formerly fall back was only possible + within one language. Implemented by moving one loop from + _nl_find_domain to here. + +Mon Aug 14 23:45:50 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (gettextsrcdir): + Directory where source of GNU gettext library are made + available. + (INSTALL, INSTALL_DATA): Programs used for installing sources. + (gettext-src): New. Rule to install GNU gettext sources for use in + gettextize shell script. + +Sun Aug 13 14:40:48 1995 Ulrich Drepper <drepper@myware> + + * loadmsgcat.c (_nl_load_domain): + Use mmap for loading only when munmap function is + also available. + + * Makefile.in (install): Depend on `all' goal. + +Wed Aug 9 11:04:33 1995 Ulrich Drepper <drepper@myware> + + * localealias.c (read_alias_file): + Do not overwrite '\n' when terminating alias value string. + + * localealias.c (read_alias_file): + Handle long lines. Ignore the rest not fitting in + the buffer after the initial `fgets' call. + +Wed Aug 9 00:54:29 1995 Ulrich Drepper <drepper@myware> + + * gettextP.h (_nl_load_domain): + Add prototype, replacing prototype for _nl_load_msg_cat. + + * finddomain.c (_nl_find_domain): + Remove unneeded variable filename and filename_len. + (expand_alias): Remove prototype because functions does not + exist anymore. + + * localealias.c (read_alias_file): + Change type of fname_len parameter to int. + (xmalloc): Add prototype. + + * loadmsgcat.c: Better prototypes for xmalloc. + +Tue Aug 8 22:30:39 1995 Ulrich Drepper <drepper@myware> + + * finddomain.c (_nl_find_domain): + Allow alias name to be constructed from the four components. + + * Makefile.in (aliaspath): New variable. Set to preliminary value. + (SOURCES): Add localealias.c. + (OBJECTS): Add localealias.o. + + * gettextP.h: Add prototype for _nl_expand_alias. + + * finddomain.c: Aliasing handled in intl/localealias.c. + + * localealias.c: Aliasing for locale names. + + * bindtextdom.c: Better prototypes for xmalloc and xstrdup. + +Mon Aug 7 23:47:42 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (DISTFILES): gettext.perl is now found in misc/. + + * cat-compat.c (bindtextdomain): + Correct implementation. dirname parameter was not used. + Reported by Marcus Daniels. + + * gettextP.h (loaded_domain): + New fields `successor' and `decided' for oo, lazy + message handling implementation. + + * dcgettext.c: + Adopt for oo, lazy message handliing. + Now we can inherit translations from less specific locales. + (find_msg): New function. + + * loadmsgcat.c, finddomain.c: + Complete rewrite. Implement oo, lazy message handling :-). + We now have an additional environment variable `LANGUAGE' with + a higher priority than LC_ALL for the LC_MESSAGE locale. + Here we can set a colon separated list of specifications each + of the form `language[_territory[.codeset]][@modifier]'. + +Sat Aug 5 09:55:42 1995 Ulrich Drepper <drepper@myware> + + * finddomain.c (unistd.h): + Include to get _PC_PATH_MAX defined on system having it. + +Fri Aug 4 22:42:00 1995 Ulrich Drepper <drepper@myware> + + * finddomain.c (stpcpy): Include prototype. + + * Makefile.in (dist): Remove `copying instead' message. + +Wed Aug 2 18:52:03 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (ID, TAGS): Do not use $^. + +Tue Aug 1 20:07:11 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (TAGS, ID): Use $^ as command argument. + (TAGS): Give etags -o option t write to current directory, + not $(srcdir). + (ID): Use $(srcdir) instead os $(top_srcdir)/src. + (distclean): Remove ID. + +Sun Jul 30 11:51:46 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (gnulocaledir): + New variable, always using share/ for data directory. + (DEFS): Add GNULOCALEDIR, used in finddomain.c. + + * finddomain.c (_nl_default_dirname): + Set to GNULOCALEDIR, because it always has to point + to the directory where GNU gettext Library writes it to. + + * intl-compat.c (textdomain, bindtextdomain): + Undefine macros before function definition. + +Sat Jul 22 01:10:02 1995 Ulrich Drepper <drepper@myware> + + * libgettext.h (_LIBINTL_H): + Protect definition in case where this file is included as + libgettext.h on Solaris machines. Add comment about this. + +Wed Jul 19 02:36:42 1995 Ulrich Drepper <drepper@myware> + + * intl-compat.c (textdomain): Correct typo. + +Wed Jul 19 01:51:35 1995 Ulrich Drepper <drepper@myware> + + * dcgettext.c (dcgettext): Function now called __dcgettext. + + * dgettext.c (dgettext): Now called __dgettext and calls + __dcgettext. + + * gettext.c (gettext): + Function now called __gettext and calls __dgettext. + + * textdomain.c (textdomain): Function now called __textdomain. + + * bindtextdom.c (bindtextdomain): Function now called + __bindtextdomain. + + * intl-compat.c: Initial revision. + + * Makefile.in (SOURCES): Add intl-compat.c. + (OBJECTS): We always compile the GNU gettext library functions. + OBJECTS contains all objects but cat-compat.o, ../po/cat-if-tbl.o, + and intl-compat.o. + (GETTOBJS): Contains now only intl-compat.o. + + * libgettext.h: + Re-include protection matches dualistic character of libgettext.h. + For all functions in GNU gettext library define __ counter part. + + * finddomain.c (strchr): Define as index if not found in C library. + (_nl_find_domain): For relative paths paste / in between. + +Tue Jul 18 16:37:45 1995 Ulrich Drepper <drepper@myware> + + * loadmsgcat.c, finddomain.c: Add inclusion of sys/types.h. + + * xopen-msg.sed: Fix bug with `msgstr ""' lines. + A little bit better comments. + +Tue Jul 18 01:18:27 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in: + po-mode.el, makelinks, combine-sh are now found in ../misc. + + * po-mode.el, makelinks, combine-sh, elisp-comp: + Moved to ../misc/. + + * libgettext.h, gettextP.h, gettext.h: Uniform test for __STDC__. + +Sun Jul 16 22:33:02 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (INSTALL, INSTALL_DATA): New variables. + (install-data, uninstall): Install/uninstall .elc file. + + * po-mode.el (Installation comment): + Add .pox as possible extension of .po files. + +Sun Jul 16 13:23:27 1995 Ulrich Drepper <drepper@myware> + + * elisp-comp: Complete new version by Franc,ois: This does not + fail when not compiling in the source directory. + +Sun Jul 16 00:12:17 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (../po/cat-id-tbl.o): + Use $(MAKE) instead of make for recursive make. + + * Makefile.in (.el.elc): Use $(SHELL) instead of /bin/sh. + (install-exec): Add missing dummy goal. + (install-data, uninstall): @ in multi-line shell command at + beginning, not in front of echo. Reported by Eric Backus. + +Sat Jul 15 00:21:28 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (DISTFILES): + Rename libgettext.perl to gettext.perl to fit in 14 chars + file systems. + + * gettext.perl: + Rename to gettext.perl to fit in 14 chars file systems. + +Thu Jul 13 23:17:20 1995 Ulrich Drepper <drepper@myware> + + * cat-compat.c: If !STDC_HEADERS try to include malloc.h. + +Thu Jul 13 20:55:02 1995 Ulrich Drepper <drepper@myware> + + * po2tbl.sed.in: Pretty printing. + + * linux-msg.sed, xopen-msg.sed: + Correct bugs with handling substitute flags in branches. + + * hash-string.h (hash_string): + Old K&R compilers don't under stand `unsigned char'. + + * gettext.h (nls_uint32): + Some old K&R compilers (eg HP) don't understand `unsigned int'. + + * cat-compat.c (msg_to_cat_id): De-ANSI-fy prototypes. + +Thu Jul 13 01:34:33 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (ELCFILES): New variable. + (DISTFILES): Add elisp-comp. + Add implicit rule for .el -> .elc compilation. + (install-data): install $ELCFILES + (clean): renamed po-to-tbl and po-to-msg to po2tbl and po2msg resp. + + * elisp-comp: Initial revision + +Wed Jul 12 16:14:52 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in: + cat-id-tbl.c is now found in po/. This enables us to use an identical + intl/ directory in all packages. + + * dcgettext.c (dcgettext): hashing does not work for table size <= 2. + + * textdomain.c: fix typo (#if def -> #if defined) + +Tue Jul 11 18:44:43 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in (stamp-cat-id): use top_srcdir to address source files + (DISTFILES,distclean): move tupdate.perl to src/ + + * po-to-tbl.sed.in: + add additional jump to clear change flag to recognize multiline strings + +Tue Jul 11 01:32:50 1995 Ulrich Drepper <drepper@myware> + + * textdomain.c: Protect inclusion of stdlib.h and string.h. + + * loadmsgcat.c: Protect inclusion of stdlib.h. + + * libgettext.h: Protect inclusion of locale.h. + Allow use in C++ programs. + Define NULL is not happened already. + + * Makefile.in (DISTFILES): ship po-to-tbl.sed.in instead of + po-to-tbl.sed. + (distclean): remove po-to-tbl.sed and tupdate.perl. + + * tupdate.perl.in: Substitute Perl path even in exec line. + Don't include entries without translation from old .po file. + +Tue Jul 4 00:41:51 1995 Ulrich Drepper <drepper@myware> + + * tupdate.perl.in: use "Updated: " in msgid "". + + * cat-compat.c: Fix typo (LOCALDIR -> LOCALEDIR). + Define getenv if !__STDC__. + + * bindtextdom.c: Protect stdlib.h and string.h inclusion. + Define free if !__STDC__. + + * finddomain.c: Change DEF_MSG_DOM_DIR to LOCALEDIR. + Define free if !__STDC__. + + * cat-compat.c: Change DEF_MSG_DOM_DIR to LOCALEDIR. + +Mon Jul 3 23:56:30 1995 Ulrich Drepper <drepper@myware> + + * Makefile.in: Use LOCALEDIR instead of DEF_MSG_DOM_DIR. + Remove unneeded $(srcdir) from Makefile.in dependency. + + * makelinks: Add copyright and short description. + + * po-mode.el: Last version for 0.7. + + * tupdate.perl.in: Fix die message. + + * dcgettext.c: Protect include of string.h. + + * gettext.c: Protect include of stdlib.h and further tries to get NULL. + + * finddomain.c: Some corrections in includes. + + * Makefile.in (INCLUDES): Prune list correct path to Makefile.in. + + * po-to-tbl.sed: Adopt for new .po file format. + + * linux-msg.sed, xopen-msg.sed: Adopt for new .po file format. + +Sun Jul 2 23:55:03 1995 Ulrich Drepper <drepper@myware> + + * tupdate.perl.in: Complete rewrite for new .po file format. + +Sun Jul 2 02:06:50 1995 Ulrich Drepper <drepper@myware> + + * First official release. This directory contains all the code + needed to internationalize own packages. It provides functions + which allow to use the X/Open catgets function with an interface + like the Uniforum gettext function. For system which does not + have neither of those a complete implementation is provided. diff --git a/source3/intl/Makefile.in b/source3/intl/Makefile.in new file mode 100644 index 0000000000..f4eee8ac80 --- /dev/null +++ b/source3/intl/Makefile.in @@ -0,0 +1,222 @@ +# Makefile for directory with message catalog handling in GNU NLS Utilities. +# Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. +# +# 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 2, 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, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + +# re-written by rkawa (rkawa@lbe.co.jp) +# because config.h of samba is not in @top_srcdir@. + +PACKAGE = @PACKAGE@ +VERSION = @VERSION@ + +SHELL = /bin/sh + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +top_builddir = .. +VPATH = @srcdir@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +transform = @program_transform_name@ +libdir = $(exec_prefix)/lib +includedir = $(prefix)/include +datadir = $(prefix)/@DATADIRNAME@ +localedir = $(datadir)/locale +gnulocaledir = $(prefix)/share/locale +gettextsrcdir = @datadir@/gettext/intl +aliaspath = $(localedir):. +subdir = intl + +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +MKINSTALLDIRS = @MKINSTALLDIRS@ + +l = @l@ + +AR = ar +CC = @CC@ +LIBTOOL = @LIBTOOL@ +RANLIB = @RANLIB@ + +DEFS = -DLOCALEDIR=\"$(localedir)\" -DGNULOCALEDIR=\"$(gnulocaledir)\" \ +-DLOCALE_ALIAS_PATH=\"$(aliaspath)\" @DEFS@ +CPPFLAGS = @CPPFLAGS@ +CFLAGS = @CFLAGS@ +LDFLAGS = @LDFLAGS@ + +COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) + +HEADERS = $(COMHDRS) libgettext.h loadinfo.h +COMHDRS = gettext.h gettextP.h hash-string.h +SOURCES = $(COMSRCS) intl-compat.c cat-compat.c +COMSRCS = bindtextdom.c dcgettext.c dgettext.c gettext.c \ +finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c \ +explodename.c +OBJECTS = @INTLOBJS@ bindtextdom.$lo dcgettext.$lo dgettext.$lo gettext.$lo \ +finddomain.$lo loadmsgcat.$lo localealias.$lo textdomain.$lo l10nflist.$lo \ +explodename.$lo +CATOBJS = cat-compat.$lo ../po/cat-id-tbl.$lo +GETTOBJS = intl-compat.$lo +DISTFILES.common = ChangeLog Makefile.in linux-msg.sed po2tbl.sed.in \ +xopen-msg.sed $(HEADERS) $(SOURCES) +DISTFILES.normal = VERSION +DISTFILES.gettext = libintl.glibc intlh.inst.in + +.SUFFIXES: +.SUFFIXES: .c .o .lo +.c.o: + $(COMPILE) $< +.c.lo: + $(LIBTOOL) --mode=compile $(COMPILE) $< + +# re-written by rkawa because config.h of samba is not in @top_srcdir@. +INCLUDES = -I.. -I. -I$(top_srcdir)/intl -I$(top_srcdir)/lib -I$(top_srcdir)/include + +all: all-@USE_INCLUDED_LIBINTL@ + +all-yes: libintl.$la intlh.inst +all-no: + +libintl.a: $(OBJECTS) + rm -f $@ + $(AR) cru $@ $(OBJECTS) + $(RANLIB) $@ + +libintl.la: $(OBJECTS) + $(LIBTOOL) --mode=link $(CC) $(LDFLAGS) -o $@ $(OBJECTS) \ + -version-info 1:0 -rpath $(libdir) + +../po/cat-id-tbl.$lo: ../po/cat-id-tbl.c $(top_srcdir)/po/$(PACKAGE).pot + cd ../po && $(MAKE) cat-id-tbl.$lo + +check: all + +# This installation goal is only used in GNU gettext. Packages which +# only use the library should use install instead. + +# We must not install the libintl.h/libintl.a files if we are on a +# system which has the gettext() function in its C library or in a +# separate library or use the catgets interface. A special case is +# where configure found a previously installed GNU gettext library. +# If you want to use the one which comes with this version of the +# package, you have to use `configure --with-included-gettext'. +install: install-exec install-data +install-exec: all + if test "$(PACKAGE)" = "gettext" \ + && test '@INTLOBJS@' = '$(GETTOBJS)'; then \ + if test -r $(MKINSTALLDIRS); then \ + . $(MKINSTALLDIRS) $(libdir) $(includedir); \ + else \ + . $(top_srcdir)/mkinstalldirs $(libdir) $(includedir); \ + fi; \ + $(INSTALL_DATA) intlh.inst $(includedir)/libintl.h; \ + $(INSTALL_DATA) libintl.a $(libdir)/libintl.a; \ + else \ + : ; \ + fi +install-data: all + if test "$(PACKAGE)" = "gettext"; then \ + if test -r $(MKINSTALLDIRS); then \ + . $(MKINSTALLDIRS) $(gettextsrcdir); \ + else \ + . $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ + fi; \ + $(INSTALL_DATA) VERSION $(gettextsrcdir)/VERSION; \ + dists="$(DISTFILES.common)"; \ + for file in $$dists; do \ + $(INSTALL_DATA) $(srcdir)/$$file $(gettextsrcdir)/$$file; \ + done; \ + else \ + : ; \ + fi + +# Define this as empty until I found a useful application. +installcheck: + +uninstall: + dists="$(DISTFILES.common)"; \ + for file in $$dists; do \ + rm -f $(gettextsrcdir)/$$file; \ + done + +info dvi: + +# re-written by rkawa because config.h of samba is not in @top_srcdir@. +$(OBJECTS): $(top_srcdir)/include/config.h libgettext.h +bindtextdom.$lo finddomain.$lo loadmsgcat.$lo: gettextP.h gettext.h loadinfo.h +dcgettext.$lo: gettextP.h gettext.h hash-string.h loadinfo.h + +tags: TAGS + +TAGS: $(HEADERS) $(SOURCES) + here=`pwd`; cd $(srcdir) && etags -o $$here/TAGS $(HEADERS) $(SOURCES) + +id: ID + +ID: $(HEADERS) $(SOURCES) + here=`pwd`; cd $(srcdir) && mkid -f$$here/ID $(HEADERS) $(SOURCES) + + +mostlyclean: + rm -f *.a *.o *.lo core core.* + +clean: mostlyclean + +distclean: clean + rm -f Makefile ID TAGS po2msg.sed po2tbl.sed + +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + + +# GNU gettext needs not contain the file `VERSION' but contains some +# other files which should not be distributed in other packages. +distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) +dist distdir: Makefile $(DISTFILES) + if test "$(PACKAGE)" = gettext; then \ + additional="$(DISTFILES.gettext)"; \ + else \ + additional="$(DISTFILES.normal)"; \ + fi; \ + for file in $(DISTFILES.common) $$additional; do \ + ln $(srcdir)/$$file $(distdir) 2> /dev/null \ + || cp -p $(srcdir)/$$file $(distdir); \ + done + +dist-libc: + tar zcvf intl-glibc.tar.gz $(COMSRCS) $(COMHDRS) libintl.h.glibc + +Makefile: Makefile.in ../config.status + cd .. \ + && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status + +# The dependency for intlh.inst is different in gettext and all other +# packages. Because we cannot you GNU make features we have to solve +# the problem while rewriting Makefile.in. +@GT_YES@intlh.inst: intlh.inst.in ../config.status +@GT_YES@ cd .. \ +@GT_YES@ && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= \ +@GT_YES@ $(SHELL) ./config.status +@GT_NO@.PHONY: intlh.inst +@GT_NO@intlh.inst: + +# Tell versions [3.59,3.63) of GNU make not to export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: + + + diff --git a/source3/intl/VERSION b/source3/intl/VERSION new file mode 100644 index 0000000000..ee66b0612b --- /dev/null +++ b/source3/intl/VERSION @@ -0,0 +1 @@ +GNU gettext library from gettext-0.10.35 diff --git a/source3/intl/bindtextdom.c b/source3/intl/bindtextdom.c new file mode 100644 index 0000000000..d9c3f349e0 --- /dev/null +++ b/source3/intl/bindtextdom.c @@ -0,0 +1,203 @@ +/* Implementation of the bindtextdomain(3) function + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#if defined STDC_HEADERS || defined _LIBC +# include <stdlib.h> +#else +# ifdef HAVE_MALLOC_H +# include <malloc.h> +# else +void free (); +# endif +#endif + +#if defined HAVE_STRING_H || defined _LIBC +# include <string.h> +#else +# include <strings.h> +# ifndef memcpy +# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +# endif +#endif + +#ifdef _LIBC +# include <libintl.h> +#else +# include "libgettext.h" +#endif +#include "gettext.h" +#include "gettextP.h" + +/* @@ end of prolog @@ */ + +/* Contains the default location of the message catalogs. */ +extern const char _nl_default_dirname[]; + +/* List with bindings of specific domains. */ +extern struct binding *_nl_domain_bindings; + + +/* Names for the libintl functions are a problem. They must not clash + with existing names and they should follow ANSI C. But this source + code is also used in GNU C Library where the names have a __ + prefix. So we have to make a difference here. */ +#ifdef _LIBC +# define BINDTEXTDOMAIN __bindtextdomain +# ifndef strdup +# define strdup(str) __strdup (str) +# endif +#else +# define BINDTEXTDOMAIN bindtextdomain__ +#endif + +/* Specify that the DOMAINNAME message catalog will be found + in DIRNAME rather than in the system locale data base. */ +char * +BINDTEXTDOMAIN (domainname, dirname) + const char *domainname; + const char *dirname; +{ + struct binding *binding; + + /* Some sanity checks. */ + if (domainname == NULL || domainname[0] == '\0') + return NULL; + + for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) + { + int compare = strcmp (domainname, binding->domainname); + if (compare == 0) + /* We found it! */ + break; + if (compare < 0) + { + /* It is not in the list. */ + binding = NULL; + break; + } + } + + if (dirname == NULL) + /* The current binding has be to returned. */ + return binding == NULL ? (char *) _nl_default_dirname : binding->dirname; + + if (binding != NULL) + { + /* The domain is already bound. If the new value and the old + one are equal we simply do nothing. Otherwise replace the + old binding. */ + if (strcmp (dirname, binding->dirname) != 0) + { + char *new_dirname; + + if (strcmp (dirname, _nl_default_dirname) == 0) + new_dirname = (char *) _nl_default_dirname; + else + { +#if defined _LIBC || defined HAVE_STRDUP + new_dirname = strdup (dirname); + if (new_dirname == NULL) + return NULL; +#else + size_t len = strlen (dirname) + 1; + new_dirname = (char *) malloc (len); + if (new_dirname == NULL) + return NULL; + + memcpy (new_dirname, dirname, len); +#endif + } + + if (binding->dirname != _nl_default_dirname) + free (binding->dirname); + + binding->dirname = new_dirname; + } + } + else + { + /* We have to create a new binding. */ +#if !defined _LIBC && !defined HAVE_STRDUP + size_t len; +#endif + struct binding *new_binding = + (struct binding *) malloc (sizeof (*new_binding)); + + if (new_binding == NULL) + return NULL; + +#if defined _LIBC || defined HAVE_STRDUP + new_binding->domainname = strdup (domainname); + if (new_binding->domainname == NULL) + return NULL; +#else + len = strlen (domainname) + 1; + new_binding->domainname = (char *) malloc (len); + if (new_binding->domainname == NULL) + return NULL; + memcpy (new_binding->domainname, domainname, len); +#endif + + if (strcmp (dirname, _nl_default_dirname) == 0) + new_binding->dirname = (char *) _nl_default_dirname; + else + { +#if defined _LIBC || defined HAVE_STRDUP + new_binding->dirname = strdup (dirname); + if (new_binding->dirname == NULL) + return NULL; +#else + len = strlen (dirname) + 1; + new_binding->dirname = (char *) malloc (len); + if (new_binding->dirname == NULL) + return NULL; + memcpy (new_binding->dirname, dirname, len); +#endif + } + + /* Now enqueue it. */ + if (_nl_domain_bindings == NULL + || strcmp (domainname, _nl_domain_bindings->domainname) < 0) + { + new_binding->next = _nl_domain_bindings; + _nl_domain_bindings = new_binding; + } + else + { + binding = _nl_domain_bindings; + while (binding->next != NULL + && strcmp (domainname, binding->next->domainname) > 0) + binding = binding->next; + + new_binding->next = binding->next; + binding->next = new_binding; + } + + binding = new_binding; + } + + return binding->dirname; +} + +#ifdef _LIBC +/* Alias for function name in GNU C Library. */ +weak_alias (__bindtextdomain, bindtextdomain); +#endif diff --git a/source3/intl/cat-compat.c b/source3/intl/cat-compat.c new file mode 100644 index 0000000000..867d901b8f --- /dev/null +++ b/source3/intl/cat-compat.c @@ -0,0 +1,262 @@ +/* Compatibility code for gettext-using-catgets interface. + Copyright (C) 1995, 1997 Free Software Foundation, Inc. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include <stdio.h> + +#ifdef STDC_HEADERS +# include <stdlib.h> +# include <string.h> +#else +char *getenv (); +# ifdef HAVE_MALLOC_H +# include <malloc.h> +# endif +#endif + +#ifdef HAVE_NL_TYPES_H +# include <nl_types.h> +#endif + +#include "libgettext.h" + +/* @@ end of prolog @@ */ + +/* XPG3 defines the result of `setlocale (category, NULL)' as: + ``Directs `setlocale()' to query `category' and return the current + setting of `local'.'' + However it does not specify the exact format. And even worse: POSIX + defines this not at all. So we can use this feature only on selected + system (e.g. those using GNU C Library). */ +#ifdef _LIBC +# define HAVE_LOCALE_NULL +#endif + +/* The catalog descriptor. */ +static nl_catd catalog = (nl_catd) -1; + +/* Name of the default catalog. */ +static const char default_catalog_name[] = "messages"; + +/* Name of currently used catalog. */ +static const char *catalog_name = default_catalog_name; + +/* Get ID for given string. If not found return -1. */ +static int msg_to_cat_id PARAMS ((const char *msg)); + +/* Substitution for systems lacking this function in their C library. */ +#if !_LIBC && !HAVE_STPCPY +static char *stpcpy PARAMS ((char *dest, const char *src)); +#endif + + +/* Set currently used domain/catalog. */ +char * +textdomain (domainname) + const char *domainname; +{ + nl_catd new_catalog; + char *new_name; + size_t new_name_len; + char *lang; + +#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES \ + && defined HAVE_LOCALE_NULL + lang = setlocale (LC_MESSAGES, NULL); +#else + lang = getenv ("LC_ALL"); + if (lang == NULL || lang[0] == '\0') + { + lang = getenv ("LC_MESSAGES"); + if (lang == NULL || lang[0] == '\0') + lang = getenv ("LANG"); + } +#endif + if (lang == NULL || lang[0] == '\0') + lang = "C"; + + /* See whether name of currently used domain is asked. */ + if (domainname == NULL) + return (char *) catalog_name; + + if (domainname[0] == '\0') + domainname = default_catalog_name; + + /* Compute length of added path element. */ + new_name_len = sizeof (LOCALEDIR) - 1 + 1 + strlen (lang) + + sizeof ("/LC_MESSAGES/") - 1 + sizeof (PACKAGE) - 1 + + sizeof (".cat"); + + new_name = (char *) malloc (new_name_len); + if (new_name == NULL) + return NULL; + + strcpy (new_name, PACKAGE); + new_catalog = catopen (new_name, 0); + + if (new_catalog == (nl_catd) -1) + { + /* NLSPATH search didn't work, try absolute path */ + sprintf (new_name, "%s/%s/LC_MESSAGES/%s.cat", LOCALEDIR, lang, + PACKAGE); + new_catalog = catopen (new_name, 0); + + if (new_catalog == (nl_catd) -1) + { + free (new_name); + return (char *) catalog_name; + } + } + + /* Close old catalog. */ + if (catalog != (nl_catd) -1) + catclose (catalog); + if (catalog_name != default_catalog_name) + free ((char *) catalog_name); + + catalog = new_catalog; + catalog_name = new_name; + + return (char *) catalog_name; +} + +char * +bindtextdomain (domainname, dirname) + const char *domainname; + const char *dirname; +{ +#if HAVE_SETENV || HAVE_PUTENV + char *old_val, *new_val, *cp; + size_t new_val_len; + + /* This does not make much sense here but to be compatible do it. */ + if (domainname == NULL) + return NULL; + + /* Compute length of added path element. If we use setenv we don't need + the first byts for NLSPATH=, but why complicate the code for this + peanuts. */ + new_val_len = sizeof ("NLSPATH=") - 1 + strlen (dirname) + + sizeof ("/%L/LC_MESSAGES/%N.cat"); + + old_val = getenv ("NLSPATH"); + if (old_val == NULL || old_val[0] == '\0') + { + old_val = NULL; + new_val_len += 1 + sizeof (LOCALEDIR) - 1 + + sizeof ("/%L/LC_MESSAGES/%N.cat"); + } + else + new_val_len += strlen (old_val); + + new_val = (char *) malloc (new_val_len); + if (new_val == NULL) + return NULL; + +# if HAVE_SETENV + cp = new_val; +# else + cp = stpcpy (new_val, "NLSPATH="); +# endif + + cp = stpcpy (cp, dirname); + cp = stpcpy (cp, "/%L/LC_MESSAGES/%N.cat:"); + + if (old_val == NULL) + { +# if __STDC__ + stpcpy (cp, LOCALEDIR "/%L/LC_MESSAGES/%N.cat"); +# else + + cp = stpcpy (cp, LOCALEDIR); + stpcpy (cp, "/%L/LC_MESSAGES/%N.cat"); +# endif + } + else + stpcpy (cp, old_val); + +# if HAVE_SETENV + setenv ("NLSPATH", new_val, 1); + free (new_val); +# else + putenv (new_val); + /* Do *not* free the environment entry we just entered. It is used + from now on. */ +# endif + +#endif + + return (char *) domainname; +} + +#undef gettext +char * +gettext (msg) + const char *msg; +{ + int msgid; + + if (msg == NULL || catalog == (nl_catd) -1) + return (char *) msg; + + /* Get the message from the catalog. We always use set number 1. + The message ID is computed by the function `msg_to_cat_id' + which works on the table generated by `po-to-tbl'. */ + msgid = msg_to_cat_id (msg); + if (msgid == -1) + return (char *) msg; + + return catgets (catalog, 1, msgid, (char *) msg); +} + +/* Look through the table `_msg_tbl' which has `_msg_tbl_length' entries + for the one equal to msg. If it is found return the ID. In case when + the string is not found return -1. */ +static int +msg_to_cat_id (msg) + const char *msg; +{ + int cnt; + + for (cnt = 0; cnt < _msg_tbl_length; ++cnt) + if (strcmp (msg, _msg_tbl[cnt]._msg) == 0) + return _msg_tbl[cnt]._msg_number; + + return -1; +} + + +/* @@ begin of epilog @@ */ + +/* We don't want libintl.a to depend on any other library. So we + avoid the non-standard function stpcpy. In GNU C Library this + function is available, though. Also allow the symbol HAVE_STPCPY + to be defined. */ +#if !_LIBC && !HAVE_STPCPY +static char * +stpcpy (dest, src) + char *dest; + const char *src; +{ + while ((*dest++ = *src++) != '\0') + /* Do nothing. */ ; + return dest - 1; +} +#endif diff --git a/source3/intl/dcgettext.c b/source3/intl/dcgettext.c new file mode 100644 index 0000000000..c8360971de --- /dev/null +++ b/source3/intl/dcgettext.c @@ -0,0 +1,659 @@ +/* Implementation of the dcgettext(3) function. + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include <sys/types.h> + +#if defined __GNUC__ && !defined C_ALLOCA +# define alloca __builtin_alloca +# define HAVE_ALLOCA 1 +#else +# if (defined HAVE_ALLOCA_H || defined _LIBC) && !defined C_ALLOCA +# include <alloca.h> +# else +# ifdef _AIX + #pragma alloca +# else +# ifndef alloca +char *alloca (); +# endif +# endif +# endif +#endif + +#include <errno.h> +#ifndef errno +extern int errno; +#endif +#ifndef __set_errno +# define __set_errno(val) errno = (val) +#endif + +#if defined STDC_HEADERS || defined _LIBC +# include <stdlib.h> +#else +char *getenv (); +# ifdef HAVE_MALLOC_H +# include <malloc.h> +# else +void free (); +# endif +#endif + +#if defined HAVE_STRING_H || defined _LIBC +# ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +# endif +# include <string.h> +#else +# include <strings.h> +#endif +#if !HAVE_STRCHR && !defined _LIBC +# ifndef strchr +# define strchr index +# endif +#endif + +#if defined HAVE_UNISTD_H || defined _LIBC +# include <unistd.h> +#endif + +#include "gettext.h" +#include "gettextP.h" +#ifdef _LIBC +# include <libintl.h> +#else +# include "libgettext.h" +#endif +#include "hash-string.h" + +/* @@ end of prolog @@ */ + +#ifdef _LIBC +/* Rename the non ANSI C functions. This is required by the standard + because some ANSI C functions will require linking with this object + file and the name space must not be polluted. */ +# define getcwd __getcwd +# ifndef stpcpy +# define stpcpy __stpcpy +# endif +#else +# if !defined HAVE_GETCWD +char *getwd (); +# define getcwd(buf, max) getwd (buf) +# else +char *getcwd (); +# endif +# ifndef HAVE_STPCPY +static char *stpcpy PARAMS ((char *dest, const char *src)); +# endif +#endif + +/* Amount to increase buffer size by in each try. */ +#define PATH_INCR 32 + +/* The following is from pathmax.h. */ +/* Non-POSIX BSD systems might have gcc's limits.h, which doesn't define + PATH_MAX but might cause redefinition warnings when sys/param.h is + later included (as on MORE/BSD 4.3). */ +#ifdef NEWS4 +/* on NEWS-OS 4 limits.h hasn't PATH_MAX */ +#undef HAVE_LIMITS_H +#endif +#if defined(_POSIX_VERSION) || (defined(HAVE_LIMITS_H) && !defined(__GNUC__)) +# include <limits.h> +#endif + +#ifndef _POSIX_PATH_MAX +# define _POSIX_PATH_MAX 255 +#endif + +#if !defined(PATH_MAX) && defined(_PC_PATH_MAX) +# define PATH_MAX (pathconf ("/", _PC_PATH_MAX) < 1 ? 1024 : pathconf ("/", _PC_PATH_MAX)) +#endif + +/* Don't include sys/param.h if it already has been. */ +#if defined(HAVE_SYS_PARAM_H) && !defined(PATH_MAX) && !defined(MAXPATHLEN) +# include <sys/param.h> +#endif + +#if !defined(PATH_MAX) && defined(MAXPATHLEN) +# define PATH_MAX MAXPATHLEN +#endif + +#ifndef PATH_MAX +# define PATH_MAX _POSIX_PATH_MAX +#endif + +/* XPG3 defines the result of `setlocale (category, NULL)' as: + ``Directs `setlocale()' to query `category' and return the current + setting of `local'.'' + However it does not specify the exact format. And even worse: POSIX + defines this not at all. So we can use this feature only on selected + system (e.g. those using GNU C Library). */ +#ifdef _LIBC +# define HAVE_LOCALE_NULL +#endif + +/* Name of the default domain used for gettext(3) prior any call to + textdomain(3). The default value for this is "messages". */ +const char _nl_default_default_domain[] = "messages"; + +/* Value used as the default domain for gettext(3). */ +const char *_nl_current_default_domain = _nl_default_default_domain; + +/* Contains the default location of the message catalogs. */ +const char *_nl_default_dirname = GNULOCALEDIR; + +/* List with bindings of specific domains created by bindtextdomain() + calls. */ +struct binding *_nl_domain_bindings; + +/* Prototypes for local functions. */ +static char *find_msg PARAMS ((struct loaded_l10nfile *domain_file, + const char *msgid)) internal_function; +static const char *category_to_name PARAMS ((int category)) internal_function; +static const char *guess_category_value PARAMS ((int category, + const char *categoryname)) + internal_function; + + +/* For those loosing systems which don't have `alloca' we have to add + some additional code emulating it. */ +#ifdef HAVE_ALLOCA +/* Nothing has to be done. */ +# define ADD_BLOCK(list, address) /* nothing */ +# define FREE_BLOCKS(list) /* nothing */ +#else +struct block_list +{ + void *address; + struct block_list *next; +}; +# define ADD_BLOCK(list, addr) \ + do { \ + struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ + /* If we cannot get a free block we cannot add the new element to \ + the list. */ \ + if (newp != NULL) { \ + newp->address = (addr); \ + newp->next = (list); \ + (list) = newp; \ + } \ + } while (0) +# define FREE_BLOCKS(list) \ + do { \ + while (list != NULL) { \ + struct block_list *old = list; \ + list = list->next; \ + free (old); \ + } \ + } while (0) +# undef alloca +# define alloca(size) (malloc (size)) +#endif /* have alloca */ + + +/* Names for the libintl functions are a problem. They must not clash + with existing names and they should follow ANSI C. But this source + code is also used in GNU C Library where the names have a __ + prefix. So we have to make a difference here. */ +#ifdef _LIBC +# define DCGETTEXT __dcgettext +#else +# define DCGETTEXT dcgettext__ +#endif + +/* Checking whether the binaries runs SUID must be done and glibc provides + easier methods therefore we make a difference here. */ +#ifdef _LIBC +# define ENABLE_SECURE __libc_enable_secure +# define DETERMINE_SECURE +#else +static int enable_secure; +# define ENABLE_SECURE (enable_secure == 1) +# define DETERMINE_SECURE \ + if (enable_secure == 0) \ + { \ + if (getuid () != geteuid () || getgid () != getegid ()) \ + enable_secure = 1; \ + else \ + enable_secure = -1; \ + } +#endif + +/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY + locale. */ +char * +DCGETTEXT (domainname, msgid, category) + const char *domainname; + const char *msgid; + int category; +{ +#ifndef HAVE_ALLOCA + struct block_list *block_list = NULL; +#endif + struct loaded_l10nfile *domain; + struct binding *binding; + const char *categoryname; + const char *categoryvalue; + char *dirname, *xdomainname; + char *single_locale; + char *retval; + int saved_errno = errno; + + /* If no real MSGID is given return NULL. */ + if (msgid == NULL) + return NULL; + + /* See whether this is a SUID binary or not. */ + DETERMINE_SECURE; + + /* If DOMAINNAME is NULL, we are interested in the default domain. If + CATEGORY is not LC_MESSAGES this might not make much sense but the + definition left this undefined. */ + if (domainname == NULL) + domainname = _nl_current_default_domain; + + /* First find matching binding. */ + for (binding = _nl_domain_bindings; binding != NULL; binding = binding->next) + { + int compare = strcmp (domainname, binding->domainname); + if (compare == 0) + /* We found it! */ + break; + if (compare < 0) + { + /* It is not in the list. */ + binding = NULL; + break; + } + } + + if (binding == NULL) + dirname = (char *) _nl_default_dirname; + else if (binding->dirname[0] == '/') + dirname = binding->dirname; + else + { + /* We have a relative path. Make it absolute now. */ + size_t dirname_len = strlen (binding->dirname) + 1; + size_t path_max; + char *ret; + + path_max = (unsigned int) PATH_MAX; + path_max += 2; /* The getcwd docs say to do this. */ + + dirname = (char *) alloca (path_max + dirname_len); + ADD_BLOCK (block_list, dirname); + + __set_errno (0); + while ((ret = getcwd (dirname, path_max)) == NULL && errno == ERANGE) + { + path_max += PATH_INCR; + dirname = (char *) alloca (path_max + dirname_len); + ADD_BLOCK (block_list, dirname); + __set_errno (0); + } + + if (ret == NULL) + { + /* We cannot get the current working directory. Don't signal an + error but simply return the default string. */ + FREE_BLOCKS (block_list); + __set_errno (saved_errno); + return (char *) msgid; + } + + stpcpy (stpcpy (strchr (dirname, '\0'), "/"), binding->dirname); + } + + /* Now determine the symbolic name of CATEGORY and its value. */ + categoryname = category_to_name (category); + categoryvalue = guess_category_value (category, categoryname); + + xdomainname = (char *) alloca (strlen (categoryname) + + strlen (domainname) + 5); + ADD_BLOCK (block_list, xdomainname); + + stpcpy (stpcpy (stpcpy (stpcpy (xdomainname, categoryname), "/"), + domainname), + ".mo"); + + /* Creating working area. */ + single_locale = (char *) alloca (strlen (categoryvalue) + 1); + ADD_BLOCK (block_list, single_locale); + + + /* Search for the given string. This is a loop because we perhaps + got an ordered list of languages to consider for the translation. */ + while (1) + { + /* Make CATEGORYVALUE point to the next element of the list. */ + while (categoryvalue[0] != '\0' && categoryvalue[0] == ':') + ++categoryvalue; + if (categoryvalue[0] == '\0') + { + /* The whole contents of CATEGORYVALUE has been searched but + no valid entry has been found. We solve this situation + by implicitly appending a "C" entry, i.e. no translation + will take place. */ + single_locale[0] = 'C'; + single_locale[1] = '\0'; + } + else + { + char *cp = single_locale; + while (categoryvalue[0] != '\0' && categoryvalue[0] != ':') + *cp++ = *categoryvalue++; + *cp = '\0'; + + /* When this is a SUID binary we must not allow accessing files + outside the dedicated directories. */ + if (ENABLE_SECURE + && (memchr (single_locale, '/', + _nl_find_language (single_locale) - single_locale) + != NULL)) + /* Ingore this entry. */ + continue; + } + + /* If the current locale value is C (or POSIX) we don't load a + domain. Return the MSGID. */ + if (strcmp (single_locale, "C") == 0 + || strcmp (single_locale, "POSIX") == 0) + { + FREE_BLOCKS (block_list); + __set_errno (saved_errno); + return (char *) msgid; + } + + + /* Find structure describing the message catalog matching the + DOMAINNAME and CATEGORY. */ + domain = _nl_find_domain (dirname, single_locale, xdomainname); + + if (domain != NULL) + { + retval = find_msg (domain, msgid); + + if (retval == NULL) + { + int cnt; + + for (cnt = 0; domain->successor[cnt] != NULL; ++cnt) + { + retval = find_msg (domain->successor[cnt], msgid); + + if (retval != NULL) + break; + } + } + + if (retval != NULL) + { + FREE_BLOCKS (block_list); + __set_errno (saved_errno); + return retval; + } + } + } + /* NOTREACHED */ +} + +#ifdef _LIBC +/* Alias for function name in GNU C Library. */ +weak_alias (__dcgettext, dcgettext); +#endif + + +static char * +internal_function +find_msg (domain_file, msgid) + struct loaded_l10nfile *domain_file; + const char *msgid; +{ + size_t act = 0; + size_t top, bottom; + struct loaded_domain *domain; + + if (domain_file->decided == 0) + _nl_load_domain (domain_file); + + if (domain_file->data == NULL) + return NULL; + + domain = (struct loaded_domain *) domain_file->data; + + /* Locate the MSGID and its translation. */ + if (domain->hash_size > 2 && domain->hash_tab != NULL) + { + /* Use the hashing table. */ + nls_uint32 len = strlen (msgid); + nls_uint32 hash_val = hash_string (msgid); + nls_uint32 idx = hash_val % domain->hash_size; + nls_uint32 incr = 1 + (hash_val % (domain->hash_size - 2)); + nls_uint32 nstr = W (domain->must_swap, domain->hash_tab[idx]); + + if (nstr == 0) + /* Hash table entry is empty. */ + return NULL; + + if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len + && strcmp (msgid, + domain->data + W (domain->must_swap, + domain->orig_tab[nstr - 1].offset)) == 0) + return (char *) domain->data + W (domain->must_swap, + domain->trans_tab[nstr - 1].offset); + + while (1) + { + if (idx >= domain->hash_size - incr) + idx -= domain->hash_size - incr; + else + idx += incr; + + nstr = W (domain->must_swap, domain->hash_tab[idx]); + if (nstr == 0) + /* Hash table entry is empty. */ + return NULL; + + if (W (domain->must_swap, domain->orig_tab[nstr - 1].length) == len + && strcmp (msgid, + domain->data + W (domain->must_swap, + domain->orig_tab[nstr - 1].offset)) + == 0) + return (char *) domain->data + + W (domain->must_swap, domain->trans_tab[nstr - 1].offset); + } + /* NOTREACHED */ + } + + /* Now we try the default method: binary search in the sorted + array of messages. */ + bottom = 0; + top = domain->nstrings; + while (bottom < top) + { + int cmp_val; + + act = (bottom + top) / 2; + cmp_val = strcmp (msgid, domain->data + + W (domain->must_swap, + domain->orig_tab[act].offset)); + if (cmp_val < 0) + top = act; + else if (cmp_val > 0) + bottom = act + 1; + else + break; + } + + /* If an translation is found return this. */ + return bottom >= top ? NULL : (char *) domain->data + + W (domain->must_swap, + domain->trans_tab[act].offset); +} + + +/* Return string representation of locale CATEGORY. */ +static const char * +internal_function +category_to_name (category) + int category; +{ + const char *retval; + + switch (category) + { +#ifdef LC_COLLATE + case LC_COLLATE: + retval = "LC_COLLATE"; + break; +#endif +#ifdef LC_CTYPE + case LC_CTYPE: + retval = "LC_CTYPE"; + break; +#endif +#ifdef LC_MONETARY + case LC_MONETARY: + retval = "LC_MONETARY"; + break; +#endif +#ifdef LC_NUMERIC + case LC_NUMERIC: + retval = "LC_NUMERIC"; + break; +#endif +#ifdef LC_TIME + case LC_TIME: + retval = "LC_TIME"; + break; +#endif +#ifdef LC_MESSAGES + case LC_MESSAGES: + retval = "LC_MESSAGES"; + break; +#endif +#ifdef LC_RESPONSE + case LC_RESPONSE: + retval = "LC_RESPONSE"; + break; +#endif +#ifdef LC_ALL + case LC_ALL: + /* This might not make sense but is perhaps better than any other + value. */ + retval = "LC_ALL"; + break; +#endif + default: + /* If you have a better idea for a default value let me know. */ + retval = "LC_XXX"; + } + + return retval; +} + +/* Guess value of current locale from value of the environment variables. */ +static const char * +internal_function +guess_category_value (category, categoryname) + int category; + const char *categoryname; +{ + const char *retval; + + /* The highest priority value is the `LANGUAGE' environment + variable. This is a GNU extension. */ + retval = getenv ("LANGUAGE"); + if (retval != NULL && retval[0] != '\0') + return retval; + + /* `LANGUAGE' is not set. So we have to proceed with the POSIX + methods of looking to `LC_ALL', `LC_xxx', and `LANG'. On some + systems this can be done by the `setlocale' function itself. */ +#if defined HAVE_SETLOCALE && defined HAVE_LC_MESSAGES && defined HAVE_LOCALE_NULL + return setlocale (category, NULL); +#else + /* Setting of LC_ALL overwrites all other. */ + retval = getenv ("LC_ALL"); + if (retval != NULL && retval[0] != '\0') + return retval; + + /* Next comes the name of the desired category. */ + retval = getenv (categoryname); + if (retval != NULL && retval[0] != '\0') + return retval; + + /* Last possibility is the LANG environment variable. */ + retval = getenv ("LANG"); + if (retval != NULL && retval[0] != '\0') + return retval; + + /* We use C as the default domain. POSIX says this is implementation + defined. */ + return "C"; +#endif +} + +/* @@ begin of epilog @@ */ + +/* We don't want libintl.a to depend on any other library. So we + avoid the non-standard function stpcpy. In GNU C Library this + function is available, though. Also allow the symbol HAVE_STPCPY + to be defined. */ +#if !_LIBC && !HAVE_STPCPY +static char * +stpcpy (dest, src) + char *dest; + const char *src; +{ + while ((*dest++ = *src++) != '\0') + /* Do nothing. */ ; + return dest - 1; +} +#endif + + +#ifdef _LIBC +/* If we want to free all resources we have to do some work at + program's end. */ +static void __attribute__ ((unused)) +free_mem (void) +{ + struct binding *runp; + + for (runp = _nl_domain_bindings; runp != NULL; runp = runp->next) + { + free (runp->domainname); + if (runp->dirname != _nl_default_dirname) + /* Yes, this is a pointer comparison. */ + free (runp->dirname); + } + + if (_nl_current_default_domain != _nl_default_default_domain) + /* Yes, again a pointer comparison. */ + free ((char *) _nl_current_default_domain); +} + +text_set_element (__libc_subfreeres, free_mem); +#endif diff --git a/source3/intl/dgettext.c b/source3/intl/dgettext.c new file mode 100644 index 0000000000..269e36fdd7 --- /dev/null +++ b/source3/intl/dgettext.c @@ -0,0 +1,60 @@ +/* Implementation of the dgettext(3) function + Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#if defined HAVE_LOCALE_H || defined _LIBC +# include <locale.h> +#endif + +# include <locale.h> +#ifdef _LIBC +# include <libintl.h> +#else +# include "libgettext.h" +#endif + +/* @@ end of prolog @@ */ + +/* Names for the libintl functions are a problem. They must not clash + with existing names and they should follow ANSI C. But this source + code is also used in GNU C Library where the names have a __ + prefix. So we have to make a difference here. */ +#ifdef _LIBC +# define DGETTEXT __dgettext +# define DCGETTEXT __dcgettext +#else +# define DGETTEXT dgettext__ +# define DCGETTEXT dcgettext__ +#endif + +/* Look up MSGID in the DOMAINNAME message catalog of the current + LC_MESSAGES locale. */ +char * +DGETTEXT (domainname, msgid) + const char *domainname; + const char *msgid; +{ + return DCGETTEXT (domainname, msgid, LC_MESSAGES); +} + +#ifdef _LIBC +/* Alias for function name in GNU C Library. */ +weak_alias (__dgettext, dgettext); +#endif diff --git a/source3/intl/explodename.c b/source3/intl/explodename.c new file mode 100644 index 0000000000..80a3111c9f --- /dev/null +++ b/source3/intl/explodename.c @@ -0,0 +1,197 @@ +/* Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#if defined STDC_HEADERS || defined _LIBC +# include <stdlib.h> +#endif + +#if defined HAVE_STRING_H || defined _LIBC +# include <string.h> +#else +# include <strings.h> +#endif +#include <sys/types.h> + +#include "loadinfo.h" + +/* On some strange systems still no definition of NULL is found. Sigh! */ +#ifndef NULL +# if defined __STDC__ && __STDC__ +# define NULL ((void *) 0) +# else +# define NULL 0 +# endif +#endif + +/* @@ end of prolog @@ */ + +char * +_nl_find_language (const char *name) +{ + while (name[0] != '\0' && name[0] != '_' && name[0] != '@' + && name[0] != '+' && name[0] != ',') + ++name; + + return (char *) name; +} + + +int +_nl_explode_name (name, language, modifier, territory, codeset, + normalized_codeset, special, sponsor, revision) + char *name; + const char **language; + const char **modifier; + const char **territory; + const char **codeset; + const char **normalized_codeset; + const char **special; + const char **sponsor; + const char **revision; +{ + enum { undecided, xpg, cen } syntax; + char *cp; + int mask; + + *modifier = NULL; + *territory = NULL; + *codeset = NULL; + *normalized_codeset = NULL; + *special = NULL; + *sponsor = NULL; + *revision = NULL; + + /* Now we determine the single parts of the locale name. First + look for the language. Termination symbols are `_' and `@' if + we use XPG4 style, and `_', `+', and `,' if we use CEN syntax. */ + mask = 0; + syntax = undecided; + *language = cp = name; + cp = _nl_find_language (*language); + + if (*language == cp) + /* This does not make sense: language has to be specified. Use + this entry as it is without exploding. Perhaps it is an alias. */ + cp = strchr (*language, '\0'); + else if (cp[0] == '_') + { + /* Next is the territory. */ + cp[0] = '\0'; + *territory = ++cp; + + while (cp[0] != '\0' && cp[0] != '.' && cp[0] != '@' + && cp[0] != '+' && cp[0] != ',' && cp[0] != '_') + ++cp; + + mask |= TERRITORY; + + if (cp[0] == '.') + { + /* Next is the codeset. */ + syntax = xpg; + cp[0] = '\0'; + *codeset = ++cp; + + while (cp[0] != '\0' && cp[0] != '@') + ++cp; + + mask |= XPG_CODESET; + + if (*codeset != cp && (*codeset)[0] != '\0') + { + *normalized_codeset = _nl_normalize_codeset (*codeset, + cp - *codeset); + if (strcmp (*codeset, *normalized_codeset) == 0) + free ((char *) *normalized_codeset); + else + mask |= XPG_NORM_CODESET; + } + } + } + + if (cp[0] == '@' || (syntax != xpg && cp[0] == '+')) + { + /* Next is the modifier. */ + syntax = cp[0] == '@' ? xpg : cen; + cp[0] = '\0'; + *modifier = ++cp; + + while (syntax == cen && cp[0] != '\0' && cp[0] != '+' + && cp[0] != ',' && cp[0] != '_') + ++cp; + + mask |= XPG_MODIFIER | CEN_AUDIENCE; + } + + if (syntax != xpg && (cp[0] == '+' || cp[0] == ',' || cp[0] == '_')) + { + syntax = cen; + + if (cp[0] == '+') + { + /* Next is special application (CEN syntax). */ + cp[0] = '\0'; + *special = ++cp; + + while (cp[0] != '\0' && cp[0] != ',' && cp[0] != '_') + ++cp; + + mask |= CEN_SPECIAL; + } + + if (cp[0] == ',') + { + /* Next is sponsor (CEN syntax). */ + cp[0] = '\0'; + *sponsor = ++cp; + + while (cp[0] != '\0' && cp[0] != '_') + ++cp; + + mask |= CEN_SPONSOR; + } + + if (cp[0] == '_') + { + /* Next is revision (CEN syntax). */ + cp[0] = '\0'; + *revision = ++cp; + + mask |= CEN_REVISION; + } + } + + /* For CEN syntax values it might be important to have the + separator character in the file name, not for XPG syntax. */ + if (syntax == xpg) + { + if (*territory != NULL && (*territory)[0] == '\0') + mask &= ~TERRITORY; + + if (*codeset != NULL && (*codeset)[0] == '\0') + mask &= ~XPG_CODESET; + + if (*modifier != NULL && (*modifier)[0] == '\0') + mask &= ~XPG_MODIFIER; + } + + return mask; +} diff --git a/source3/intl/finddomain.c b/source3/intl/finddomain.c new file mode 100644 index 0000000000..81ea29bf4e --- /dev/null +++ b/source3/intl/finddomain.c @@ -0,0 +1,216 @@ +/* Handle list of needed message catalogs + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include <ctype.h> +#include <errno.h> +#include <stdio.h> +#include <sys/types.h> + +#if defined STDC_HEADERS || defined _LIBC +# include <stdlib.h> +#else +# ifdef HAVE_MALLOC_H +# include <malloc.h> +# else +void free (); +# endif +#endif + +#if defined HAVE_STRING_H || defined _LIBC +# include <string.h> +#else +# include <strings.h> +# ifndef memcpy +# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +# endif +#endif +#if !HAVE_STRCHR && !defined _LIBC +# ifndef strchr +# define strchr index +# endif +#endif + +#if defined HAVE_UNISTD_H || defined _LIBC +# include <unistd.h> +#endif + +#include "gettext.h" +#include "gettextP.h" +#ifdef _LIBC +# include <libintl.h> +#else +# include "libgettext.h" +#endif + +/* @@ end of prolog @@ */ +/* List of already loaded domains. */ +static struct loaded_l10nfile *_nl_loaded_domains; + + +/* Return a data structure describing the message catalog described by + the DOMAINNAME and CATEGORY parameters with respect to the currently + established bindings. */ +struct loaded_l10nfile * +internal_function +_nl_find_domain (dirname, locale, domainname) + const char *dirname; + char *locale; + const char *domainname; +{ + struct loaded_l10nfile *retval; + const char *language; + const char *modifier; + const char *territory; + const char *codeset; + const char *normalized_codeset; + const char *special; + const char *sponsor; + const char *revision; + const char *alias_value; + int mask; + + /* LOCALE can consist of up to four recognized parts for the XPG syntax: + + language[_territory[.codeset]][@modifier] + + and six parts for the CEN syntax: + + language[_territory][+audience][+special][,[sponsor][_revision]] + + Beside the first part all of them are allowed to be missing. If + the full specified locale is not found, the less specific one are + looked for. The various parts will be stripped off according to + the following order: + (1) revision + (2) sponsor + (3) special + (4) codeset + (5) normalized codeset + (6) territory + (7) audience/modifier + */ + + /* If we have already tested for this locale entry there has to + be one data set in the list of loaded domains. */ + retval = _nl_make_l10nflist (&_nl_loaded_domains, dirname, + strlen (dirname) + 1, 0, locale, NULL, NULL, + NULL, NULL, NULL, NULL, NULL, domainname, 0); + if (retval != NULL) + { + /* We know something about this locale. */ + int cnt; + + if (retval->decided == 0) + _nl_load_domain (retval); + + if (retval->data != NULL) + return retval; + + for (cnt = 0; retval->successor[cnt] != NULL; ++cnt) + { + if (retval->successor[cnt]->decided == 0) + _nl_load_domain (retval->successor[cnt]); + + if (retval->successor[cnt]->data != NULL) + break; + } + return cnt >= 0 ? retval : NULL; + /* NOTREACHED */ + } + + /* See whether the locale value is an alias. If yes its value + *overwrites* the alias name. No test for the original value is + done. */ + alias_value = _nl_expand_alias (locale); + if (alias_value != NULL) + { +#if defined _LIBC || defined HAVE_STRDUP + locale = strdup (alias_value); + if (locale == NULL) + return NULL; +#else + size_t len = strlen (alias_value) + 1; + locale = (char *) malloc (len); + if (locale == NULL) + return NULL; + + memcpy (locale, alias_value, len); +#endif + } + + /* Now we determine the single parts of the locale name. First + look for the language. Termination symbols are `_' and `@' if + we use XPG4 style, and `_', `+', and `,' if we use CEN syntax. */ + mask = _nl_explode_name (locale, &language, &modifier, &territory, + &codeset, &normalized_codeset, &special, + &sponsor, &revision); + + /* Create all possible locale entries which might be interested in + generalization. */ + retval = _nl_make_l10nflist (&_nl_loaded_domains, dirname, + strlen (dirname) + 1, mask, language, territory, + codeset, normalized_codeset, modifier, special, + sponsor, revision, domainname, 1); + if (retval == NULL) + /* This means we are out of core. */ + return NULL; + + if (retval->decided == 0) + _nl_load_domain (retval); + if (retval->data == NULL) + { + int cnt; + for (cnt = 0; retval->successor[cnt] != NULL; ++cnt) + { + if (retval->successor[cnt]->decided == 0) + _nl_load_domain (retval->successor[cnt]); + if (retval->successor[cnt]->data != NULL) + break; + } + } + + /* The room for an alias was dynamically allocated. Free it now. */ + if (alias_value != NULL) + free (locale); + + return retval; +} + + +#ifdef _LIBC +static void __attribute__ ((unused)) +free_mem (void) +{ + struct loaded_l10nfile *runp = _nl_loaded_domains; + + while (runp != NULL) + { + struct loaded_l10nfile *here = runp; + if (runp->data != NULL) + _nl_unload_domain ((struct loaded_domain *) runp->data); + runp = runp->next; + free (here); + } +} + +text_set_element (__libc_subfreeres, free_mem); +#endif diff --git a/source3/intl/gettext.c b/source3/intl/gettext.c new file mode 100644 index 0000000000..d929f98d68 --- /dev/null +++ b/source3/intl/gettext.c @@ -0,0 +1,70 @@ +/* Implementation of gettext(3) function. + Copyright (C) 1995, 1997 Free Software Foundation, Inc. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#ifdef _LIBC +# define __need_NULL +# include <stddef.h> +#else +# ifdef STDC_HEADERS +# include <stdlib.h> /* Just for NULL. */ +# else +# ifdef HAVE_STRING_H +# include <string.h> +# else +# define NULL ((void *) 0) +# endif +# endif +#endif + +#ifdef _LIBC +# include <libintl.h> +#else +# include "libgettext.h" +#endif + +/* @@ end of prolog @@ */ + +/* Names for the libintl functions are a problem. They must not clash + with existing names and they should follow ANSI C. But this source + code is also used in GNU C Library where the names have a __ + prefix. So we have to make a difference here. */ +#ifdef _LIBC +# define GETTEXT __gettext +# define DGETTEXT __dgettext +#else +# define GETTEXT gettext__ +# define DGETTEXT dgettext__ +#endif + +/* Look up MSGID in the current default message catalog for the current + LC_MESSAGES locale. If not found, returns MSGID itself (the default + text). */ +char * +GETTEXT (msgid) + const char *msgid; +{ + return DGETTEXT (NULL, msgid); +} + +#ifdef _LIBC +/* Alias for function name in GNU C Library. */ +weak_alias (__gettext, gettext); +#endif diff --git a/source3/intl/gettext.h b/source3/intl/gettext.h new file mode 100644 index 0000000000..92ce63d779 --- /dev/null +++ b/source3/intl/gettext.h @@ -0,0 +1,111 @@ +/* Internal header for GNU gettext internationalization functions. + Copyright (C) 1995, 1997 Free Software Foundation, Inc. + + 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 2, 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 Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +#ifndef _GETTEXT_H +#define _GETTEXT_H 1 + +#include <stdio.h> + +#ifdef NEWS4 +/* on NEWS-OS 4 limits.h is overrided by sys/param.h */ +#undef HAVE_LIMITS_H +# include <sys/param.h> +#endif + +#if HAVE_LIMITS_H || _LIBC +# include <limits.h> +#endif + +/* @@ end of prolog @@ */ + +/* The magic number of the GNU message catalog format. */ +#define _MAGIC 0x950412de +#define _MAGIC_SWAPPED 0xde120495 + +/* Revision number of the currently used .mo (binary) file format. */ +#define MO_REVISION_NUMBER 0 + +/* The following contortions are an attempt to use the C preprocessor + to determine an unsigned integral type that is 32 bits wide. An + alternative approach is to use autoconf's AC_CHECK_SIZEOF macro, but + doing that would require that the configure script compile and *run* + the resulting executable. Locally running cross-compiled executables + is usually not possible. */ + +#if __STDC__ +# define UINT_MAX_32_BITS 4294967295U +#else +# define UINT_MAX_32_BITS 0xFFFFFFFF +#endif + +/* If UINT_MAX isn't defined, assume it's a 32-bit type. + This should be valid for all systems GNU cares about because + that doesn't include 16-bit systems, and only modern systems + (that certainly have <limits.h>) have 64+-bit integral types. */ + +#ifndef UINT_MAX +# define UINT_MAX UINT_MAX_32_BITS +#endif + +#if UINT_MAX == UINT_MAX_32_BITS +typedef unsigned nls_uint32; +#else +# if USHRT_MAX == UINT_MAX_32_BITS +typedef unsigned short nls_uint32; +# else +# if ULONG_MAX == UINT_MAX_32_BITS +typedef unsigned long nls_uint32; +# else + /* The following line is intended to throw an error. Using #error is + not portable enough. */ + "Cannot determine unsigned 32-bit data type." +# endif +# endif +#endif + + +/* Header for binary .mo file format. */ +struct mo_file_header +{ + /* The magic number. */ + nls_uint32 magic; + /* The revision number of the file format. */ + nls_uint32 revision; + /* The number of strings pairs. */ + nls_uint32 nstrings; + /* Offset of table with start offsets of original strings. */ + nls_uint32 orig_tab_offset; + /* Offset of table with start offsets of translation strings. */ + nls_uint32 trans_tab_offset; + /* Size of hashing table. */ + nls_uint32 hash_tab_size; + /* Offset of first hashing entry. */ + nls_uint32 hash_tab_offset; +}; + +struct string_desc +{ + /* Length of addressed string. */ + nls_uint32 length; + /* Offset of string in file. */ + nls_uint32 offset; +}; + +/* @@ begin of epilog @@ */ + +#endif /* gettext.h */ diff --git a/source3/intl/gettextP.h b/source3/intl/gettextP.h new file mode 100644 index 0000000000..00c5203197 --- /dev/null +++ b/source3/intl/gettextP.h @@ -0,0 +1,89 @@ +/* Header describing internals of gettext library + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifndef _GETTEXTP_H +#define _GETTEXTP_H + +#include "loadinfo.h" + +/* @@ end of prolog @@ */ + +#ifndef PARAMS +# if __STDC__ +# define PARAMS(args) args +# else +# define PARAMS(args) () +# endif +#endif + +#ifndef internal_function +# define internal_function +#endif + +#ifndef W +# define W(flag, data) ((flag) ? SWAP (data) : (data)) +#endif + + +#ifdef _LIBC +# include <byteswap.h> +# define SWAP(i) bswap_32 (i) +#else +static nls_uint32 SWAP PARAMS ((nls_uint32 i)); + +static inline nls_uint32 +SWAP (i) + nls_uint32 i; +{ + return (i << 24) | ((i & 0xff00) << 8) | ((i >> 8) & 0xff00) | (i >> 24); +} +#endif + + +struct loaded_domain +{ + const char *data; + int use_mmap; + size_t mmap_size; + int must_swap; + nls_uint32 nstrings; + struct string_desc *orig_tab; + struct string_desc *trans_tab; + nls_uint32 hash_size; + nls_uint32 *hash_tab; +}; + +struct binding +{ + struct binding *next; + char *domainname; + char *dirname; +}; + +struct loaded_l10nfile *_nl_find_domain PARAMS ((const char *__dirname, + char *__locale, + const char *__domainname)) + internal_function; +void _nl_load_domain PARAMS ((struct loaded_l10nfile *__domain)) + internal_function; +void _nl_unload_domain PARAMS ((struct loaded_domain *__domain)) + internal_function; + +/* @@ begin of epilog @@ */ + +#endif /* gettextP.h */ diff --git a/source3/intl/hash-string.h b/source3/intl/hash-string.h new file mode 100644 index 0000000000..939e95828b --- /dev/null +++ b/source3/intl/hash-string.h @@ -0,0 +1,59 @@ +/* Implements a string hashing function. + Copyright (C) 1995, 1997 Free Software Foundation, Inc. + + 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 2, 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 Library General Public + License along with the GNU C Library; see the file COPYING.LIB. If not, + write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, + Boston, MA 02111-1307, USA. */ + +/* @@ end of prolog @@ */ + +#ifndef PARAMS +# if __STDC__ +# define PARAMS(Args) Args +# else +# define PARAMS(Args) () +# endif +#endif + +/* We assume to have `unsigned long int' value with at least 32 bits. */ +#define HASHWORDBITS 32 + + +/* Defines the so called `hashpjw' function by P.J. Weinberger + [see Aho/Sethi/Ullman, COMPILERS: Principles, Techniques and Tools, + 1986, 1987 Bell Telephone Laboratories, Inc.] */ +static unsigned long int hash_string PARAMS ((const char *__str_param)); + +static inline unsigned long int +hash_string (str_param) + const char *str_param; +{ + unsigned long int hval, g; + const char *str = str_param; + + /* Compute the hash value for the given string. */ + hval = 0; + while (*str != '\0') + { + hval <<= 4; + hval += (unsigned long int) *str++; + g = hval & ((unsigned long int) 0xf << (HASHWORDBITS - 4)); + if (g != 0) + { + hval ^= g >> (HASHWORDBITS - 8); + hval ^= g; + } + } + return hval; +} diff --git a/source3/intl/intl-compat.c b/source3/intl/intl-compat.c new file mode 100644 index 0000000000..503efa0fa9 --- /dev/null +++ b/source3/intl/intl-compat.c @@ -0,0 +1,76 @@ +/* intl-compat.c - Stub functions to call gettext functions from GNU gettext + Library. + Copyright (C) 1995 Software Foundation, Inc. + +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 2, 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, write to the Free Software +Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include "libgettext.h" + +/* @@ end of prolog @@ */ + + +#undef gettext +#undef dgettext +#undef dcgettext +#undef textdomain +#undef bindtextdomain + + +char * +bindtextdomain (domainname, dirname) + const char *domainname; + const char *dirname; +{ + return bindtextdomain__ (domainname, dirname); +} + + +char * +dcgettext (domainname, msgid, category) + const char *domainname; + const char *msgid; + int category; +{ + return dcgettext__ (domainname, msgid, category); +} + + +char * +dgettext (domainname, msgid) + const char *domainname; + const char *msgid; +{ + return dgettext__ (domainname, msgid); +} + + +char * +gettext (msgid) + const char *msgid; +{ + return gettext__ (msgid); +} + + +char * +textdomain (domainname) + const char *domainname; +{ + return textdomain__ (domainname); +} diff --git a/source3/intl/l10nflist.c b/source3/intl/l10nflist.c new file mode 100644 index 0000000000..30f5f64579 --- /dev/null +++ b/source3/intl/l10nflist.c @@ -0,0 +1,411 @@ +/* Handle list of needed message catalogs + Copyright (C) 1995, 1996, 1997 Free Software Foundation, Inc. + Contributed by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + + +#if defined HAVE_STRING_H || defined _LIBC +# ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +# endif +# include <string.h> +#else +# include <strings.h> +# ifndef memcpy +# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +# endif +#endif +#if !HAVE_STRCHR && !defined _LIBC +# ifndef strchr +# define strchr index +# endif +#endif + +#if defined _LIBC || defined HAVE_ARGZ_H +# include <argz.h> +#endif +#include <ctype.h> +#include <sys/types.h> + +#if defined STDC_HEADERS || defined _LIBC +# include <stdlib.h> +#endif + +#include "loadinfo.h" + +/* On some strange systems still no definition of NULL is found. Sigh! */ +#ifndef NULL +# if defined __STDC__ && __STDC__ +# define NULL ((void *) 0) +# else +# define NULL 0 +# endif +#endif + +/* @@ end of prolog @@ */ + +#ifdef _LIBC +/* Rename the non ANSI C functions. This is required by the standard + because some ANSI C functions will require linking with this object + file and the name space must not be polluted. */ +# ifndef stpcpy +# define stpcpy(dest, src) __stpcpy(dest, src) +# endif +#else +# ifndef HAVE_STPCPY +static char *stpcpy PARAMS ((char *dest, const char *src)); +# endif +#endif + +/* Define function which are usually not available. */ + +#if !defined _LIBC && !defined HAVE___ARGZ_COUNT +/* Returns the number of strings in ARGZ. */ +static size_t argz_count__ PARAMS ((const char *argz, size_t len)); + +static size_t +argz_count__ (argz, len) + const char *argz; + size_t len; +{ + size_t count = 0; + while (len > 0) + { + size_t part_len = strlen (argz); + argz += part_len + 1; + len -= part_len + 1; + count++; + } + return count; +} +# undef __argz_count +# define __argz_count(argz, len) argz_count__ (argz, len) +#endif /* !_LIBC && !HAVE___ARGZ_COUNT */ + +#if !defined _LIBC && !defined HAVE___ARGZ_STRINGIFY +/* Make '\0' separated arg vector ARGZ printable by converting all the '\0's + except the last into the character SEP. */ +static void argz_stringify__ PARAMS ((char *argz, size_t len, int sep)); + +static void +argz_stringify__ (argz, len, sep) + char *argz; + size_t len; + int sep; +{ + while (len > 0) + { + size_t part_len = strlen (argz); + argz += part_len; + len -= part_len + 1; + if (len > 0) + *argz++ = sep; + } +} +# undef __argz_stringify +# define __argz_stringify(argz, len, sep) argz_stringify__ (argz, len, sep) +#endif /* !_LIBC && !HAVE___ARGZ_STRINGIFY */ + +#if !defined _LIBC && !defined HAVE___ARGZ_NEXT +static char *argz_next__ PARAMS ((char *argz, size_t argz_len, + const char *entry)); + +static char * +argz_next__ (argz, argz_len, entry) + char *argz; + size_t argz_len; + const char *entry; +{ + if (entry) + { + if (entry < argz + argz_len) + entry = strchr (entry, '\0') + 1; + + return entry >= argz + argz_len ? NULL : (char *) entry; + } + else + if (argz_len > 0) + return argz; + else + return 0; +} +# undef __argz_next +# define __argz_next(argz, len, entry) argz_next__ (argz, len, entry) +#endif /* !_LIBC && !HAVE___ARGZ_NEXT */ + + +/* Return number of bits set in X. */ +static int pop PARAMS ((int x)); + +static inline int +pop (x) + int x; +{ + /* We assume that no more than 16 bits are used. */ + x = ((x & ~0x5555) >> 1) + (x & 0x5555); + x = ((x & ~0x3333) >> 2) + (x & 0x3333); + x = ((x >> 4) + x) & 0x0f0f; + x = ((x >> 8) + x) & 0xff; + + return x; +} + + +struct loaded_l10nfile * +_nl_make_l10nflist (l10nfile_list, dirlist, dirlist_len, mask, language, + territory, codeset, normalized_codeset, modifier, special, + sponsor, revision, filename, do_allocate) + struct loaded_l10nfile **l10nfile_list; + const char *dirlist; + size_t dirlist_len; + int mask; + const char *language; + const char *territory; + const char *codeset; + const char *normalized_codeset; + const char *modifier; + const char *special; + const char *sponsor; + const char *revision; + const char *filename; + int do_allocate; +{ + char *abs_filename; + struct loaded_l10nfile *last = NULL; + struct loaded_l10nfile *retval; + char *cp; + size_t entries; + int cnt; + + /* Allocate room for the full file name. */ + abs_filename = (char *) malloc (dirlist_len + + strlen (language) + + ((mask & TERRITORY) != 0 + ? strlen (territory) + 1 : 0) + + ((mask & XPG_CODESET) != 0 + ? strlen (codeset) + 1 : 0) + + ((mask & XPG_NORM_CODESET) != 0 + ? strlen (normalized_codeset) + 1 : 0) + + (((mask & XPG_MODIFIER) != 0 + || (mask & CEN_AUDIENCE) != 0) + ? strlen (modifier) + 1 : 0) + + ((mask & CEN_SPECIAL) != 0 + ? strlen (special) + 1 : 0) + + (((mask & CEN_SPONSOR) != 0 + || (mask & CEN_REVISION) != 0) + ? (1 + ((mask & CEN_SPONSOR) != 0 + ? strlen (sponsor) + 1 : 0) + + ((mask & CEN_REVISION) != 0 + ? strlen (revision) + 1 : 0)) : 0) + + 1 + strlen (filename) + 1); + + if (abs_filename == NULL) + return NULL; + + retval = NULL; + last = NULL; + + /* Construct file name. */ + memcpy (abs_filename, dirlist, dirlist_len); + __argz_stringify (abs_filename, dirlist_len, ':'); + cp = abs_filename + (dirlist_len - 1); + *cp++ = '/'; + cp = stpcpy (cp, language); + + if ((mask & TERRITORY) != 0) + { + *cp++ = '_'; + cp = stpcpy (cp, territory); + } + if ((mask & XPG_CODESET) != 0) + { + *cp++ = '.'; + cp = stpcpy (cp, codeset); + } + if ((mask & XPG_NORM_CODESET) != 0) + { + *cp++ = '.'; + cp = stpcpy (cp, normalized_codeset); + } + if ((mask & (XPG_MODIFIER | CEN_AUDIENCE)) != 0) + { + /* This component can be part of both syntaces but has different + leading characters. For CEN we use `+', else `@'. */ + *cp++ = (mask & CEN_AUDIENCE) != 0 ? '+' : '@'; + cp = stpcpy (cp, modifier); + } + if ((mask & CEN_SPECIAL) != 0) + { + *cp++ = '+'; + cp = stpcpy (cp, special); + } + if ((mask & (CEN_SPONSOR | CEN_REVISION)) != 0) + { + *cp++ = ','; + if ((mask & CEN_SPONSOR) != 0) + cp = stpcpy (cp, sponsor); + if ((mask & CEN_REVISION) != 0) + { + *cp++ = '_'; + cp = stpcpy (cp, revision); + } + } + + *cp++ = '/'; + stpcpy (cp, filename); + + /* Look in list of already loaded domains whether it is already + available. */ + last = NULL; + for (retval = *l10nfile_list; retval != NULL; retval = retval->next) + if (retval->filename != NULL) + { + int compare = strcmp (retval->filename, abs_filename); + if (compare == 0) + /* We found it! */ + break; + if (compare < 0) + { + /* It's not in the list. */ + retval = NULL; + break; + } + + last = retval; + } + + if (retval != NULL || do_allocate == 0) + { + free (abs_filename); + return retval; + } + + retval = (struct loaded_l10nfile *) + malloc (sizeof (*retval) + (__argz_count (dirlist, dirlist_len) + * (1 << pop (mask)) + * sizeof (struct loaded_l10nfile *))); + if (retval == NULL) + return NULL; + + retval->filename = abs_filename; + retval->decided = (__argz_count (dirlist, dirlist_len) != 1 + || ((mask & XPG_CODESET) != 0 + && (mask & XPG_NORM_CODESET) != 0)); + retval->data = NULL; + + if (last == NULL) + { + retval->next = *l10nfile_list; + *l10nfile_list = retval; + } + else + { + retval->next = last->next; + last->next = retval; + } + + entries = 0; + /* If the DIRLIST is a real list the RETVAL entry corresponds not to + a real file. So we have to use the DIRLIST separation mechanism + of the inner loop. */ + cnt = __argz_count (dirlist, dirlist_len) == 1 ? mask - 1 : mask; + for (; cnt >= 0; --cnt) + if ((cnt & ~mask) == 0 + && ((cnt & CEN_SPECIFIC) == 0 || (cnt & XPG_SPECIFIC) == 0) + && ((cnt & XPG_CODESET) == 0 || (cnt & XPG_NORM_CODESET) == 0)) + { + /* Iterate over all elements of the DIRLIST. */ + char *dir = NULL; + + while ((dir = __argz_next ((char *) dirlist, dirlist_len, dir)) + != NULL) + retval->successor[entries++] + = _nl_make_l10nflist (l10nfile_list, dir, strlen (dir) + 1, cnt, + language, territory, codeset, + normalized_codeset, modifier, special, + sponsor, revision, filename, 1); + } + retval->successor[entries] = NULL; + + return retval; +} + +/* Normalize codeset name. There is no standard for the codeset + names. Normalization allows the user to use any of the common + names. */ +const char * +_nl_normalize_codeset (codeset, name_len) + const char *codeset; + size_t name_len; +{ + int len = 0; + int only_digit = 1; + char *retval; + char *wp; + size_t cnt; + + for (cnt = 0; cnt < name_len; ++cnt) + if (isalnum (codeset[cnt])) + { + ++len; + + if (isalpha (codeset[cnt])) + only_digit = 0; + } + + retval = (char *) malloc ((only_digit ? 3 : 0) + len + 1); + + if (retval != NULL) + { + if (only_digit) + wp = stpcpy (retval, "iso"); + else + wp = retval; + + for (cnt = 0; cnt < name_len; ++cnt) + if (isalpha (codeset[cnt])) + *wp++ = tolower (codeset[cnt]); + else if (isdigit (codeset[cnt])) + *wp++ = codeset[cnt]; + + *wp = '\0'; + } + + return (const char *) retval; +} + + +/* @@ begin of epilog @@ */ + +/* We don't want libintl.a to depend on any other library. So we + avoid the non-standard function stpcpy. In GNU C Library this + function is available, though. Also allow the symbol HAVE_STPCPY + to be defined. */ +#if !_LIBC && !HAVE_STPCPY +static char * +stpcpy (dest, src) + char *dest; + const char *src; +{ + while ((*dest++ = *src++) != '\0') + /* Do nothing. */ ; + return dest - 1; +} +#endif diff --git a/source3/intl/libgettext.h b/source3/intl/libgettext.h new file mode 100644 index 0000000000..3a92960ae3 --- /dev/null +++ b/source3/intl/libgettext.h @@ -0,0 +1,182 @@ +/* Message catalogs for internationalization. + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +/* Because on some systems (e.g. Solaris) we sometimes have to include + the systems libintl.h as well as this file we have more complex + include protection above. But the systems header might perhaps also + define _LIBINTL_H and therefore we have to protect the definition here. */ + +#if !defined _LIBINTL_H || !defined _LIBGETTEXT_H +#ifndef _LIBINTL_H +# define _LIBINTL_H 1 +#endif +#define _LIBGETTEXT_H 1 + +/* We define an additional symbol to signal that we use the GNU + implementation of gettext. */ +#define __USE_GNU_GETTEXT 1 + +#include <sys/types.h> + +#if HAVE_LOCALE_H +# include <locale.h> +#endif + + +#ifdef __cplusplus +extern "C" { +#endif + +/* @@ end of prolog @@ */ + +#ifndef PARAMS +# if __STDC__ || defined __cplusplus +# define PARAMS(args) args +# else +# define PARAMS(args) () +# endif +#endif + +#ifndef NULL +# if !defined __cplusplus || defined __GNUC__ +# define NULL ((void *) 0) +# else +# define NULL (0) +# endif +#endif + +#if !HAVE_LC_MESSAGES +/* This value determines the behaviour of the gettext() and dgettext() + function. But some system does not have this defined. Define it + to a default value. */ +# define LC_MESSAGES (-1) +#endif + + +/* Declarations for gettext-using-catgets interface. Derived from + Jim Meyering's libintl.h. */ +struct _msg_ent +{ + const char *_msg; + int _msg_number; +}; + + +#if HAVE_CATGETS +/* These two variables are defined in the automatically by po-to-tbl.sed + generated file `cat-id-tbl.c'. */ +extern const struct _msg_ent _msg_tbl[]; +extern int _msg_tbl_length; +#endif + + +/* For automatical extraction of messages sometimes no real + translation is needed. Instead the string itself is the result. */ +#define gettext_noop(Str) (Str) + +/* Look up MSGID in the current default message catalog for the current + LC_MESSAGES locale. If not found, returns MSGID itself (the default + text). */ +extern char *gettext PARAMS ((const char *__msgid)); +extern char *gettext__ PARAMS ((const char *__msgid)); + +/* Look up MSGID in the DOMAINNAME message catalog for the current + LC_MESSAGES locale. */ +extern char *dgettext PARAMS ((const char *__domainname, const char *__msgid)); +extern char *dgettext__ PARAMS ((const char *__domainname, + const char *__msgid)); + +/* Look up MSGID in the DOMAINNAME message catalog for the current CATEGORY + locale. */ +extern char *dcgettext PARAMS ((const char *__domainname, const char *__msgid, + int __category)); +extern char *dcgettext__ PARAMS ((const char *__domainname, + const char *__msgid, int __category)); + + +/* Set the current default message catalog to DOMAINNAME. + If DOMAINNAME is null, return the current default. + If DOMAINNAME is "", reset to the default of "messages". */ +extern char *textdomain PARAMS ((const char *__domainname)); +extern char *textdomain__ PARAMS ((const char *__domainname)); + +/* Specify that the DOMAINNAME message catalog will be found + in DIRNAME rather than in the system locale data base. */ +extern char *bindtextdomain PARAMS ((const char *__domainname, + const char *__dirname)); +extern char *bindtextdomain__ PARAMS ((const char *__domainname, + const char *__dirname)); + +#if ENABLE_NLS + +/* Solaris 2.3 has the gettext function but dcgettext is missing. + So we omit this optimization for Solaris 2.3. BTW, Solaris 2.4 + has dcgettext. */ +# if !HAVE_CATGETS && (!HAVE_GETTEXT || HAVE_DCGETTEXT) + +# define gettext(Msgid) \ + dgettext (NULL, Msgid) + +# define dgettext(Domainname, Msgid) \ + dcgettext (Domainname, Msgid, LC_MESSAGES) + +# if defined __GNUC__ && __GNUC__ == 2 && __GNUC_MINOR__ >= 7 +/* This global variable is defined in loadmsgcat.c. We need a sign, + whether a new catalog was loaded, which can be associated with all + translations. */ +extern int _nl_msg_cat_cntr; + +# define dcgettext(Domainname, Msgid, Category) \ + (__extension__ \ + ({ \ + char *__result; \ + if (__builtin_constant_p (Msgid)) \ + { \ + static char *__translation__; \ + static int __catalog_counter__; \ + if (! __translation__ || __catalog_counter__ != _nl_msg_cat_cntr) \ + { \ + __translation__ = \ + dcgettext__ (Domainname, Msgid, Category); \ + __catalog_counter__ = _nl_msg_cat_cntr; \ + } \ + __result = __translation__; \ + } \ + else \ + __result = dcgettext__ (Domainname, Msgid, Category); \ + __result; \ + })) +# endif +# endif + +#else + +# define gettext(Msgid) (Msgid) +# define dgettext(Domainname, Msgid) (Msgid) +# define dcgettext(Domainname, Msgid, Category) (Msgid) +# define textdomain(Domainname) ((char *) Domainname) +# define bindtextdomain(Domainname, Dirname) ((char *) Dirname) + +#endif + +/* @@ begin of epilog @@ */ + +#ifdef __cplusplus +} +#endif + +#endif diff --git a/source3/intl/linux-msg.sed b/source3/intl/linux-msg.sed new file mode 100644 index 0000000000..5918e720a9 --- /dev/null +++ b/source3/intl/linux-msg.sed @@ -0,0 +1,100 @@ +# po2msg.sed - Convert Uniforum style .po file to Linux style .msg file +# Copyright (C) 1995 Free Software Foundation, Inc. +# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. +# +# 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 2, 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, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# +# The first directive in the .msg should be the definition of the +# message set number. We use always set number 1. +# +1 { + i\ +$set 1 # Automatically created by po2msg.sed + h + s/.*/0/ + x +} +# +# Mitch's old catalog format does not allow comments. +# +# We copy the original message as a comment into the .msg file. +# +/^msgid/ { + s/msgid[ ]*"// +# +# This does not work now with the new format. +# /"$/! { +# s/\\$// +# s/$/ ... (more lines following)"/ +# } + x +# The following nice solution is by +# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de> + td +# Increment a decimal number in pattern space. +# First hide trailing `9' digits. + :d + s/9\(_*\)$/_\1/ + td +# Assure at least one digit is available. + s/^\(_*\)$/0\1/ +# Increment the last digit. + s/8\(_*\)$/9\1/ + s/7\(_*\)$/8\1/ + s/6\(_*\)$/7\1/ + s/5\(_*\)$/6\1/ + s/4\(_*\)$/5\1/ + s/3\(_*\)$/4\1/ + s/2\(_*\)$/3\1/ + s/1\(_*\)$/2\1/ + s/0\(_*\)$/1\1/ +# Convert the hidden `9' digits to `0's. + s/_/0/g + x + G + s/\(.*\)"\n\([0-9]*\)/$ #\2 Original Message:(\1)/p +} +# +# The .msg file contains, other then the .po file, only the translations +# but each given a unique ID. Starting from 1 and incrementing by 1 for +# each message we assign them to the messages. +# It is important that the .po file used to generate the cat-id-tbl.c file +# (with po-to-tbl) is the same as the one used here. (At least the order +# of declarations must not be changed.) +# +/^msgstr/ { + s/msgstr[ ]*"\(.*\)"/# \1/ +# Clear substitution flag. + tb +# Append the next line. + :b + N +# Look whether second part is continuation line. + s/\(.*\n\)"\(.*\)"/\1\2/ +# Yes, then branch. + ta + P + D +# Note that D includes a jump to the start!! +# We found a continuation line. But before printing insert '\'. + :a + s/\(.*\)\(\n.*\)/\1\\\2/ + P +# We cannot use D here. + s/.*\n\(.*\)/\1/ + tb +} +d diff --git a/source3/intl/loadinfo.h b/source3/intl/loadinfo.h new file mode 100644 index 0000000000..1c4524abbd --- /dev/null +++ b/source3/intl/loadinfo.h @@ -0,0 +1,78 @@ +/* Copyright (C) 1996, 1997 Free Software Foundation, Inc. + This file is part of the GNU C Library. + Contributed by Ulrich Drepper <drepper@cygnus.com>, 1996. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifndef PARAMS +# if __STDC__ +# define PARAMS(args) args +# else +# define PARAMS(args) () +# endif +#endif + +/* Encoding of locale name parts. */ +#define CEN_REVISION 1 +#define CEN_SPONSOR 2 +#define CEN_SPECIAL 4 +#define XPG_NORM_CODESET 8 +#define XPG_CODESET 16 +#define TERRITORY 32 +#define CEN_AUDIENCE 64 +#define XPG_MODIFIER 128 + +#define CEN_SPECIFIC (CEN_REVISION|CEN_SPONSOR|CEN_SPECIAL|CEN_AUDIENCE) +#define XPG_SPECIFIC (XPG_CODESET|XPG_NORM_CODESET|XPG_MODIFIER) + + +struct loaded_l10nfile +{ + const char *filename; + int decided; + + const void *data; + + struct loaded_l10nfile *next; + struct loaded_l10nfile *successor[1]; +}; + + +extern const char *_nl_normalize_codeset PARAMS ((const char *codeset, + size_t name_len)); + +extern struct loaded_l10nfile * +_nl_make_l10nflist PARAMS ((struct loaded_l10nfile **l10nfile_list, + const char *dirlist, size_t dirlist_len, int mask, + const char *language, const char *territory, + const char *codeset, + const char *normalized_codeset, + const char *modifier, const char *special, + const char *sponsor, const char *revision, + const char *filename, int do_allocate)); + + +extern const char *_nl_expand_alias PARAMS ((const char *name)); + +extern int _nl_explode_name PARAMS ((char *name, const char **language, + const char **modifier, + const char **territory, + const char **codeset, + const char **normalized_codeset, + const char **special, + const char **sponsor, + const char **revision)); + +extern char *_nl_find_language PARAMS ((const char *name)); diff --git a/source3/intl/loadmsgcat.c b/source3/intl/loadmsgcat.c new file mode 100644 index 0000000000..2c6a5650d1 --- /dev/null +++ b/source3/intl/loadmsgcat.c @@ -0,0 +1,220 @@ +/* Load needed message catalogs. + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include <fcntl.h> +#include <sys/types.h> +#include <sys/stat.h> + +#if defined STDC_HEADERS || defined _LIBC +# include <stdlib.h> +#endif + +#if defined HAVE_UNISTD_H || defined _LIBC +# include <unistd.h> +#endif + +#if (defined HAVE_MMAP && defined HAVE_MUNMAP && !defined DISALLOW_MMAP) \ + || (defined _LIBC && defined _POSIX_MAPPED_FILES) +# include <sys/mman.h> +# undef HAVE_MMAP +# define HAVE_MMAP 1 +#else +# undef HAVE_MMAP +#endif + +#include "gettext.h" +#include "gettextP.h" + +/* @@ end of prolog @@ */ + +#ifdef _LIBC +/* Rename the non ISO C functions. This is required by the standard + because some ISO C functions will require linking with this object + file and the name space must not be polluted. */ +# define open __open +# define close __close +# define read __read +# define mmap __mmap +# define munmap __munmap +#endif + +/* We need a sign, whether a new catalog was loaded, which can be associated + with all translations. This is important if the translations are + cached by one of GCC's features. */ +int _nl_msg_cat_cntr = 0; + + +/* Load the message catalogs specified by FILENAME. If it is no valid + message catalog do nothing. */ +void +internal_function +_nl_load_domain (domain_file) + struct loaded_l10nfile *domain_file; +{ + int fd; + size_t size; + struct stat st; + struct mo_file_header *data = (struct mo_file_header *) -1; + int use_mmap = 0; + struct loaded_domain *domain; + + domain_file->decided = 1; + domain_file->data = NULL; + + /* If the record does not represent a valid locale the FILENAME + might be NULL. This can happen when according to the given + specification the locale file name is different for XPG and CEN + syntax. */ + if (domain_file->filename == NULL) + return; + + /* Try to open the addressed file. */ + fd = open (domain_file->filename, O_RDONLY); + if (fd == -1) + return; + + /* We must know about the size of the file. */ + if (fstat (fd, &st) != 0 + || (size = (size_t) st.st_size) != st.st_size + || size < sizeof (struct mo_file_header)) + { + /* Something went wrong. */ + close (fd); + return; + } + +#ifdef HAVE_MMAP + /* Now we are ready to load the file. If mmap() is available we try + this first. If not available or it failed we try to load it. */ + data = (struct mo_file_header *) mmap (NULL, size, PROT_READ, + MAP_PRIVATE, fd, 0); + + if (data != (struct mo_file_header *) -1) + { + /* mmap() call was successful. */ + close (fd); + use_mmap = 1; + } +#endif + + /* If the data is not yet available (i.e. mmap'ed) we try to load + it manually. */ + if (data == (struct mo_file_header *) -1) + { + size_t to_read; + char *read_ptr; + + data = (struct mo_file_header *) malloc (size); + if (data == NULL) + return; + + to_read = size; + read_ptr = (char *) data; + do + { + long int nb = (long int) read (fd, read_ptr, to_read); + if (nb == -1) + { + close (fd); + return; + } + + read_ptr += nb; + to_read -= nb; + } + while (to_read > 0); + + close (fd); + } + + /* Using the magic number we can test whether it really is a message + catalog file. */ + if (data->magic != _MAGIC && data->magic != _MAGIC_SWAPPED) + { + /* The magic number is wrong: not a message catalog file. */ +#ifdef HAVE_MMAP + if (use_mmap) + munmap ((caddr_t) data, size); + else +#endif + free (data); + return; + } + + domain_file->data + = (struct loaded_domain *) malloc (sizeof (struct loaded_domain)); + if (domain_file->data == NULL) + return; + + domain = (struct loaded_domain *) domain_file->data; + domain->data = (char *) data; + domain->use_mmap = use_mmap; + domain->mmap_size = size; + domain->must_swap = data->magic != _MAGIC; + + /* Fill in the information about the available tables. */ + switch (W (domain->must_swap, data->revision)) + { + case 0: + domain->nstrings = W (domain->must_swap, data->nstrings); + domain->orig_tab = (struct string_desc *) + ((char *) data + W (domain->must_swap, data->orig_tab_offset)); + domain->trans_tab = (struct string_desc *) + ((char *) data + W (domain->must_swap, data->trans_tab_offset)); + domain->hash_size = W (domain->must_swap, data->hash_tab_size); + domain->hash_tab = (nls_uint32 *) + ((char *) data + W (domain->must_swap, data->hash_tab_offset)); + break; + default: + /* This is an invalid revision. */ +#ifdef HAVE_MMAP + if (use_mmap) + munmap ((caddr_t) data, size); + else +#endif + free (data); + free (domain); + domain_file->data = NULL; + return; + } + + /* Show that one domain is changed. This might make some cached + translations invalid. */ + ++_nl_msg_cat_cntr; +} + + +#ifdef _LIBC +void +internal_function +_nl_unload_domain (domain) + struct loaded_domain *domain; +{ +#ifdef _POSIX_MAPPED_FILES + if (domain->use_mmap) + munmap ((caddr_t) domain->data, domain->mmap_size); + else +#endif /* _POSIX_MAPPED_FILES */ + free ((void *) domain->data); + + free (domain); +} +#endif diff --git a/source3/intl/localealias.c b/source3/intl/localealias.c new file mode 100644 index 0000000000..27abb26f57 --- /dev/null +++ b/source3/intl/localealias.c @@ -0,0 +1,438 @@ +/* Handle aliases for locale names. + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#include <ctype.h> +#include <stdio.h> +#include <sys/types.h> + +#ifdef __GNUC__ +# define alloca __builtin_alloca +# define HAVE_ALLOCA 1 +#else +# if defined HAVE_ALLOCA_H || defined _LIBC +# include <alloca.h> +# else +# ifdef _AIX + #pragma alloca +# else +# ifndef alloca +char *alloca (); +# endif +# endif +# endif +#endif + +#if defined STDC_HEADERS || defined _LIBC +# include <stdlib.h> +#else +char *getenv (); +# ifdef HAVE_MALLOC_H +# include <malloc.h> +# else +void free (); +# endif +#endif + +#if defined HAVE_STRING_H || defined _LIBC +# ifndef _GNU_SOURCE +# define _GNU_SOURCE 1 +# endif +# include <string.h> +#else +# include <strings.h> +# ifndef memcpy +# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +# endif +#endif +#if !HAVE_STRCHR && !defined _LIBC +# ifndef strchr +# define strchr index +# endif +#endif + +#include "gettext.h" +#include "gettextP.h" + +/* @@ end of prolog @@ */ + +#ifdef _LIBC +/* Rename the non ANSI C functions. This is required by the standard + because some ANSI C functions will require linking with this object + file and the name space must not be polluted. */ +# define strcasecmp __strcasecmp + +# ifndef mempcpy +# define mempcpy __mempcpy +# endif +# define HAVE_MEMPCPY 1 + +/* We need locking here since we can be called from different places. */ +# include <bits/libc-lock.h> + +__libc_lock_define_initialized (static, lock); +#endif + +#ifndef internal_function +# define internal_function +#endif + +/* For those loosing systems which don't have `alloca' we have to add + some additional code emulating it. */ +#ifdef HAVE_ALLOCA +/* Nothing has to be done. */ +# define ADD_BLOCK(list, address) /* nothing */ +# define FREE_BLOCKS(list) /* nothing */ +#else +struct block_list +{ + void *address; + struct block_list *next; +}; +# define ADD_BLOCK(list, addr) \ + do { \ + struct block_list *newp = (struct block_list *) malloc (sizeof (*newp)); \ + /* If we cannot get a free block we cannot add the new element to \ + the list. */ \ + if (newp != NULL) { \ + newp->address = (addr); \ + newp->next = (list); \ + (list) = newp; \ + } \ + } while (0) +# define FREE_BLOCKS(list) \ + do { \ + while (list != NULL) { \ + struct block_list *old = list; \ + list = list->next; \ + free (old); \ + } \ + } while (0) +# undef alloca +# define alloca(size) (malloc (size)) +#endif /* have alloca */ + +#if defined _LIBC_REENTRANT || defined HAVE_FGETS_UNLOCKED +# undef fgets +# define fgets(buf, len, s) fgets_unlocked (buf, len, s) +#endif +#if defined _LIBC_REENTRANT || defined HAVE_FEOF_UNLOCKED +# undef feof +# define feof(s) feof_unlocked (s) +#endif + + +struct alias_map +{ + const char *alias; + const char *value; +}; + + +static char *string_space = NULL; +static size_t string_space_act = 0; +static size_t string_space_max = 0; +static struct alias_map *map; +static size_t nmap = 0; +static size_t maxmap = 0; + + +/* Prototypes for local functions. */ +static size_t read_alias_file PARAMS ((const char *fname, int fname_len)) + internal_function; +static void extend_alias_table PARAMS ((void)); +static int alias_compare PARAMS ((const struct alias_map *map1, + const struct alias_map *map2)); + + +const char * +_nl_expand_alias (name) + const char *name; +{ + static const char *locale_alias_path = LOCALE_ALIAS_PATH; + struct alias_map *retval; + const char *result = NULL; + size_t added; + +#ifdef _LIBC + __libc_lock_lock (lock); +#endif + + do + { + struct alias_map item; + + item.alias = name; + + if (nmap > 0) + retval = (struct alias_map *) bsearch (&item, map, nmap, + sizeof (struct alias_map), + (int (*) PARAMS ((const void *, + const void *)) + ) alias_compare); + else + retval = NULL; + + /* We really found an alias. Return the value. */ + if (retval != NULL) + { + result = retval->value; + break; + } + + /* Perhaps we can find another alias file. */ + added = 0; + while (added == 0 && locale_alias_path[0] != '\0') + { + const char *start; + + while (locale_alias_path[0] == ':') + ++locale_alias_path; + start = locale_alias_path; + + while (locale_alias_path[0] != '\0' && locale_alias_path[0] != ':') + ++locale_alias_path; + + if (start < locale_alias_path) + added = read_alias_file (start, locale_alias_path - start); + } + } + while (added != 0); + +#ifdef _LIBC + __libc_lock_unlock (lock); +#endif + + return result; +} + + +static size_t +internal_function +read_alias_file (fname, fname_len) + const char *fname; + int fname_len; +{ +#ifndef HAVE_ALLOCA + struct block_list *block_list = NULL; +#endif + FILE *fp; + char *full_fname; + size_t added; + static const char *aliasfile = "/locale.alias"; + + full_fname = (char *) alloca (fname_len + sizeof aliasfile); + ADD_BLOCK (block_list, full_fname); +#ifdef HAVE_MEMPCPY + mempcpy (mempcpy (full_fname, fname, fname_len), + aliasfile, sizeof aliasfile); +#else + memcpy (full_fname, fname, fname_len); + memcpy (&full_fname[fname_len], aliasfile, sizeof aliasfile); +#endif + + fp = fopen (full_fname, "r"); + if (fp == NULL) + { + FREE_BLOCKS (block_list); + return 0; + } + + added = 0; + while (!feof (fp)) + { + /* It is a reasonable approach to use a fix buffer here because + a) we are only interested in the first two fields + b) these fields must be usable as file names and so must not + be that long + */ + char buf[BUFSIZ]; + char *alias; + char *value; + char *cp; + + if (fgets (buf, sizeof buf, fp) == NULL) + /* EOF reached. */ + break; + + /* Possibly not the whole line fits into the buffer. Ignore + the rest of the line. */ + if (strchr (buf, '\n') == NULL) + { + char altbuf[BUFSIZ]; + do + if (fgets (altbuf, sizeof altbuf, fp) == NULL) + /* Make sure the inner loop will be left. The outer loop + will exit at the `feof' test. */ + break; + while (strchr (altbuf, '\n') == NULL); + } + + cp = buf; + /* Ignore leading white space. */ + while (isspace (cp[0])) + ++cp; + + /* A leading '#' signals a comment line. */ + if (cp[0] != '\0' && cp[0] != '#') + { + alias = cp++; + while (cp[0] != '\0' && !isspace (cp[0])) + ++cp; + /* Terminate alias name. */ + if (cp[0] != '\0') + *cp++ = '\0'; + + /* Now look for the beginning of the value. */ + while (isspace (cp[0])) + ++cp; + + if (cp[0] != '\0') + { + size_t alias_len; + size_t value_len; + + value = cp++; + while (cp[0] != '\0' && !isspace (cp[0])) + ++cp; + /* Terminate value. */ + if (cp[0] == '\n') + { + /* This has to be done to make the following test + for the end of line possible. We are looking for + the terminating '\n' which do not overwrite here. */ + *cp++ = '\0'; + *cp = '\n'; + } + else if (cp[0] != '\0') + *cp++ = '\0'; + + if (nmap >= maxmap) + extend_alias_table (); + + alias_len = strlen (alias) + 1; + value_len = strlen (value) + 1; + + if (string_space_act + alias_len + value_len > string_space_max) + { + /* Increase size of memory pool. */ + size_t new_size = (string_space_max + + (alias_len + value_len > 1024 + ? alias_len + value_len : 1024)); + char *new_pool = (char *) realloc (string_space, new_size); + if (new_pool == NULL) + { + FREE_BLOCKS (block_list); + return added; + } + string_space = new_pool; + string_space_max = new_size; + } + + map[nmap].alias = memcpy (&string_space[string_space_act], + alias, alias_len); + string_space_act += alias_len; + + map[nmap].value = memcpy (&string_space[string_space_act], + value, value_len); + string_space_act += value_len; + + ++nmap; + ++added; + } + } + } + + /* Should we test for ferror()? I think we have to silently ignore + errors. --drepper */ + fclose (fp); + + if (added > 0) + qsort (map, nmap, sizeof (struct alias_map), + (int (*) PARAMS ((const void *, const void *))) alias_compare); + + FREE_BLOCKS (block_list); + return added; +} + + +static void +extend_alias_table () +{ + size_t new_size; + struct alias_map *new_map; + + new_size = maxmap == 0 ? 100 : 2 * maxmap; + new_map = (struct alias_map *) realloc (map, (new_size + * sizeof (struct alias_map))); + if (new_map == NULL) + /* Simply don't extend: we don't have any more core. */ + return; + + map = new_map; + maxmap = new_size; +} + + +#ifdef _LIBC +static void __attribute__ ((unused)) +free_mem (void) +{ + if (string_space != NULL) + free (string_space); + if (map != NULL) + free (map); +} +text_set_element (__libc_subfreeres, free_mem); +#endif + + +static int +alias_compare (map1, map2) + const struct alias_map *map1; + const struct alias_map *map2; +{ +#if defined _LIBC || defined HAVE_STRCASECMP + return strcasecmp (map1->alias, map2->alias); +#else + const unsigned char *p1 = (const unsigned char *) map1->alias; + const unsigned char *p2 = (const unsigned char *) map2->alias; + unsigned char c1, c2; + + if (p1 == p2) + return 0; + + do + { + /* I know this seems to be odd but the tolower() function in + some systems libc cannot handle nonalpha characters. */ + c1 = isupper (*p1) ? tolower (*p1) : *p1; + c2 = isupper (*p2) ? tolower (*p2) : *p2; + if (c1 == '\0') + break; + ++p1; + ++p2; + } + while (c1 == c2); + + return c1 - c2; +#endif +} diff --git a/source3/intl/po2tbl.sed.in b/source3/intl/po2tbl.sed.in new file mode 100644 index 0000000000..b3bcca4d73 --- /dev/null +++ b/source3/intl/po2tbl.sed.in @@ -0,0 +1,102 @@ +# po2tbl.sed - Convert Uniforum style .po file to lookup table for catgets +# Copyright (C) 1995 Free Software Foundation, Inc. +# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. +# +# 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 2, 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, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +1 { + i\ +/* Automatically generated by po2tbl.sed from @PACKAGE NAME@.pot. */\ +\ +#if HAVE_CONFIG_H\ +# include <config.h>\ +#endif\ +\ +#include "libgettext.h"\ +\ +const struct _msg_ent _msg_tbl[] = { + h + s/.*/0/ + x +} +# +# Write msgid entries in C array form. +# +/^msgid/ { + s/msgid[ ]*\(".*"\)/ {\1/ + tb +# Append the next line + :b + N +# Look whether second part is continuation line. + s/\(.*\)"\(\n\)"\(.*"\)/\1\2\3/ +# Yes, then branch. + ta +# Because we assume that the input file correctly formed the line +# just read cannot be again be a msgid line. So it's safe to ignore +# it. + s/\(.*\)\n.*/\1/ + bc +# We found a continuation line. But before printing insert '\'. + :a + s/\(.*\)\(\n.*\)/\1\\\2/ + P +# We cannot use D here. + s/.*\n\(.*\)/\1/ +# Some buggy seds do not clear the `successful substitution since last ``t''' +# flag on `N', so we do a `t' here to clear it. + tb +# Not reached + :c + x +# The following nice solution is by +# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de> + td +# Increment a decimal number in pattern space. +# First hide trailing `9' digits. + :d + s/9\(_*\)$/_\1/ + td +# Assure at least one digit is available. + s/^\(_*\)$/0\1/ +# Increment the last digit. + s/8\(_*\)$/9\1/ + s/7\(_*\)$/8\1/ + s/6\(_*\)$/7\1/ + s/5\(_*\)$/6\1/ + s/4\(_*\)$/5\1/ + s/3\(_*\)$/4\1/ + s/2\(_*\)$/3\1/ + s/1\(_*\)$/2\1/ + s/0\(_*\)$/1\1/ +# Convert the hidden `9' digits to `0's. + s/_/0/g + x + G + s/\(.*\)\n\([0-9]*\)/\1, \2},/ + s/\(.*\)"$/\1/ + p +} +# +# Last line. +# +$ { + i\ +};\ + + g + s/0*\(.*\)/int _msg_tbl_length = \1;/p +} +d diff --git a/source3/intl/textdomain.c b/source3/intl/textdomain.c new file mode 100644 index 0000000000..88557460f3 --- /dev/null +++ b/source3/intl/textdomain.c @@ -0,0 +1,108 @@ +/* Implementation of the textdomain(3) function. + Copyright (C) 1995, 1996, 1997, 1998 Free Software Foundation, Inc. + Written by Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. + + 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 2, 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, write to the Free Software Foundation, + Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. */ + +#ifdef HAVE_CONFIG_H +# include <config.h> +#endif + +#if defined STDC_HEADERS || defined _LIBC +# include <stdlib.h> +#endif + +#if defined STDC_HEADERS || defined HAVE_STRING_H || defined _LIBC +# include <string.h> +#else +# include <strings.h> +# ifndef memcpy +# define memcpy(Dst, Src, Num) bcopy (Src, Dst, Num) +# endif +#endif + +#ifdef _LIBC +# include <libintl.h> +#else +# include "libgettext.h" +#endif + +/* @@ end of prolog @@ */ + +/* Name of the default text domain. */ +extern const char _nl_default_default_domain[]; + +/* Default text domain in which entries for gettext(3) are to be found. */ +extern const char *_nl_current_default_domain; + + +/* Names for the libintl functions are a problem. They must not clash + with existing names and they should follow ANSI C. But this source + code is also used in GNU C Library where the names have a __ + prefix. So we have to make a difference here. */ +#ifdef _LIBC +# define TEXTDOMAIN __textdomain +# ifndef strdup +# define strdup(str) __strdup (str) +# endif +#else +# define TEXTDOMAIN textdomain__ +#endif + +/* Set the current default message catalog to DOMAINNAME. + If DOMAINNAME is null, return the current default. + If DOMAINNAME is "", reset to the default of "messages". */ +char * +TEXTDOMAIN (domainname) + const char *domainname; +{ + char *old; + + /* A NULL pointer requests the current setting. */ + if (domainname == NULL) + return (char *) _nl_current_default_domain; + + old = (char *) _nl_current_default_domain; + + /* If domain name is the null string set to default domain "messages". */ + if (domainname[0] == '\0' + || strcmp (domainname, _nl_default_default_domain) == 0) + _nl_current_default_domain = _nl_default_default_domain; + else + { + /* If the following malloc fails `_nl_current_default_domain' + will be NULL. This value will be returned and so signals we + are out of core. */ +#if defined _LIBC || defined HAVE_STRDUP + _nl_current_default_domain = strdup (domainname); +#else + size_t len = strlen (domainname) + 1; + char *cp = (char *) malloc (len); + if (cp != NULL) + memcpy (cp, domainname, len); + _nl_current_default_domain = cp; +#endif + } + + if (old != _nl_default_default_domain) + free (old); + + return (char *) _nl_current_default_domain; +} + +#ifdef _LIBC +/* Alias for function name in GNU C Library. */ +weak_alias (__textdomain, textdomain); +#endif diff --git a/source3/intl/xopen-msg.sed b/source3/intl/xopen-msg.sed new file mode 100644 index 0000000000..54c14f5b99 --- /dev/null +++ b/source3/intl/xopen-msg.sed @@ -0,0 +1,106 @@ +# po2msg.sed - Convert Uniforum style .po file to X/Open style .msg file +# Copyright (C) 1995 Free Software Foundation, Inc. +# Ulrich Drepper <drepper@gnu.ai.mit.edu>, 1995. +# +# 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 2, 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, write to the Free Software +# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. +# +# +# The first directive in the .msg should be the definition of the +# message set number. We use always set number 1. +# +1 { + i\ +$set 1 + i\ +$ Automatically created by po2msg.sed + h + s/.*/0/ + x +} +# +# We copy all comments into the .msg file. Perhaps they can help. +# +/^#/ s/^#[ ]*/$ /p +# +# We copy the original message as a comment into the .msg file. +# +/^msgid/ { +# Does not work now +# /"$/! { +# s/\\$// +# s/$/ ... (more lines following)"/ +# } + s/^msgid[ ]*"\(.*\)"$/$ Original Message: \1/ + p +} +# +# The .msg file contains, other then the .po file, only the translations +# but each given a unique ID. Starting from 1 and incrementing by 1 for +# each message we assign them to the messages. +# It is important that the .po file used to generate the cat-id-tbl.c file +# (with po-to-tbl) is the same as the one used here. (At least the order +# of declarations must not be changed.) +# +/^msgstr/ { + s/msgstr[ ]*"\(.*\)"/\1/ + x +# The following nice solution is by +# Bruno <Haible@ma2s2.mathematik.uni-karlsruhe.de> + td +# Increment a decimal number in pattern space. +# First hide trailing `9' digits. + :d + s/9\(_*\)$/_\1/ + td +# Assure at least one digit is available. + s/^\(_*\)$/0\1/ +# Increment the last digit. + s/8\(_*\)$/9\1/ + s/7\(_*\)$/8\1/ + s/6\(_*\)$/7\1/ + s/5\(_*\)$/6\1/ + s/4\(_*\)$/5\1/ + s/3\(_*\)$/4\1/ + s/2\(_*\)$/3\1/ + s/1\(_*\)$/2\1/ + s/0\(_*\)$/1\1/ +# Convert the hidden `9' digits to `0's. + s/_/0/g + x +# Bring the line in the format `<number> <message>' + G + s/^[^\n]*$/& / + s/\(.*\)\n\([0-9]*\)/\2 \1/ +# Clear flag from last substitution. + tb +# Append the next line. + :b + N +# Look whether second part is a continuation line. + s/\(.*\n\)"\(.*\)"/\1\2/ +# Yes, then branch. + ta + P + D +# Note that `D' includes a jump to the start!! +# We found a continuation line. But before printing insert '\'. + :a + s/\(.*\)\(\n.*\)/\1\\\2/ + P +# We cannot use the sed command `D' here + s/.*\n\(.*\)/\1/ + tb +} +d diff --git a/source3/po/Makefile.in b/source3/po/Makefile.in new file mode 100644 index 0000000000..8484546594 --- /dev/null +++ b/source3/po/Makefile.in @@ -0,0 +1,252 @@ +# Makefile for program source directory in GNU NLS utilities package. +# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu> +# +# This file file be copied and used freely without restrictions. It can +# be used in projects which are not available under the GNU Public License +# but which still want to provide support for the GNU gettext functionality. +# Please note that the actual code is *not* freely available. + +PACKAGE = @PACKAGE@ +VERSION = @VERSION@ + +SHELL = /bin/sh +@SET_MAKE@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +datadir = $(prefix)/@DATADIRNAME@ +localedir = $(datadir)/locale +gnulocaledir = $(prefix)/share/locale +gettextsrcdir = $(prefix)/share/gettext/po +subdir = po + +INSTALL = @INSTALL@ +INSTALL_DATA = sh @INSTALL_DATA@ +MKINSTALLDIRS = $(top_srcdir)/script/@MKINSTALLDIRS@ + +CC = @CC@ +GENCAT = @GENCAT@ +GMSGFMT = PATH=../src:$$PATH @GMSGFMT@ +MSGFMT = @MSGFMT@ +XGETTEXT = PATH=../src:$$PATH @XGETTEXT@ +MSGMERGE = PATH=../src:$$PATH msgmerge + +DEFS = @DEFS@ +CFLAGS = @CFLAGS@ +CPPFLAGS = @CPPFLAGS@ + +INCLUDES = -I.. -I$(top_srcdir)/intl -I$(top_srcdir)/include + +COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) + +SOURCES = cat-id-tbl.c +POFILES = @POFILES@ +GMOFILES = @GMOFILES@ +DISTFILES = ChangeLog Makefile.in POTFILES.in $(PACKAGE).pot \ +stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES) + +POTFILES = \ + +CATALOGS = @CATALOGS@ +CATOBJEXT = @CATOBJEXT@ +INSTOBJEXT = @INSTOBJEXT@ + +.SUFFIXES: +.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat + +.c.o: + $(COMPILE) $< + +.po.pox: + $(MAKE) $(PACKAGE).pot + $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox + +.po.mo: + $(MSGFMT) -o $@ $< + +.po.gmo: + file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \ + && rm -f $$file && $(GMSGFMT) -o $$file $< + +.po.msg: + sed -f ../intl/po2msg.sed < $< > $*.msg + +.msg.cat: + rm -f $@ && $(GENCAT) $@ $*.msg + + +all: all-@USE_NLS@ + +all-yes: cat-id-tbl.c $(CATALOGS) +all-no: + +$(srcdir)/$(PACKAGE).pot: $(POTFILES) + @$(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \ + --add-comments --keyword=_ --keyword=N_ \ + --files-from=$(srcdir)/POTFILES.in \ + @&& test ! -f $(PACKAGE).po \ + || ( rm -f $(srcdir)/$(PACKAGE).pot \ + && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot ) + +$(srcdir)/cat-id-tbl.c: stamp-cat-id; @: +$(srcdir)/stamp-cat-id: $(PACKAGE).pot + rm -f cat-id-tbl.tmp + sed -f ../intl/po2tbl.sed $(srcdir)/$(PACKAGE).pot \ + | sed -e "s/@PACKAGE NAME@/$(PACKAGE)/" > cat-id-tbl.tmp + if cmp -s cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; then \ + rm cat-id-tbl.tmp; \ + else \ + echo cat-id-tbl.c changed; \ + rm -f $(srcdir)/cat-id-tbl.c; \ + mv cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; \ + fi + cd $(srcdir) && rm -f stamp-cat-id && echo timestamp > stamp-cat-id + + +install: install-exec install-data +install-exec: +install-data: install-data-@USE_NLS@ +install-data-no: all +install-data-yes: all install-data-basic +install-data-basic: + if test -r "$(MKINSTALLDIRS)"; then \ + $(MKINSTALLDIRS) $(datadir); \ + else \ + $(SHELL) $(top_srcdir)/mkinstalldirs $(datadir); \ + fi + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + case "$$cat" in \ + *.gmo) destdir=$(gnulocaledir);; \ + *) destdir=$(localedir);; \ + esac; \ + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ + dir=$$destdir/$$lang/LC_MESSAGES; \ + if test -r "$(MKINSTALLDIRS)"; then \ + $(MKINSTALLDIRS) $$dir; \ + else \ + $(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \ + fi; \ + if test -r $$cat; then \ + $(INSTALL_DATA) $$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \ + echo "installing $$cat as $$dir/$(PACKAGE)$(INSTOBJEXT)"; \ + else \ + $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \ + echo "installing $(srcdir)/$$cat as" \ + "$$dir/$(PACKAGE)$(INSTOBJEXT)"; \ + fi; \ + if test -r $$cat.m; then \ + $(INSTALL_DATA) $$cat.m $$dir/$(PACKAGE)$(INSTOBJEXT).m; \ + echo "installing $$cat.m as $$dir/$(PACKAGE)$(INSTOBJEXT).m"; \ + else \ + if test -r $(srcdir)/$$cat.m ; then \ + $(INSTALL_DATA) $(srcdir)/$$cat.m \ + $$dir/$(PACKAGE)$(INSTOBJEXT).m; \ + echo "installing $(srcdir)/$$cat as" \ + "$$dir/$(PACKAGE)$(INSTOBJEXT).m"; \ + else \ + true; \ + fi; \ + fi; \ + done + if test "$(PACKAGE)" = "gettext"; then \ + if test -r "$(MKINSTALLDIRS)"; then \ + $(MKINSTALLDIRS) $(gettextsrcdir); \ + else \ + $(SHELL) $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ + fi; \ + $(INSTALL_DATA) $(srcdir)/Makefile.in \ + $(gettextsrcdir)/Makefile.in; \ + else \ + : ; \ + fi + +# Define this as empty until I found a useful application. +installcheck: + +uninstall: + catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ + rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \ + rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \ + rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \ + rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \ + done + rm -f $(gettextsrcdir)/po-Makefile.in + +check: all + +cat-id-tbl.o: ../intl/libgettext.h + +dvi info tags TAGS ID: + +mostlyclean: + rm -f core core.* *.pox $(PACKAGE).po *.old.po cat-id-tbl.tmp + rm -fr *.o + rm -f *~ + +clean: mostlyclean + +distclean: clean + rm -f Makefile Makefile.in POTFILES *.mo *.cat *.cat.m + +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + rm -f $(GMOFILES) + +distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) +dist distdir: update-po $(DISTFILES) + dists="$(DISTFILES)"; \ + for file in $$dists; do \ + ln $(srcdir)/$$file $(distdir) 2> /dev/null \ + || cp -p $(srcdir)/$$file $(distdir); \ + done + +update-po: Makefile + $(MAKE) $(PACKAGE).pot + PATH=`pwd`/../src:$$PATH; \ + cd $(srcdir); \ + catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ + mv $$lang.po $$lang.old.po; \ + echo "$$lang:"; \ + if $(MSGMERGE) $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \ + rm -f $$lang.old.po; \ + else \ + echo "msgmerge for $$cat failed!"; \ + rm -f $$lang.po; \ + mv $$lang.old.po $$lang.po; \ + fi; \ + done + +POTFILES: POTFILES.in + ( if test 'x$(srcdir)' != 'x.'; then \ + posrcprefix='$(top_srcdir)/'; \ + else \ + posrcprefix="../"; \ + fi; \ + rm -f $@-t $@ \ + && (sed -e '/^#/d' -e '/^[ ]*$$/d' \ + -e "s@.*@ $$posrcprefix& \\\\@" < $(srcdir)/$@.in \ + | sed -e '$$s/\\$$//') > $@-t \ + && chmod a-w $@-t \ + && mv $@-t $@ ) + +Makefile: Makefile.in ../config.status POTFILES + cd .. \ + && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \ + $(SHELL) ./config.status + +# Tell versions [3.59,3.63) of GNU make not to export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/source3/po/Makefile.in.in b/source3/po/Makefile.in.in new file mode 100644 index 0000000000..2006e99743 --- /dev/null +++ b/source3/po/Makefile.in.in @@ -0,0 +1,252 @@ +# Makefile for program source directory in GNU NLS utilities package. +# Copyright (C) 1995, 1996, 1997 by Ulrich Drepper <drepper@gnu.ai.mit.edu> +# +# This file file be copied and used freely without restrictions. It can +# be used in projects which are not available under the GNU Public License +# but which still want to provide support for the GNU gettext functionality. +# Please note that the actual code is *not* freely available. + +PACKAGE = @PACKAGE@ +VERSION = @VERSION@ + +SHELL = /bin/sh +@SET_MAKE@ + +srcdir = @srcdir@ +top_srcdir = @top_srcdir@ +VPATH = @srcdir@ + +prefix = @prefix@ +exec_prefix = @exec_prefix@ +datadir = $(prefix)/@DATADIRNAME@ +localedir = $(datadir)/locale +gnulocaledir = $(prefix)/share/locale +gettextsrcdir = $(prefix)/share/gettext/po +subdir = po + +INSTALL = @INSTALL@ +INSTALL_DATA = @INSTALL_DATA@ +MKINSTALLDIRS = $(top_srcdir)/script/@MKINSTALLDIRS@ + +CC = @CC@ +GENCAT = @GENCAT@ +GMSGFMT = PATH=../src:$$PATH @GMSGFMT@ +MSGFMT = @MSGFMT@ +XGETTEXT = PATH=../src:$$PATH @XGETTEXT@ +MSGMERGE = PATH=../src:$$PATH msgmerge + +DEFS = @DEFS@ +CFLAGS = @CFLAGS@ +CPPFLAGS = @CPPFLAGS@ + +INCLUDES = -I.. -I$(top_srcdir)/intl -I$(top_srcdir)/include + +COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS) + +SOURCES = cat-id-tbl.c +POFILES = @POFILES@ +GMOFILES = @GMOFILES@ +DISTFILES = ChangeLog Makefile.in.in POTFILES.in $(PACKAGE).pot \ +stamp-cat-id $(POFILES) $(GMOFILES) $(SOURCES) + +POTFILES = \ + +CATALOGS = @CATALOGS@ +CATOBJEXT = @CATOBJEXT@ +INSTOBJEXT = @INSTOBJEXT@ + +.SUFFIXES: +.SUFFIXES: .c .o .po .pox .gmo .mo .msg .cat + +.c.o: + $(COMPILE) $< + +.po.pox: + $(MAKE) $(PACKAGE).pot + $(MSGMERGE) $< $(srcdir)/$(PACKAGE).pot -o $*.pox + +.po.mo: + $(MSGFMT) -o $@ $< + +.po.gmo: + file=$(srcdir)/`echo $* | sed 's,.*/,,'`.gmo \ + && rm -f $$file && $(GMSGFMT) -o $$file $< + +.po.msg: + sed -f ../intl/po2msg.sed < $< > $*.msg + +.msg.cat: + rm -f $@ && $(GENCAT) $@ $*.msg + + +all: all-@USE_NLS@ + +all-yes: cat-id-tbl.c $(CATALOGS) +all-no: + +$(srcdir)/$(PACKAGE).pot: $(POTFILES) + $(XGETTEXT) --default-domain=$(PACKAGE) --directory=$(top_srcdir) \ + --add-comments --keyword=_ --keyword=N_ \ + --files-from=$(srcdir)/POTFILES.in \ + && test ! -f $(PACKAGE).po \ + || ( rm -f $(srcdir)/$(PACKAGE).pot \ + && mv $(PACKAGE).po $(srcdir)/$(PACKAGE).pot ) + +$(srcdir)/cat-id-tbl.c: stamp-cat-id; @: +$(srcdir)/stamp-cat-id: $(PACKAGE).pot + rm -f cat-id-tbl.tmp + sed -f ../intl/po2tbl.sed $(srcdir)/$(PACKAGE).pot \ + | sed -e "s/@PACKAGE NAME@/$(PACKAGE)/" > cat-id-tbl.tmp + if cmp -s cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; then \ + rm cat-id-tbl.tmp; \ + else \ + echo cat-id-tbl.c changed; \ + rm -f $(srcdir)/cat-id-tbl.c; \ + mv cat-id-tbl.tmp $(srcdir)/cat-id-tbl.c; \ + fi + cd $(srcdir) && rm -f stamp-cat-id && echo timestamp > stamp-cat-id + + +install: install-exec install-data +install-exec: +install-data: install-data-@USE_NLS@ +install-data-no: all +install-data-yes: all install-data-basic +install-data-basic: + if test -r "$(MKINSTALLDIRS)"; then \ + $(MKINSTALLDIRS) $(datadir); \ + else \ + $(SHELL) $(top_srcdir)/mkinstalldirs $(datadir); \ + fi + @catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + case "$$cat" in \ + *.gmo) destdir=$(gnulocaledir);; \ + *) destdir=$(localedir);; \ + esac; \ + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ + dir=$$destdir/$$lang/LC_MESSAGES; \ + if test -r "$(MKINSTALLDIRS)"; then \ + $(MKINSTALLDIRS) $$dir; \ + else \ + $(SHELL) $(top_srcdir)/mkinstalldirs $$dir; \ + fi; \ + if test -r $$cat; then \ + $(INSTALL_DATA) $$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \ + echo "installing $$cat as $$dir/$(PACKAGE)$(INSTOBJEXT)"; \ + else \ + $(INSTALL_DATA) $(srcdir)/$$cat $$dir/$(PACKAGE)$(INSTOBJEXT); \ + echo "installing $(srcdir)/$$cat as" \ + "$$dir/$(PACKAGE)$(INSTOBJEXT)"; \ + fi; \ + if test -r $$cat.m; then \ + $(INSTALL_DATA) $$cat.m $$dir/$(PACKAGE)$(INSTOBJEXT).m; \ + echo "installing $$cat.m as $$dir/$(PACKAGE)$(INSTOBJEXT).m"; \ + else \ + if test -r $(srcdir)/$$cat.m ; then \ + $(INSTALL_DATA) $(srcdir)/$$cat.m \ + $$dir/$(PACKAGE)$(INSTOBJEXT).m; \ + echo "installing $(srcdir)/$$cat as" \ + "$$dir/$(PACKAGE)$(INSTOBJEXT).m"; \ + else \ + true; \ + fi; \ + fi; \ + done + if test "$(PACKAGE)" = "gettext"; then \ + if test -r "$(MKINSTALLDIRS)"; then \ + $(MKINSTALLDIRS) $(gettextsrcdir); \ + else \ + $(SHELL) $(top_srcdir)/mkinstalldirs $(gettextsrcdir); \ + fi; \ + $(INSTALL_DATA) $(srcdir)/Makefile.in.in \ + $(gettextsrcdir)/Makefile.in.in; \ + else \ + : ; \ + fi + +# Define this as empty until I found a useful application. +installcheck: + +uninstall: + catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ + rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \ + rm -f $(localedir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \ + rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT); \ + rm -f $(gnulocaledir)/$$lang/LC_MESSAGES/$(PACKAGE)$(INSTOBJEXT).m; \ + done + rm -f $(gettextsrcdir)/po-Makefile.in.in + +check: all + +cat-id-tbl.o: ../intl/libgettext.h + +dvi info tags TAGS ID: + +mostlyclean: + rm -f core core.* *.pox $(PACKAGE).po *.old.po cat-id-tbl.tmp + rm -fr *.o + rm -f *~ + +clean: mostlyclean + +distclean: clean + rm -f Makefile Makefile.in POTFILES *.mo *.cat *.cat.m + +maintainer-clean: distclean + @echo "This command is intended for maintainers to use;" + @echo "it deletes files that may require special tools to rebuild." + rm -f $(GMOFILES) + +distdir = ../$(PACKAGE)-$(VERSION)/$(subdir) +dist distdir: update-po $(DISTFILES) + dists="$(DISTFILES)"; \ + for file in $$dists; do \ + ln $(srcdir)/$$file $(distdir) 2> /dev/null \ + || cp -p $(srcdir)/$$file $(distdir); \ + done + +update-po: Makefile + $(MAKE) $(PACKAGE).pot + PATH=`pwd`/../src:$$PATH; \ + cd $(srcdir); \ + catalogs='$(CATALOGS)'; \ + for cat in $$catalogs; do \ + cat=`basename $$cat`; \ + lang=`echo $$cat | sed 's/\$(CATOBJEXT)$$//'`; \ + mv $$lang.po $$lang.old.po; \ + echo "$$lang:"; \ + if $(MSGMERGE) $$lang.old.po $(PACKAGE).pot -o $$lang.po; then \ + rm -f $$lang.old.po; \ + else \ + echo "msgmerge for $$cat failed!"; \ + rm -f $$lang.po; \ + mv $$lang.old.po $$lang.po; \ + fi; \ + done + +POTFILES: POTFILES.in + ( if test 'x$(srcdir)' != 'x.'; then \ + posrcprefix='$(top_srcdir)/'; \ + else \ + posrcprefix="../"; \ + fi; \ + rm -f $@-t $@ \ + && (sed -e '/^#/d' -e '/^[ ]*$$/d' \ + -e "s@.*@ $$posrcprefix& \\\\@" < $(srcdir)/$@.in \ + | sed -e '$$s/\\$$//') > $@-t \ + && chmod a-w $@-t \ + && mv $@-t $@ ) + +Makefile: Makefile.in.in ../config.status POTFILES + cd .. \ + && CONFIG_FILES=$(subdir)/$@.in CONFIG_HEADERS= \ + $(SHELL) ./config.status + +# Tell versions [3.59,3.63) of GNU make not to export all variables. +# Otherwise a system limit (for SysV at least) may be exceeded. +.NOEXPORT: diff --git a/source3/po/POTFILES.in b/source3/po/POTFILES.in new file mode 100644 index 0000000000..56eb3a6b77 --- /dev/null +++ b/source3/po/POTFILES.in @@ -0,0 +1,7 @@ +# List of source files containing translatable strings. +# (written by rkawa). + +web/swat.c +# web/cgi.c +web/statuspage.c +param/loadparm.c diff --git a/source3/po/cat-id-tbl.c b/source3/po/cat-id-tbl.c new file mode 100644 index 0000000000..33b8b13215 --- /dev/null +++ b/source3/po/cat-id-tbl.c @@ -0,0 +1,433 @@ +/* Automatically generated by po2tbl.sed from i18n_swat.pot. */ + +#if HAVE_CONFIG_H +# include <config.h> +#endif + +#include "libgettext.h" + +const struct _msg_ent _msg_tbl[] = { + {"", 1}, + {"ERROR: Can't open %s\n", 2}, + {"Help", 3}, + {"Set Default", 4}, + {"Logged in as <b>%s</b><p>\n", 5}, + {"Home", 6}, + {"Globals", 7}, + {"Shares", 8}, + {"Printers", 9}, + {"Status", 10}, + {"View Config", 11}, + {"Password Management", 12}, + {"Current Config", 13}, + {"Normal View", 14}, + {"Full View", 15}, + {"Global Variables", 16}, + {"Commit Changes", 17}, + {"Reset Values", 18}, + {"Advanced View", 19}, + {"Basic View", 20}, + {"Share Parameters", 21}, + {"Choose Share", 22}, + {"Delete Share", 23}, + {"Create Share", 24}, + {"password change in demo mode rejected\n", 25}, + {" Must specify \"User Name\" \n", 26}, + {" Must specify \"Old Password\" \n", 27}, + {" Must specify \"Remote Machine\" \n", 28}, + {" Must specify \"New, and Re-typed Passwords\" \n", 29}, + {" Re-typed password didn't match new password\n", 30}, + {" The passwd for '%s' has been changed. \n", 31}, + {" The passwd for '%s' has NOT been changed. \n", 32}, + {"Server Password Management", 33}, + {" User Name : ", 34}, + {" Old Password : ", 35}, + {" New Password : ", 36}, + {" Re-type New Password : ", 37}, + {"Change Password", 38}, + {"Add New User", 39}, + {"Delete User", 40}, + {"Disable User", 41}, + {"Enable User", 42}, + {"Client/Server Password Management", 43}, + {" Remote Machine : ", 44}, + {"Printer Parameters", 45}, + {"Important Note:", 46}, + {"Printer names marked with [*] in the Choose Printer drop-down box ", 47}, + {"are autoloaded printers from ", 48}, + {"Printcap Name", 49}, + {"Attempting to delete these printers from SWAT will have no effect.\n", 50}, + {"Choose Printer", 51}, + {"Delete Printer", 52}, + {"Create Printer", 53}, + {"DENY_NONE", 54}, + {"DENY_ALL ", 55}, + {"DENY_DOS ", 56}, + {"DENY_READ ", 57}, + {"DENY_WRITE ", 58}, + {"RDONLY ", 59}, + {"WRONLY ", 60}, + {"RDWR ", 61}, + {"EXCLUSIVE+BATCH ", 62}, + {"EXCLUSIVE ", 63}, + {"BATCH ", 64}, + {"LEVEL_II ", 65}, + {"NONE ", 66}, + {"Server Status", 67}, + {"Auto Refresh", 68}, + {"Refresh Interval: ", 69}, + {"Stop Refreshing", 70}, + {"version:", 71}, + {"smbd:", 72}, + {"running", 73}, + {"not running", 74}, + {"Stop smbd", 75}, + {"Start smbd", 76}, + {"Restart smbd", 77}, + {"nmbd:", 78}, + {"Stop nmbd", 79}, + {"Start nmbd", 80}, + {"Restart nmbd", 81}, + {"Active Connections", 82}, + {"PID", 83}, + {"Client", 84}, + {"IP address", 85}, + {"Date", 86}, + {"Kill", 87}, + {"Active Shares", 88}, + {"Share", 89}, + {"User", 90}, + {"Group", 91}, + {"Open Files", 92}, + {"Sharing", 93}, + {"R/W", 94}, + {"Oplock", 95}, + {"File", 96}, + {"Base Options", 97}, + {"dos charset", 98}, + {"unix charset", 99}, + {"display charset", 100}, + {"comment", 101}, + {"path", 102}, + {"directory", 103}, + {"workgroup", 104}, + {"netbios name", 105}, + {"netbios aliases", 106}, + {"netbios scope", 107}, + {"server string", 108}, + {"interfaces", 109}, + {"bind interfaces only", 110}, + {"Security Options", 111}, + {"security", 112}, + {"encrypt passwords", 113}, + {"update encrypted", 114}, + {"allow trusted domains", 115}, + {"alternate permissions", 116}, + {"hosts equiv", 117}, + {"min passwd length", 118}, + {"min password length", 119}, + {"map to guest", 120}, + {"null passwords", 121}, + {"obey pam restrictions", 122}, + {"password server", 123}, + {"smb passwd file", 124}, + {"private dir", 125}, + {"passdb module path", 126}, + {"root directory", 127}, + {"root dir", 128}, + {"root", 129}, + {"pam password change", 130}, + {"passwd program", 131}, + {"passwd chat", 132}, + {"passwd chat debug", 133}, + {"username map", 134}, + {"password level", 135}, + {"username level", 136}, + {"unix password sync", 137}, + {"restrict anonymous", 138}, + {"lanman auth", 139}, + {"ntlm auth", 140}, + {"plaintext to smbpasswd", 141}, + {"use rhosts", 142}, + {"username", 143}, + {"user", 144}, + {"users", 145}, + {"guest account", 146}, + {"invalid users", 147}, + {"valid users", 148}, + {"admin users", 149}, + {"read list", 150}, + {"write list", 151}, + {"printer admin", 152}, + {"force user", 153}, + {"force group", 154}, + {"group", 155}, + {"read only", 156}, + {"write ok", 157}, + {"writeable", 158}, + {"writable", 159}, + {"create mask", 160}, + {"create mode", 161}, + {"force create mode", 162}, + {"security mask", 163}, + {"force security mode", 164}, + {"directory mask", 165}, + {"directory mode", 166}, + {"force directory mode", 167}, + {"directory security mask", 168}, + {"force directory security mode", 169}, + {"inherit permissions", 170}, + {"guest only", 171}, + {"only guest", 172}, + {"guest ok", 173}, + {"public", 174}, + {"only user", 175}, + {"hosts allow", 176}, + {"allow hosts", 177}, + {"hosts deny", 178}, + {"deny hosts", 179}, + {"Secure Socket Layer Options", 180}, + {"ssl", 181}, + {"ssl hosts", 182}, + {"ssl hosts resign", 183}, + {"ssl CA certDir", 184}, + {"ssl CA certFile", 185}, + {"ssl server cert", 186}, + {"ssl server key", 187}, + {"ssl client cert", 188}, + {"ssl client key", 189}, + {"ssl require clientcert", 190}, + {"ssl require servercert", 191}, + {"ssl ciphers", 192}, + {"ssl version", 193}, + {"ssl compatibility", 194}, + {"Logging Options", 195}, + {"log level", 196}, + {"debuglevel", 197}, + {"syslog", 198}, + {"syslog only", 199}, + {"log file", 200}, + {"max log size", 201}, + {"timestamp logs", 202}, + {"debug timestamp", 203}, + {"debug hires timestamp", 204}, + {"debug pid", 205}, + {"debug uid", 206}, + {"Protocol Options", 207}, + {"protocol", 208}, + {"large readwrite", 209}, + {"max protocol", 210}, + {"min protocol", 211}, + {"unicode", 212}, + {"read bmpx", 213}, + {"read raw", 214}, + {"write raw", 215}, + {"nt smb support", 216}, + {"nt pipe support", 217}, + {"nt acl support", 218}, + {"announce version", 219}, + {"announce as", 220}, + {"max mux", 221}, + {"max xmit", 222}, + {"name resolve order", 223}, + {"max packet", 224}, + {"packet size", 225}, + {"max ttl", 226}, + {"max wins ttl", 227}, + {"min wins ttl", 228}, + {"time server", 229}, + {"Tuning Options", 230}, + {"change notify timeout", 231}, + {"deadtime", 232}, + {"getwd cache", 233}, + {"keepalive", 234}, + {"lpq cache time", 235}, + {"max smbd processes", 236}, + {"max connections", 237}, + {"paranoid server security", 238}, + {"max disk size", 239}, + {"max open files", 240}, + {"min print space", 241}, + {"read size", 242}, + {"socket options", 243}, + {"stat cache size", 244}, + {"strict allocate", 245}, + {"strict sync", 246}, + {"sync always", 247}, + {"use mmap", 248}, + {"hostname lookups", 249}, + {"write cache size", 250}, + {"Printing Options", 251}, + {"total print jobs", 252}, + {"max print jobs", 253}, + {"load printers", 254}, + {"printcap name", 255}, + {"printcap", 256}, + {"printable", 257}, + {"print ok", 258}, + {"postscript", 259}, + {"printing", 260}, + {"print command", 261}, + {"disable spoolss", 262}, + {"lpq command", 263}, + {"lprm command", 264}, + {"lppause command", 265}, + {"lpresume command", 266}, + {"queuepause command", 267}, + {"queueresume command", 268}, + {"enumports command", 269}, + {"addprinter command", 270}, + {"deleteprinter command", 271}, + {"show add printer wizard", 272}, + {"os2 driver map", 273}, + {"printer name", 274}, + {"printer", 275}, + {"use client driver", 276}, + {"printer driver", 277}, + {"printer driver file", 278}, + {"printer driver location", 279}, + {"Filename Handling", 280}, + {"strip dot", 281}, + {"mangled stack", 282}, + {"default case", 283}, + {"case sensitive", 284}, + {"casesignames", 285}, + {"preserve case", 286}, + {"short preserve case", 287}, + {"mangle case", 288}, + {"mangling char", 289}, + {"hide dot files", 290}, + {"hide unreadable", 291}, + {"delete veto files", 292}, + {"veto files", 293}, + {"hide files", 294}, + {"veto oplock files", 295}, + {"map system", 296}, + {"map hidden", 297}, + {"map archive", 298}, + {"mangled names", 299}, + {"mangled map", 300}, + {"stat cache", 301}, + {"Domain Options", 302}, + {"domain admin group", 303}, + {"domain guest group", 304}, + {"groupname map", 305}, + {"machine password timeout", 306}, + {"Logon Options", 307}, + {"add user script", 308}, + {"delete user script", 309}, + {"add group script", 310}, + {"delete group script", 311}, + {"add user to group script", 312}, + {"delete user from group script", 313}, + {"add machine script", 314}, + {"shutdown script", 315}, + {"abort shutdown script", 316}, + {"logon script", 317}, + {"logon path", 318}, + {"logon drive", 319}, + {"logon home", 320}, + {"domain logons", 321}, + {"Browse Options", 322}, + {"os level", 323}, + {"lm announce", 324}, + {"lm interval", 325}, + {"preferred master", 326}, + {"prefered master", 327}, + {"local master", 328}, + {"domain master", 329}, + {"browse list", 330}, + {"browseable", 331}, + {"browsable", 332}, + {"enhanced browsing", 333}, + {"WINS Options", 334}, + {"dns proxy", 335}, + {"wins proxy", 336}, + {"wins server", 337}, + {"wins support", 338}, + {"wins hook", 339}, + {"Locking Options", 340}, + {"blocking locks", 341}, + {"fake oplocks", 342}, + {"kernel oplocks", 343}, + {"locking", 344}, + {"oplocks", 345}, + {"level2 oplocks", 346}, + {"oplock break wait time", 347}, + {"oplock contention limit", 348}, + {"posix locking", 349}, + {"strict locking", 350}, + {"share modes", 351}, + {"Ldap Options", 352}, + {"ldap server", 353}, + {"ldap port", 354}, + {"ldap suffix", 355}, + {"ldap filter", 356}, + {"ldap root", 357}, + {"ldap root passwd", 358}, + {"Miscellaneous Options", 359}, + {"add share command", 360}, + {"change share command", 361}, + {"delete share command", 362}, + {"config file", 363}, + {"preload", 364}, + {"auto services", 365}, + {"lock dir", 366}, + {"lock directory", 367}, + {"utmp directory", 368}, + {"wtmp directory", 369}, + {"utmp", 370}, + {"default service", 371}, + {"default", 372}, + {"message command", 373}, + {"dfree command", 374}, + {"remote announce", 375}, + {"remote browse sync", 376}, + {"socket address", 377}, + {"homedir map", 378}, + {"time offset", 379}, + {"NIS homedir", 380}, + {"-valid", 381}, + {"copy", 382}, + {"include", 383}, + {"exec", 384}, + {"preexec", 385}, + {"preexec close", 386}, + {"postexec", 387}, + {"root preexec", 388}, + {"root preexec close", 389}, + {"root postexec", 390}, + {"available", 391}, + {"volume", 392}, + {"fstype", 393}, + {"set directory", 394}, + {"source environment", 395}, + {"wide links", 396}, + {"follow symlinks", 397}, + {"dont descend", 398}, + {"magic script", 399}, + {"magic output", 400}, + {"delete readonly", 401}, + {"dos filemode", 402}, + {"dos filetimes", 403}, + {"dos filetime resolution", 404}, + {"fake directory create times", 405}, + {"panic action", 406}, + {"hide local users", 407}, + {"VFS options", 408}, + {"vfs object", 409}, + {"vfs options", 410}, + {"msdfs root", 411}, + {"host msdfs", 412}, + {"Winbind options", 413}, + {"winbind uid", 414}, + {"winbind gid", 415}, + {"template homedir", 416}, + {"template shell", 417}, + {"winbind separator", 418}, + {"winbind cache time", 419}, + {"winbind enum users", 420}, + {"winbind enum groups", 421}, +}; + +int _msg_tbl_length = 421; diff --git a/source3/po/en.gmo b/source3/po/en.gmo Binary files differnew file mode 100644 index 0000000000..4818a4a3a8 --- /dev/null +++ b/source3/po/en.gmo diff --git a/source3/po/en.po b/source3/po/en.po new file mode 100644 index 0000000000..2f78cb835e --- /dev/null +++ b/source3/po/en.po @@ -0,0 +1,1707 @@ +# English messages for international release of SWAT. +# Copyright (C) 2001 Free Software Foundation, Inc. +# TAKAHASHI Motonobu <monyo@samba.org>, 2001. +msgid "" +msgstr "" +"Project-Id-Version: i18n_swat \n" +"POT-Creation-Date: 2001-09-20 20:29+0900\n" +"PO-Revision-Date: 2000-02-08 12:48+09:00\n" +"Last-Translator: TAKAHASHI Motonobu <monyo@samba.gr.jp>\n" +"Language-Team: (Samba Team) <samba-technical@samba.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=US-ASCII\n" +"Content-Transfer-Encoding: \n" + +#: web/swat.c:120 +#, c-format +msgid "ERROR: Can't open %s\n" +msgstr "" + +#. +#. str = stripspace(parm->label); +#. strlower (str); //monyo +#. d_printf("<tr><td><A HREF=\"/swat/help/smb.conf.5.html#%s\" target=\"docs\">%s</A> %s</td><td>", +#. str, _("Help"), parm->label); +#. +#: web/swat.c:211 +msgid "Help" +msgstr "" + +#: web/swat.c:217 web/swat.c:231 web/swat.c:246 web/swat.c:254 web/swat.c:263 +#: web/swat.c:272 web/swat.c:278 web/swat.c:284 web/swat.c:297 +msgid "Set Default" +msgstr "" + +#: web/swat.c:502 +#, c-format +msgid "Logged in as <b>%s</b><p>\n" +msgstr "" + +#: web/swat.c:505 +msgid "Home" +msgstr "" + +#: web/swat.c:507 +msgid "Globals" +msgstr "" + +#: web/swat.c:508 +msgid "Shares" +msgstr "" + +#: web/swat.c:509 +msgid "Printers" +msgstr "" + +#: web/swat.c:512 +msgid "Status" +msgstr "" + +#: web/swat.c:513 +msgid "View Config" +msgstr "" + +#: web/swat.c:515 +msgid "Password Management" +msgstr "" + +#: web/swat.c:539 +msgid "Current Config" +msgstr "" + +#: web/swat.c:543 +msgid "Normal View" +msgstr "" + +#: web/swat.c:545 +msgid "Full View" +msgstr "" + +#: web/swat.c:561 +msgid "Global Variables" +msgstr "" + +#: web/swat.c:575 web/swat.c:671 web/swat.c:1014 +msgid "Commit Changes" +msgstr "" + +#: web/swat.c:579 web/swat.c:674 web/swat.c:1016 +msgid "Reset Values" +msgstr "" + +#: web/swat.c:581 web/swat.c:676 web/swat.c:1018 +msgid "Advanced View" +msgstr "" + +#: web/swat.c:583 web/swat.c:678 web/swat.c:1020 +msgid "Basic View" +msgstr "" + +#: web/swat.c:613 +msgid "Share Parameters" +msgstr "" + +#: web/swat.c:642 +msgid "Choose Share" +msgstr "" + +#: web/swat.c:656 +msgid "Delete Share" +msgstr "" + +#: web/swat.c:663 +msgid "Create Share" +msgstr "" + +#: web/swat.c:708 +msgid "password change in demo mode rejected\n" +msgstr "" + +#: web/swat.c:747 +msgid " Must specify \"User Name\" \n" +msgstr "" + +#: web/swat.c:763 +msgid " Must specify \"Old Password\" \n" +msgstr "" + +#: web/swat.c:769 +msgid " Must specify \"Remote Machine\" \n" +msgstr "" + +#: web/swat.c:776 +msgid " Must specify \"New, and Re-typed Passwords\" \n" +msgstr "" + +#: web/swat.c:782 +msgid " Re-typed password didn't match new password\n" +msgstr "" + +#: web/swat.c:812 +#, c-format +msgid " The passwd for '%s' has been changed. \n" +msgstr "" + +#: web/swat.c:814 +#, c-format +msgid " The passwd for '%s' has NOT been changed. \n" +msgstr "" + +#: web/swat.c:838 +msgid "Server Password Management" +msgstr "" + +#. +#. * Create all the dialog boxes for data collection +#. +#: web/swat.c:847 web/swat.c:894 +msgid " User Name : " +msgstr "" + +#: web/swat.c:850 web/swat.c:896 +msgid " Old Password : " +msgstr "" + +#: web/swat.c:853 web/swat.c:898 +msgid " New Password : " +msgstr "" + +#: web/swat.c:855 web/swat.c:900 +msgid " Re-type New Password : " +msgstr "" + +#: web/swat.c:863 web/swat.c:911 +msgid "Change Password" +msgstr "" + +#: web/swat.c:866 +msgid "Add New User" +msgstr "" + +#: web/swat.c:868 +msgid "Delete User" +msgstr "" + +#: web/swat.c:870 +msgid "Disable User" +msgstr "" + +#: web/swat.c:872 +msgid "Enable User" +msgstr "" + +#: web/swat.c:885 +msgid "Client/Server Password Management" +msgstr "" + +#: web/swat.c:902 +msgid " Remote Machine : " +msgstr "" + +#: web/swat.c:940 +msgid "Printer Parameters" +msgstr "" + +#: web/swat.c:942 +msgid "Important Note:" +msgstr "" + +#: web/swat.c:943 +msgid "Printer names marked with [*] in the Choose Printer drop-down box " +msgstr "" + +#: web/swat.c:944 +msgid "are autoloaded printers from " +msgstr "" + +#: web/swat.c:945 +msgid "Printcap Name" +msgstr "" + +#: web/swat.c:946 +msgid "Attempting to delete these printers from SWAT will have no effect.\n" +msgstr "" + +#: web/swat.c:980 +msgid "Choose Printer" +msgstr "" + +#: web/swat.c:999 +msgid "Delete Printer" +msgstr "" + +#: web/swat.c:1006 +msgid "Create Printer" +msgstr "" + +#: web/statuspage.c:40 +msgid "DENY_NONE" +msgstr "" + +#: web/statuspage.c:41 +msgid "DENY_ALL " +msgstr "" + +#: web/statuspage.c:42 +msgid "DENY_DOS " +msgstr "" + +#: web/statuspage.c:43 +msgid "DENY_READ " +msgstr "" + +#: web/statuspage.c:44 +msgid "DENY_WRITE " +msgstr "" + +#: web/statuspage.c:50 +msgid "RDONLY " +msgstr "" + +#: web/statuspage.c:51 +msgid "WRONLY " +msgstr "" + +#: web/statuspage.c:52 +msgid "RDWR " +msgstr "" + +#: web/statuspage.c:60 +msgid "EXCLUSIVE+BATCH " +msgstr "" + +#: web/statuspage.c:62 +msgid "EXCLUSIVE " +msgstr "" + +#: web/statuspage.c:64 +msgid "BATCH " +msgstr "" + +#: web/statuspage.c:66 +msgid "LEVEL_II " +msgstr "" + +#: web/statuspage.c:68 +msgid "NONE " +msgstr "" + +#: web/statuspage.c:195 +msgid "Server Status" +msgstr "" + +#: web/statuspage.c:200 +msgid "Auto Refresh" +msgstr "" + +#: web/statuspage.c:201 web/statuspage.c:206 +msgid "Refresh Interval: " +msgstr "" + +#: web/statuspage.c:205 +msgid "Stop Refreshing" +msgstr "" + +#: web/statuspage.c:220 +msgid "version:" +msgstr "" + +#: web/statuspage.c:223 +msgid "smbd:" +msgstr "" + +#: web/statuspage.c:223 web/statuspage.c:235 +msgid "running" +msgstr "" + +#: web/statuspage.c:223 web/statuspage.c:235 +msgid "not running" +msgstr "" + +#: web/statuspage.c:226 +msgid "Stop smbd" +msgstr "" + +#: web/statuspage.c:228 +msgid "Start smbd" +msgstr "" + +#: web/statuspage.c:230 +msgid "Restart smbd" +msgstr "" + +#: web/statuspage.c:235 +msgid "nmbd:" +msgstr "" + +#: web/statuspage.c:238 +msgid "Stop nmbd" +msgstr "" + +#: web/statuspage.c:240 +msgid "Start nmbd" +msgstr "" + +#: web/statuspage.c:242 +msgid "Restart nmbd" +msgstr "" + +#: web/statuspage.c:249 +msgid "Active Connections" +msgstr "" + +#: web/statuspage.c:251 web/statuspage.c:264 web/statuspage.c:272 +msgid "PID" +msgstr "" + +#: web/statuspage.c:251 web/statuspage.c:264 +msgid "Client" +msgstr "" + +#: web/statuspage.c:251 +msgid "IP address" +msgstr "" + +#: web/statuspage.c:251 web/statuspage.c:264 web/statuspage.c:272 +msgid "Date" +msgstr "" + +#: web/statuspage.c:253 +msgid "Kill" +msgstr "" + +#: web/statuspage.c:261 +msgid "Active Shares" +msgstr "" + +#: web/statuspage.c:264 +msgid "Share" +msgstr "" + +#: web/statuspage.c:264 +msgid "User" +msgstr "" + +#: web/statuspage.c:264 +msgid "Group" +msgstr "" + +#: web/statuspage.c:270 +msgid "Open Files" +msgstr "" + +#: web/statuspage.c:272 +msgid "Sharing" +msgstr "" + +#: web/statuspage.c:272 +msgid "R/W" +msgstr "" + +#: web/statuspage.c:272 +msgid "Oplock" +msgstr "" + +#: web/statuspage.c:272 +msgid "File" +msgstr "" + +#: param/loadparm.c:641 +msgid "Base Options" +msgstr "" + +#: param/loadparm.c:643 +msgid "dos charset" +msgstr "" + +#: param/loadparm.c:644 +msgid "unix charset" +msgstr "" + +#: param/loadparm.c:645 +msgid "display charset" +msgstr "" + +#: param/loadparm.c:646 +msgid "comment" +msgstr "" + +#: param/loadparm.c:647 +msgid "path" +msgstr "" + +#: param/loadparm.c:648 +msgid "directory" +msgstr "" + +#: param/loadparm.c:649 +msgid "workgroup" +msgstr "" + +#: param/loadparm.c:650 +msgid "netbios name" +msgstr "" + +#: param/loadparm.c:651 +msgid "netbios aliases" +msgstr "" + +#: param/loadparm.c:652 +msgid "netbios scope" +msgstr "" + +#: param/loadparm.c:653 +msgid "server string" +msgstr "" + +#: param/loadparm.c:654 +msgid "interfaces" +msgstr "" + +#: param/loadparm.c:655 +msgid "bind interfaces only" +msgstr "" + +#: param/loadparm.c:657 +msgid "Security Options" +msgstr "" + +#: param/loadparm.c:659 +msgid "security" +msgstr "" + +#: param/loadparm.c:660 +msgid "encrypt passwords" +msgstr "" + +#: param/loadparm.c:661 +msgid "update encrypted" +msgstr "" + +#: param/loadparm.c:662 +msgid "allow trusted domains" +msgstr "" + +#: param/loadparm.c:663 +msgid "alternate permissions" +msgstr "" + +#: param/loadparm.c:664 +msgid "hosts equiv" +msgstr "" + +#: param/loadparm.c:665 +msgid "min passwd length" +msgstr "" + +#: param/loadparm.c:666 +msgid "min password length" +msgstr "" + +#: param/loadparm.c:667 +msgid "map to guest" +msgstr "" + +#: param/loadparm.c:668 +msgid "null passwords" +msgstr "" + +#: param/loadparm.c:669 +msgid "obey pam restrictions" +msgstr "" + +#: param/loadparm.c:670 +msgid "password server" +msgstr "" + +#: param/loadparm.c:671 +msgid "smb passwd file" +msgstr "" + +#: param/loadparm.c:672 +msgid "private dir" +msgstr "" + +#: param/loadparm.c:673 +msgid "passdb module path" +msgstr "" + +#: param/loadparm.c:674 +msgid "root directory" +msgstr "" + +#: param/loadparm.c:675 +msgid "root dir" +msgstr "" + +#: param/loadparm.c:676 +msgid "root" +msgstr "" + +#: param/loadparm.c:678 +msgid "pam password change" +msgstr "" + +#: param/loadparm.c:679 +msgid "passwd program" +msgstr "" + +#: param/loadparm.c:680 +msgid "passwd chat" +msgstr "" + +#: param/loadparm.c:681 +msgid "passwd chat debug" +msgstr "" + +#: param/loadparm.c:682 +msgid "username map" +msgstr "" + +#: param/loadparm.c:683 +msgid "password level" +msgstr "" + +#: param/loadparm.c:684 +msgid "username level" +msgstr "" + +#: param/loadparm.c:685 +msgid "unix password sync" +msgstr "" + +#: param/loadparm.c:686 +msgid "restrict anonymous" +msgstr "" + +#: param/loadparm.c:687 +msgid "lanman auth" +msgstr "" + +#: param/loadparm.c:688 +msgid "ntlm auth" +msgstr "" + +#: param/loadparm.c:689 +msgid "plaintext to smbpasswd" +msgstr "" + +#: param/loadparm.c:690 +msgid "use rhosts" +msgstr "" + +#: param/loadparm.c:692 +msgid "username" +msgstr "" + +#: param/loadparm.c:693 +msgid "user" +msgstr "" + +#: param/loadparm.c:694 +msgid "users" +msgstr "" + +#: param/loadparm.c:696 +msgid "guest account" +msgstr "" + +#: param/loadparm.c:697 +msgid "invalid users" +msgstr "" + +#: param/loadparm.c:698 +msgid "valid users" +msgstr "" + +#: param/loadparm.c:699 +msgid "admin users" +msgstr "" + +#: param/loadparm.c:700 +msgid "read list" +msgstr "" + +#: param/loadparm.c:701 +msgid "write list" +msgstr "" + +#: param/loadparm.c:702 +msgid "printer admin" +msgstr "" + +#: param/loadparm.c:703 +msgid "force user" +msgstr "" + +#: param/loadparm.c:704 +msgid "force group" +msgstr "" + +#: param/loadparm.c:705 +msgid "group" +msgstr "" + +#: param/loadparm.c:707 +msgid "read only" +msgstr "" + +#: param/loadparm.c:708 +msgid "write ok" +msgstr "" + +#: param/loadparm.c:709 +msgid "writeable" +msgstr "" + +#: param/loadparm.c:710 +msgid "writable" +msgstr "" + +#: param/loadparm.c:712 +msgid "create mask" +msgstr "" + +#: param/loadparm.c:713 +msgid "create mode" +msgstr "" + +#: param/loadparm.c:714 +msgid "force create mode" +msgstr "" + +#: param/loadparm.c:715 +msgid "security mask" +msgstr "" + +#: param/loadparm.c:716 +msgid "force security mode" +msgstr "" + +#: param/loadparm.c:717 +msgid "directory mask" +msgstr "" + +#: param/loadparm.c:718 +msgid "directory mode" +msgstr "" + +#: param/loadparm.c:719 +msgid "force directory mode" +msgstr "" + +#: param/loadparm.c:720 +msgid "directory security mask" +msgstr "" + +#: param/loadparm.c:721 +msgid "force directory security mode" +msgstr "" + +#: param/loadparm.c:722 +msgid "inherit permissions" +msgstr "" + +#: param/loadparm.c:723 +msgid "guest only" +msgstr "" + +#: param/loadparm.c:724 +msgid "only guest" +msgstr "" + +#: param/loadparm.c:726 +msgid "guest ok" +msgstr "" + +#: param/loadparm.c:727 +msgid "public" +msgstr "" + +#: param/loadparm.c:729 +msgid "only user" +msgstr "" + +#: param/loadparm.c:730 +msgid "hosts allow" +msgstr "" + +#: param/loadparm.c:731 +msgid "allow hosts" +msgstr "" + +#: param/loadparm.c:732 +msgid "hosts deny" +msgstr "" + +#: param/loadparm.c:733 +msgid "deny hosts" +msgstr "" + +#: param/loadparm.c:736 +msgid "Secure Socket Layer Options" +msgstr "" + +#: param/loadparm.c:737 +msgid "ssl" +msgstr "" + +#: param/loadparm.c:739 +msgid "ssl hosts" +msgstr "" + +#: param/loadparm.c:740 +msgid "ssl hosts resign" +msgstr "" + +#: param/loadparm.c:741 +msgid "ssl CA certDir" +msgstr "" + +#: param/loadparm.c:742 +msgid "ssl CA certFile" +msgstr "" + +#: param/loadparm.c:743 +msgid "ssl server cert" +msgstr "" + +#: param/loadparm.c:744 +msgid "ssl server key" +msgstr "" + +#: param/loadparm.c:745 +msgid "ssl client cert" +msgstr "" + +#: param/loadparm.c:746 +msgid "ssl client key" +msgstr "" + +#: param/loadparm.c:747 +msgid "ssl require clientcert" +msgstr "" + +#: param/loadparm.c:748 +msgid "ssl require servercert" +msgstr "" + +#: param/loadparm.c:749 +msgid "ssl ciphers" +msgstr "" + +#: param/loadparm.c:750 +msgid "ssl version" +msgstr "" + +#: param/loadparm.c:751 +msgid "ssl compatibility" +msgstr "" + +#: param/loadparm.c:754 +msgid "Logging Options" +msgstr "" + +#: param/loadparm.c:755 +msgid "log level" +msgstr "" + +#: param/loadparm.c:756 +msgid "debuglevel" +msgstr "" + +#: param/loadparm.c:757 +msgid "syslog" +msgstr "" + +#: param/loadparm.c:758 +msgid "syslog only" +msgstr "" + +#: param/loadparm.c:759 +msgid "log file" +msgstr "" + +#: param/loadparm.c:761 +msgid "max log size" +msgstr "" + +#: param/loadparm.c:762 +msgid "timestamp logs" +msgstr "" + +#: param/loadparm.c:763 +msgid "debug timestamp" +msgstr "" + +#: param/loadparm.c:764 +msgid "debug hires timestamp" +msgstr "" + +#: param/loadparm.c:765 +msgid "debug pid" +msgstr "" + +#: param/loadparm.c:766 +msgid "debug uid" +msgstr "" + +#: param/loadparm.c:768 +msgid "Protocol Options" +msgstr "" + +#: param/loadparm.c:770 +msgid "protocol" +msgstr "" + +#: param/loadparm.c:771 +msgid "large readwrite" +msgstr "" + +#: param/loadparm.c:772 +msgid "max protocol" +msgstr "" + +#: param/loadparm.c:773 +msgid "min protocol" +msgstr "" + +#: param/loadparm.c:774 +msgid "unicode" +msgstr "" + +#: param/loadparm.c:775 +msgid "read bmpx" +msgstr "" + +#: param/loadparm.c:776 +msgid "read raw" +msgstr "" + +#: param/loadparm.c:777 +msgid "write raw" +msgstr "" + +#: param/loadparm.c:779 +msgid "nt smb support" +msgstr "" + +#: param/loadparm.c:780 +msgid "nt pipe support" +msgstr "" + +#: param/loadparm.c:781 +msgid "nt acl support" +msgstr "" + +#: param/loadparm.c:782 +msgid "announce version" +msgstr "" + +#: param/loadparm.c:783 +msgid "announce as" +msgstr "" + +#: param/loadparm.c:784 +msgid "max mux" +msgstr "" + +#: param/loadparm.c:785 +msgid "max xmit" +msgstr "" + +#: param/loadparm.c:787 +msgid "name resolve order" +msgstr "" + +#: param/loadparm.c:788 +msgid "max packet" +msgstr "" + +#: param/loadparm.c:789 +msgid "packet size" +msgstr "" + +#: param/loadparm.c:790 +msgid "max ttl" +msgstr "" + +#: param/loadparm.c:791 +msgid "max wins ttl" +msgstr "" + +#: param/loadparm.c:792 +msgid "min wins ttl" +msgstr "" + +#: param/loadparm.c:793 +msgid "time server" +msgstr "" + +#: param/loadparm.c:795 +msgid "Tuning Options" +msgstr "" + +#: param/loadparm.c:797 +msgid "change notify timeout" +msgstr "" + +#: param/loadparm.c:798 +msgid "deadtime" +msgstr "" + +#: param/loadparm.c:799 +msgid "getwd cache" +msgstr "" + +#: param/loadparm.c:800 +msgid "keepalive" +msgstr "" + +#: param/loadparm.c:802 +msgid "lpq cache time" +msgstr "" + +#: param/loadparm.c:803 +msgid "max smbd processes" +msgstr "" + +#: param/loadparm.c:804 +msgid "max connections" +msgstr "" + +#: param/loadparm.c:805 +msgid "paranoid server security" +msgstr "" + +#: param/loadparm.c:806 +msgid "max disk size" +msgstr "" + +#: param/loadparm.c:807 +msgid "max open files" +msgstr "" + +#: param/loadparm.c:808 +msgid "min print space" +msgstr "" + +#: param/loadparm.c:809 +msgid "read size" +msgstr "" + +#: param/loadparm.c:811 +msgid "socket options" +msgstr "" + +#: param/loadparm.c:812 +msgid "stat cache size" +msgstr "" + +#: param/loadparm.c:813 +msgid "strict allocate" +msgstr "" + +#: param/loadparm.c:814 +msgid "strict sync" +msgstr "" + +#: param/loadparm.c:815 +msgid "sync always" +msgstr "" + +#: param/loadparm.c:816 +msgid "use mmap" +msgstr "" + +#: param/loadparm.c:817 +msgid "hostname lookups" +msgstr "" + +#: param/loadparm.c:818 +msgid "write cache size" +msgstr "" + +#: param/loadparm.c:820 +msgid "Printing Options" +msgstr "" + +#: param/loadparm.c:822 +msgid "total print jobs" +msgstr "" + +#: param/loadparm.c:823 +msgid "max print jobs" +msgstr "" + +#: param/loadparm.c:824 +msgid "load printers" +msgstr "" + +#: param/loadparm.c:825 +msgid "printcap name" +msgstr "" + +#: param/loadparm.c:826 +msgid "printcap" +msgstr "" + +#: param/loadparm.c:827 +msgid "printable" +msgstr "" + +#: param/loadparm.c:828 +msgid "print ok" +msgstr "" + +#: param/loadparm.c:829 +msgid "postscript" +msgstr "" + +#: param/loadparm.c:830 +msgid "printing" +msgstr "" + +#: param/loadparm.c:831 +msgid "print command" +msgstr "" + +#: param/loadparm.c:832 +msgid "disable spoolss" +msgstr "" + +#: param/loadparm.c:833 +msgid "lpq command" +msgstr "" + +#: param/loadparm.c:834 +msgid "lprm command" +msgstr "" + +#: param/loadparm.c:835 +msgid "lppause command" +msgstr "" + +#: param/loadparm.c:836 +msgid "lpresume command" +msgstr "" + +#: param/loadparm.c:837 +msgid "queuepause command" +msgstr "" + +#: param/loadparm.c:838 +msgid "queueresume command" +msgstr "" + +#: param/loadparm.c:840 +msgid "enumports command" +msgstr "" + +#: param/loadparm.c:841 +msgid "addprinter command" +msgstr "" + +#: param/loadparm.c:842 +msgid "deleteprinter command" +msgstr "" + +#: param/loadparm.c:843 +msgid "show add printer wizard" +msgstr "" + +#: param/loadparm.c:844 +msgid "os2 driver map" +msgstr "" + +#: param/loadparm.c:846 +msgid "printer name" +msgstr "" + +#: param/loadparm.c:847 +msgid "printer" +msgstr "" + +#: param/loadparm.c:848 +msgid "use client driver" +msgstr "" + +#: param/loadparm.c:849 +msgid "printer driver" +msgstr "" + +#: param/loadparm.c:850 +msgid "printer driver file" +msgstr "" + +#: param/loadparm.c:851 +msgid "printer driver location" +msgstr "" + +#: param/loadparm.c:853 +msgid "Filename Handling" +msgstr "" + +#: param/loadparm.c:854 +msgid "strip dot" +msgstr "" + +#: param/loadparm.c:856 +msgid "mangled stack" +msgstr "" + +#: param/loadparm.c:857 +msgid "default case" +msgstr "" + +#: param/loadparm.c:858 +msgid "case sensitive" +msgstr "" + +#: param/loadparm.c:859 +msgid "casesignames" +msgstr "" + +#: param/loadparm.c:860 +msgid "preserve case" +msgstr "" + +#: param/loadparm.c:861 +msgid "short preserve case" +msgstr "" + +#: param/loadparm.c:862 +msgid "mangle case" +msgstr "" + +#: param/loadparm.c:863 +msgid "mangling char" +msgstr "" + +#: param/loadparm.c:864 +msgid "hide dot files" +msgstr "" + +#: param/loadparm.c:865 +msgid "hide unreadable" +msgstr "" + +#: param/loadparm.c:866 +msgid "delete veto files" +msgstr "" + +#: param/loadparm.c:867 +msgid "veto files" +msgstr "" + +#: param/loadparm.c:868 +msgid "hide files" +msgstr "" + +#: param/loadparm.c:869 +msgid "veto oplock files" +msgstr "" + +#: param/loadparm.c:870 +msgid "map system" +msgstr "" + +#: param/loadparm.c:871 +msgid "map hidden" +msgstr "" + +#: param/loadparm.c:872 +msgid "map archive" +msgstr "" + +#: param/loadparm.c:873 +msgid "mangled names" +msgstr "" + +#: param/loadparm.c:874 +msgid "mangled map" +msgstr "" + +#: param/loadparm.c:875 +msgid "stat cache" +msgstr "" + +#: param/loadparm.c:877 +msgid "Domain Options" +msgstr "" + +#: param/loadparm.c:879 +msgid "domain admin group" +msgstr "" + +#: param/loadparm.c:880 +msgid "domain guest group" +msgstr "" + +#: param/loadparm.c:883 +msgid "groupname map" +msgstr "" + +#: param/loadparm.c:886 +msgid "machine password timeout" +msgstr "" + +#: param/loadparm.c:888 +msgid "Logon Options" +msgstr "" + +#: param/loadparm.c:890 +msgid "add user script" +msgstr "" + +#: param/loadparm.c:891 +msgid "delete user script" +msgstr "" + +#: param/loadparm.c:892 +msgid "add group script" +msgstr "" + +#: param/loadparm.c:893 +msgid "delete group script" +msgstr "" + +#: param/loadparm.c:894 +msgid "add user to group script" +msgstr "" + +#: param/loadparm.c:895 +msgid "delete user from group script" +msgstr "" + +#: param/loadparm.c:896 +msgid "add machine script" +msgstr "" + +#: param/loadparm.c:897 +msgid "shutdown script" +msgstr "" + +#: param/loadparm.c:898 +msgid "abort shutdown script" +msgstr "" + +#: param/loadparm.c:900 +msgid "logon script" +msgstr "" + +#: param/loadparm.c:901 +msgid "logon path" +msgstr "" + +#: param/loadparm.c:902 +msgid "logon drive" +msgstr "" + +#: param/loadparm.c:903 +msgid "logon home" +msgstr "" + +#: param/loadparm.c:904 +msgid "domain logons" +msgstr "" + +#: param/loadparm.c:906 +msgid "Browse Options" +msgstr "" + +#: param/loadparm.c:908 +msgid "os level" +msgstr "" + +#: param/loadparm.c:909 +msgid "lm announce" +msgstr "" + +#: param/loadparm.c:910 +msgid "lm interval" +msgstr "" + +#: param/loadparm.c:911 +msgid "preferred master" +msgstr "" + +#: param/loadparm.c:912 +msgid "prefered master" +msgstr "" + +#: param/loadparm.c:913 +msgid "local master" +msgstr "" + +#: param/loadparm.c:914 +msgid "domain master" +msgstr "" + +#: param/loadparm.c:915 +msgid "browse list" +msgstr "" + +#: param/loadparm.c:916 +msgid "browseable" +msgstr "" + +#: param/loadparm.c:917 +msgid "browsable" +msgstr "" + +#: param/loadparm.c:918 +msgid "enhanced browsing" +msgstr "" + +#: param/loadparm.c:920 +msgid "WINS Options" +msgstr "" + +#: param/loadparm.c:921 +msgid "dns proxy" +msgstr "" + +#: param/loadparm.c:922 +msgid "wins proxy" +msgstr "" + +#: param/loadparm.c:924 +msgid "wins server" +msgstr "" + +#: param/loadparm.c:925 +msgid "wins support" +msgstr "" + +#: param/loadparm.c:926 +msgid "wins hook" +msgstr "" + +#: param/loadparm.c:928 +msgid "Locking Options" +msgstr "" + +#: param/loadparm.c:930 +msgid "blocking locks" +msgstr "" + +#: param/loadparm.c:931 +msgid "fake oplocks" +msgstr "" + +#: param/loadparm.c:932 +msgid "kernel oplocks" +msgstr "" + +#: param/loadparm.c:933 +msgid "locking" +msgstr "" + +#: param/loadparm.c:935 +msgid "oplocks" +msgstr "" + +#: param/loadparm.c:936 +msgid "level2 oplocks" +msgstr "" + +#: param/loadparm.c:937 +msgid "oplock break wait time" +msgstr "" + +#: param/loadparm.c:938 +msgid "oplock contention limit" +msgstr "" + +#: param/loadparm.c:939 +msgid "posix locking" +msgstr "" + +#: param/loadparm.c:940 +msgid "strict locking" +msgstr "" + +#: param/loadparm.c:941 +msgid "share modes" +msgstr "" + +#: param/loadparm.c:944 +msgid "Ldap Options" +msgstr "" + +#: param/loadparm.c:946 +msgid "ldap server" +msgstr "" + +#: param/loadparm.c:947 +msgid "ldap port" +msgstr "" + +#: param/loadparm.c:948 +msgid "ldap suffix" +msgstr "" + +#: param/loadparm.c:949 +msgid "ldap filter" +msgstr "" + +#: param/loadparm.c:950 +msgid "ldap root" +msgstr "" + +#: param/loadparm.c:951 +msgid "ldap root passwd" +msgstr "" + +#: param/loadparm.c:954 +msgid "Miscellaneous Options" +msgstr "" + +#: param/loadparm.c:955 +msgid "add share command" +msgstr "" + +#: param/loadparm.c:956 +msgid "change share command" +msgstr "" + +#: param/loadparm.c:957 +msgid "delete share command" +msgstr "" + +#: param/loadparm.c:959 +msgid "config file" +msgstr "" + +#: param/loadparm.c:960 +msgid "preload" +msgstr "" + +#: param/loadparm.c:961 +msgid "auto services" +msgstr "" + +#: param/loadparm.c:962 +msgid "lock dir" +msgstr "" + +#: param/loadparm.c:963 +msgid "lock directory" +msgstr "" + +#: param/loadparm.c:965 +msgid "utmp directory" +msgstr "" + +#: param/loadparm.c:966 +msgid "wtmp directory" +msgstr "" + +#: param/loadparm.c:967 +msgid "utmp" +msgstr "" + +#: param/loadparm.c:970 +msgid "default service" +msgstr "" + +#: param/loadparm.c:971 +msgid "default" +msgstr "" + +#: param/loadparm.c:972 +msgid "message command" +msgstr "" + +#: param/loadparm.c:973 +msgid "dfree command" +msgstr "" + +#: param/loadparm.c:974 +msgid "remote announce" +msgstr "" + +#: param/loadparm.c:975 +msgid "remote browse sync" +msgstr "" + +#: param/loadparm.c:976 +msgid "socket address" +msgstr "" + +#: param/loadparm.c:977 +msgid "homedir map" +msgstr "" + +#: param/loadparm.c:978 +msgid "time offset" +msgstr "" + +#: param/loadparm.c:979 +msgid "NIS homedir" +msgstr "" + +#: param/loadparm.c:980 +msgid "-valid" +msgstr "" + +#: param/loadparm.c:982 +msgid "copy" +msgstr "" + +#: param/loadparm.c:983 +msgid "include" +msgstr "" + +#: param/loadparm.c:984 +msgid "exec" +msgstr "" + +#: param/loadparm.c:985 +msgid "preexec" +msgstr "" + +#: param/loadparm.c:987 +msgid "preexec close" +msgstr "" + +#: param/loadparm.c:988 +msgid "postexec" +msgstr "" + +#: param/loadparm.c:989 +msgid "root preexec" +msgstr "" + +#: param/loadparm.c:990 +msgid "root preexec close" +msgstr "" + +#: param/loadparm.c:991 +msgid "root postexec" +msgstr "" + +#: param/loadparm.c:992 +msgid "available" +msgstr "" + +#: param/loadparm.c:993 +msgid "volume" +msgstr "" + +#: param/loadparm.c:994 +msgid "fstype" +msgstr "" + +#: param/loadparm.c:995 +msgid "set directory" +msgstr "" + +#: param/loadparm.c:996 +msgid "source environment" +msgstr "" + +#: param/loadparm.c:997 +msgid "wide links" +msgstr "" + +#: param/loadparm.c:998 +msgid "follow symlinks" +msgstr "" + +#: param/loadparm.c:999 +msgid "dont descend" +msgstr "" + +#: param/loadparm.c:1000 +msgid "magic script" +msgstr "" + +#: param/loadparm.c:1001 +msgid "magic output" +msgstr "" + +#: param/loadparm.c:1002 +msgid "delete readonly" +msgstr "" + +#: param/loadparm.c:1003 +msgid "dos filemode" +msgstr "" + +#: param/loadparm.c:1004 +msgid "dos filetimes" +msgstr "" + +#: param/loadparm.c:1005 +msgid "dos filetime resolution" +msgstr "" + +#: param/loadparm.c:1007 +msgid "fake directory create times" +msgstr "" + +#: param/loadparm.c:1008 +msgid "panic action" +msgstr "" + +#: param/loadparm.c:1009 +msgid "hide local users" +msgstr "" + +#: param/loadparm.c:1012 +msgid "VFS options" +msgstr "" + +#: param/loadparm.c:1014 +msgid "vfs object" +msgstr "" + +#: param/loadparm.c:1015 +msgid "vfs options" +msgstr "" + +#: param/loadparm.c:1018 +msgid "msdfs root" +msgstr "" + +#: param/loadparm.c:1019 +msgid "host msdfs" +msgstr "" + +#: param/loadparm.c:1021 +msgid "Winbind options" +msgstr "" + +#: param/loadparm.c:1023 +msgid "winbind uid" +msgstr "" + +#: param/loadparm.c:1024 +msgid "winbind gid" +msgstr "" + +#: param/loadparm.c:1025 +msgid "template homedir" +msgstr "" + +#: param/loadparm.c:1026 +msgid "template shell" +msgstr "" + +#: param/loadparm.c:1027 +msgid "winbind separator" +msgstr "" + +#: param/loadparm.c:1028 +msgid "winbind cache time" +msgstr "" + +#: param/loadparm.c:1029 +msgid "winbind enum users" +msgstr "" + +#: param/loadparm.c:1030 +msgid "winbind enum groups" +msgstr "" diff --git a/source3/po/i18n_swat.pot b/source3/po/i18n_swat.pot new file mode 100644 index 0000000000..ad07acc744 --- /dev/null +++ b/source3/po/i18n_swat.pot @@ -0,0 +1,1561 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2001-06-09 13:08+0900\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: LANGUAGE <LL@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=CHARSET\n" +"Content-Transfer-Encoding: ENCODING\n" + +#: web/swat.c:120 +#, c-format +msgid "ERROR: Can't open %s\n" +msgstr "" + +#: web/swat.c:208 +msgid "Help" +msgstr "" + +#: web/swat.c:215 web/swat.c:223 web/swat.c:231 web/swat.c:240 web/swat.c:249 +#: web/swat.c:255 web/swat.c:261 web/swat.c:271 +msgid "Set Default" +msgstr "" + +#: web/swat.c:387 +#, c-format +msgid "failed to open %s for writing\n" +msgstr "" + +#: web/swat.c:399 +#, c-format +msgid "Can't reload %s\n" +msgstr "" + +#: web/swat.c:478 +#, c-format +msgid "Logged in as <b>%s</b><p>\n" +msgstr "" + +#: web/swat.c:481 +msgid "Home" +msgstr "" + +#: web/swat.c:483 +msgid "Globals" +msgstr "" + +#: web/swat.c:484 +msgid "Shares" +msgstr "" + +#: web/swat.c:485 +msgid "Printers" +msgstr "" + +#: web/swat.c:488 +msgid "Status" +msgstr "" + +#: web/swat.c:489 +msgid "View Config" +msgstr "" + +#: web/swat.c:491 +msgid "Password Management" +msgstr "" + +#: web/swat.c:515 +msgid "Current Config" +msgstr "" + +#: web/swat.c:519 +msgid "Normal View" +msgstr "" + +#: web/swat.c:521 +msgid "Full View" +msgstr "" + +#: web/swat.c:537 +msgid "Global Variables" +msgstr "" + +#: web/swat.c:551 web/swat.c:651 web/swat.c:998 +msgid "Commit Changes" +msgstr "" + +#: web/swat.c:555 web/swat.c:654 web/swat.c:1000 +msgid "Reset Values" +msgstr "" + +#: web/swat.c:557 web/swat.c:656 web/swat.c:1002 +msgid "Advanced View" +msgstr "" + +#: web/swat.c:559 web/swat.c:658 web/swat.c:1004 +msgid "Basic View" +msgstr "" + +#: web/swat.c:588 +msgid "Share Parameters" +msgstr "" + +#: web/swat.c:622 +msgid "Choose Share" +msgstr "" + +#: web/swat.c:636 +msgid "Delete Share" +msgstr "" + +#: web/swat.c:643 +msgid "Create Share" +msgstr "" + +#: web/swat.c:688 +msgid "password change in demo mode rejected\n" +msgstr "" + +#: web/swat.c:701 +msgid "Can't setup password database vectors.\n" +msgstr "" + +#: web/swat.c:727 +msgid " Must specify \"User Name\" \n" +msgstr "" + +#: web/swat.c:743 +msgid " Must specify \"Old Password\" \n" +msgstr "" + +#: web/swat.c:749 +msgid " Must specify \"Remote Machine\" \n" +msgstr "" + +#: web/swat.c:756 +msgid " Must specify \"New, and Re-typed Passwords\" \n" +msgstr "" + +#: web/swat.c:762 +msgid " Re-typed password didn't match new password\n" +msgstr "" + +#: web/swat.c:792 +#, c-format +msgid " The passwd for '%s' has been changed. \n" +msgstr "" + +#: web/swat.c:794 +#, c-format +msgid " The passwd for '%s' has NOT been changed. \n" +msgstr "" + +#: web/swat.c:818 +msgid "Server Password Management" +msgstr "" + +#. +#. * Create all the dialog boxes for data collection +#. +#: web/swat.c:827 web/swat.c:874 +msgid " User Name : " +msgstr "" + +#: web/swat.c:830 web/swat.c:876 +msgid " Old Password : " +msgstr "" + +#: web/swat.c:833 web/swat.c:878 +msgid " New Password : " +msgstr "" + +#: web/swat.c:835 web/swat.c:880 +msgid " Re-type New Password : " +msgstr "" + +#: web/swat.c:843 web/swat.c:891 +msgid "Change Password" +msgstr "" + +#: web/swat.c:846 +msgid "Add New User" +msgstr "" + +#: web/swat.c:848 +msgid "Delete User" +msgstr "" + +#: web/swat.c:850 +msgid "Disable User" +msgstr "" + +#: web/swat.c:852 +msgid "Enable User" +msgstr "" + +#: web/swat.c:865 +msgid "Client/Server Password Management" +msgstr "" + +#: web/swat.c:882 +msgid " Remote Machine : " +msgstr "" + +#: web/swat.c:920 +msgid "Printer Parameters" +msgstr "" + +#: web/swat.c:922 +msgid "Important Note:" +msgstr "" + +#: web/swat.c:923 +msgid "Printer names marked with [*] in the Choose Printer drop-down box " +msgstr "" + +#: web/swat.c:924 +msgid "are autoloaded printers from " +msgstr "" + +#: web/swat.c:925 +msgid "Printcap Name" +msgstr "" + +#: web/swat.c:926 +msgid "Attempting to delete these printers from SWAT will have no effect.\n" +msgstr "" + +#: web/swat.c:964 +msgid "Choose Printer" +msgstr "" + +#: web/swat.c:983 +msgid "Delete Printer" +msgstr "" + +#: web/swat.c:990 +msgid "Create Printer" +msgstr "" + +#: web/statuspage.c:38 +msgid "DENY_NONE" +msgstr "" + +#: web/statuspage.c:39 +msgid "DENY_ALL " +msgstr "" + +#: web/statuspage.c:40 +msgid "DENY_DOS " +msgstr "" + +#: web/statuspage.c:41 +msgid "DENY_READ " +msgstr "" + +#: web/statuspage.c:42 +msgid "DENY_WRITE " +msgstr "" + +#: web/statuspage.c:48 +msgid "RDONLY " +msgstr "" + +#: web/statuspage.c:49 +msgid "WRONLY " +msgstr "" + +#: web/statuspage.c:50 +msgid "RDWR " +msgstr "" + +#: web/statuspage.c:58 +msgid "EXCLUSIVE+BATCH " +msgstr "" + +#: web/statuspage.c:60 +msgid "EXCLUSIVE " +msgstr "" + +#: web/statuspage.c:62 +msgid "BATCH " +msgstr "" + +#: web/statuspage.c:64 +msgid "LEVEL_II " +msgstr "" + +#: web/statuspage.c:66 +msgid "NONE " +msgstr "" + +#: web/statuspage.c:146 +msgid "Server Status" +msgstr "" + +#: web/statuspage.c:151 +msgid "Auto Refresh" +msgstr "" + +#: web/statuspage.c:152 web/statuspage.c:157 +msgid "Refresh Interval: " +msgstr "" + +#: web/statuspage.c:156 +msgid "Stop Refreshing" +msgstr "" + +#: web/statuspage.c:168 +msgid "You need to have status=yes in your smb config file\n" +msgstr "" + +#: web/statuspage.c:174 +msgid "version:" +msgstr "" + +#: web/statuspage.c:177 +msgid "smbd:" +msgstr "" + +#: web/statuspage.c:177 web/statuspage.c:189 +msgid "running" +msgstr "" + +#: web/statuspage.c:177 web/statuspage.c:189 +msgid "not running" +msgstr "" + +#: web/statuspage.c:180 +msgid "Stop smbd" +msgstr "" + +#: web/statuspage.c:182 +msgid "Start smbd" +msgstr "" + +#: web/statuspage.c:184 +msgid "Restart smbd" +msgstr "" + +#: web/statuspage.c:189 +msgid "nmbd:" +msgstr "" + +#: web/statuspage.c:192 +msgid "Stop nmbd" +msgstr "" + +#: web/statuspage.c:194 +msgid "Start nmbd" +msgstr "" + +#: web/statuspage.c:196 +msgid "Restart nmbd" +msgstr "" + +#: web/statuspage.c:203 +msgid "Active Connections" +msgstr "" + +#: web/statuspage.c:205 web/statuspage.c:236 web/statuspage.c:256 +msgid "PID" +msgstr "" + +#: web/statuspage.c:205 web/statuspage.c:236 +msgid "Client" +msgstr "" + +#: web/statuspage.c:205 +msgid "IP address" +msgstr "" + +#: web/statuspage.c:205 web/statuspage.c:236 web/statuspage.c:256 +msgid "Date" +msgstr "" + +#: web/statuspage.c:207 +msgid "Kill" +msgstr "" + +#: web/statuspage.c:233 +msgid "Active Shares" +msgstr "" + +#: web/statuspage.c:236 +msgid "Share" +msgstr "" + +#: web/statuspage.c:236 +msgid "User" +msgstr "" + +#: web/statuspage.c:236 +msgid "Group" +msgstr "" + +#: web/statuspage.c:254 +msgid "Open Files" +msgstr "" + +#: web/statuspage.c:256 +msgid "Sharing" +msgstr "" + +#: web/statuspage.c:256 +msgid "R/W" +msgstr "" + +#: web/statuspage.c:256 +msgid "Oplock" +msgstr "" + +#: web/statuspage.c:256 +msgid "File" +msgstr "" + +#: param/loadparm.c:571 +msgid "Base Options" +msgstr "" + +#: param/loadparm.c:572 +msgid "coding system" +msgstr "" + +#: param/loadparm.c:573 +msgid "client code page" +msgstr "" + +#: param/loadparm.c:574 +msgid "comment" +msgstr "" + +#: param/loadparm.c:575 +msgid "path" +msgstr "" + +#: param/loadparm.c:576 +msgid "directory" +msgstr "" + +#: param/loadparm.c:577 +msgid "workgroup" +msgstr "" + +#: param/loadparm.c:578 +msgid "netbios name" +msgstr "" + +#: param/loadparm.c:579 +msgid "netbios aliases" +msgstr "" + +#: param/loadparm.c:580 +msgid "netbios scope" +msgstr "" + +#: param/loadparm.c:581 +msgid "server string" +msgstr "" + +#: param/loadparm.c:582 +msgid "interfaces" +msgstr "" + +#: param/loadparm.c:583 +msgid "bind interfaces only" +msgstr "" + +#: param/loadparm.c:585 +msgid "Security Options" +msgstr "" + +#: param/loadparm.c:586 +msgid "security" +msgstr "" + +#: param/loadparm.c:587 +msgid "encrypt passwords" +msgstr "" + +#: param/loadparm.c:588 +msgid "update encrypted" +msgstr "" + +#: param/loadparm.c:589 +msgid "allow trusted domains" +msgstr "" + +#: param/loadparm.c:590 +msgid "alternate permissions" +msgstr "" + +#: param/loadparm.c:591 +msgid "hosts equiv" +msgstr "" + +#: param/loadparm.c:592 +msgid "min password length" +msgstr "" + +#: param/loadparm.c:593 +msgid "min passwd length" +msgstr "" + +#: param/loadparm.c:594 +msgid "map to guest" +msgstr "" + +#: param/loadparm.c:595 +msgid "null passwords" +msgstr "" + +#: param/loadparm.c:596 +msgid "password server" +msgstr "" + +#: param/loadparm.c:597 +msgid "smb passwd file" +msgstr "" + +#: param/loadparm.c:598 +msgid "root directory" +msgstr "" + +#: param/loadparm.c:599 +msgid "root dir" +msgstr "" + +#: param/loadparm.c:600 +msgid "root" +msgstr "" + +#: param/loadparm.c:601 +msgid "passwd program" +msgstr "" + +#: param/loadparm.c:602 +msgid "passwd chat" +msgstr "" + +#: param/loadparm.c:603 +msgid "passwd chat debug" +msgstr "" + +#: param/loadparm.c:604 +msgid "username map" +msgstr "" + +#: param/loadparm.c:605 +msgid "password level" +msgstr "" + +#: param/loadparm.c:606 +msgid "username level" +msgstr "" + +#: param/loadparm.c:607 +msgid "unix password sync" +msgstr "" + +#: param/loadparm.c:608 +msgid "restrict anonymous" +msgstr "" + +#: param/loadparm.c:609 +msgid "revalidate" +msgstr "" + +#: param/loadparm.c:610 +msgid "use rhosts" +msgstr "" + +#: param/loadparm.c:611 +msgid "username" +msgstr "" + +#: param/loadparm.c:612 +msgid "user" +msgstr "" + +#: param/loadparm.c:613 +msgid "users" +msgstr "" + +#: param/loadparm.c:614 +msgid "guest account" +msgstr "" + +#: param/loadparm.c:615 +msgid "invalid users" +msgstr "" + +#: param/loadparm.c:616 +msgid "valid users" +msgstr "" + +#: param/loadparm.c:617 +msgid "admin users" +msgstr "" + +#: param/loadparm.c:618 +msgid "read list" +msgstr "" + +#: param/loadparm.c:619 +msgid "write list" +msgstr "" + +#: param/loadparm.c:620 +msgid "force user" +msgstr "" + +#: param/loadparm.c:621 +msgid "force group" +msgstr "" + +#: param/loadparm.c:622 +msgid "group" +msgstr "" + +#: param/loadparm.c:623 +msgid "writeable" +msgstr "" + +#: param/loadparm.c:624 +msgid "write ok" +msgstr "" + +#: param/loadparm.c:625 +msgid "writable" +msgstr "" + +#: param/loadparm.c:626 +msgid "read only" +msgstr "" + +#: param/loadparm.c:627 +msgid "create mask" +msgstr "" + +#: param/loadparm.c:628 +msgid "create mode" +msgstr "" + +#: param/loadparm.c:629 +msgid "force create mode" +msgstr "" + +#: param/loadparm.c:630 +msgid "security mask" +msgstr "" + +#: param/loadparm.c:631 +msgid "force security mode" +msgstr "" + +#: param/loadparm.c:632 +msgid "directory mask" +msgstr "" + +#: param/loadparm.c:633 +msgid "directory mode" +msgstr "" + +#: param/loadparm.c:634 +msgid "force directory mode" +msgstr "" + +#: param/loadparm.c:635 +msgid "directory security mask" +msgstr "" + +#: param/loadparm.c:636 +msgid "force directory security mode" +msgstr "" + +#: param/loadparm.c:637 +msgid "inherit permissions" +msgstr "" + +#: param/loadparm.c:638 +msgid "guest only" +msgstr "" + +#: param/loadparm.c:639 +msgid "only guest" +msgstr "" + +#: param/loadparm.c:640 +msgid "guest ok" +msgstr "" + +#: param/loadparm.c:641 +msgid "public" +msgstr "" + +#: param/loadparm.c:642 +msgid "only user" +msgstr "" + +#: param/loadparm.c:643 +msgid "hosts allow" +msgstr "" + +#: param/loadparm.c:644 +msgid "allow hosts" +msgstr "" + +#: param/loadparm.c:645 +msgid "hosts deny" +msgstr "" + +#: param/loadparm.c:646 +msgid "deny hosts" +msgstr "" + +#: param/loadparm.c:649 +msgid "Secure Socket Layer Options" +msgstr "" + +#: param/loadparm.c:650 +msgid "ssl" +msgstr "" + +#: param/loadparm.c:651 +msgid "ssl hosts" +msgstr "" + +#: param/loadparm.c:652 +msgid "ssl hosts resign" +msgstr "" + +#: param/loadparm.c:653 +msgid "ssl CA certDir" +msgstr "" + +#: param/loadparm.c:654 +msgid "ssl CA certFile" +msgstr "" + +#: param/loadparm.c:655 +msgid "ssl server cert" +msgstr "" + +#: param/loadparm.c:656 +msgid "ssl server key" +msgstr "" + +#: param/loadparm.c:657 +msgid "ssl client cert" +msgstr "" + +#: param/loadparm.c:658 +msgid "ssl client key" +msgstr "" + +#: param/loadparm.c:659 +msgid "ssl require clientcert" +msgstr "" + +#: param/loadparm.c:660 +msgid "ssl require servercert" +msgstr "" + +#: param/loadparm.c:661 +msgid "ssl ciphers" +msgstr "" + +#: param/loadparm.c:662 +msgid "ssl version" +msgstr "" + +#: param/loadparm.c:663 +msgid "ssl compatibility" +msgstr "" + +#: param/loadparm.c:666 +msgid "Logging Options" +msgstr "" + +#: param/loadparm.c:667 +msgid "debug level" +msgstr "" + +#: param/loadparm.c:668 +msgid "log level" +msgstr "" + +#: param/loadparm.c:669 +msgid "syslog" +msgstr "" + +#: param/loadparm.c:670 +msgid "syslog only" +msgstr "" + +#: param/loadparm.c:671 +msgid "log file" +msgstr "" + +#: param/loadparm.c:672 +msgid "max log size" +msgstr "" + +#: param/loadparm.c:673 +msgid "debug timestamp" +msgstr "" + +#: param/loadparm.c:674 +msgid "timestamp logs" +msgstr "" + +#: param/loadparm.c:675 +msgid "debug hires timestamp" +msgstr "" + +#: param/loadparm.c:676 +msgid "debug pid" +msgstr "" + +#: param/loadparm.c:677 +msgid "debug uid" +msgstr "" + +#: param/loadparm.c:678 +msgid "status" +msgstr "" + +#: param/loadparm.c:680 +msgid "Protocol Options" +msgstr "" + +#: param/loadparm.c:681 +msgid "protocol" +msgstr "" + +#: param/loadparm.c:682 +msgid "read bmpx" +msgstr "" + +#: param/loadparm.c:683 +msgid "read raw" +msgstr "" + +#: param/loadparm.c:684 +msgid "write raw" +msgstr "" + +#: param/loadparm.c:685 +msgid "nt smb support" +msgstr "" + +#: param/loadparm.c:686 +msgid "nt pipe support" +msgstr "" + +#: param/loadparm.c:687 +msgid "nt acl support" +msgstr "" + +#: param/loadparm.c:688 +msgid "announce version" +msgstr "" + +#: param/loadparm.c:689 +msgid "announce as" +msgstr "" + +#: param/loadparm.c:690 +msgid "max mux" +msgstr "" + +#: param/loadparm.c:691 +msgid "max xmit" +msgstr "" + +#: param/loadparm.c:692 +msgid "name resolve order" +msgstr "" + +#: param/loadparm.c:693 +msgid "packet size" +msgstr "" + +#: param/loadparm.c:694 +msgid "max packet" +msgstr "" + +#: param/loadparm.c:695 +msgid "max ttl" +msgstr "" + +#: param/loadparm.c:696 +msgid "max wins ttl" +msgstr "" + +#: param/loadparm.c:697 +msgid "min wins ttl" +msgstr "" + +#: param/loadparm.c:698 +msgid "time server" +msgstr "" + +#: param/loadparm.c:700 +msgid "Tuning Options" +msgstr "" + +#: param/loadparm.c:701 +msgid "change notify timeout" +msgstr "" + +#: param/loadparm.c:702 +msgid "deadtime" +msgstr "" + +#: param/loadparm.c:703 +msgid "getwd cache" +msgstr "" + +#: param/loadparm.c:704 +msgid "keepalive" +msgstr "" + +#: param/loadparm.c:705 +msgid "lpq cache time" +msgstr "" + +#: param/loadparm.c:706 +msgid "max connections" +msgstr "" + +#: param/loadparm.c:707 +msgid "max disk size" +msgstr "" + +#: param/loadparm.c:708 +msgid "max open files" +msgstr "" + +#: param/loadparm.c:709 +msgid "min print space" +msgstr "" + +#: param/loadparm.c:710 +msgid "read prediction" +msgstr "" + +#: param/loadparm.c:711 +msgid "read size" +msgstr "" + +#: param/loadparm.c:712 +msgid "shared mem size" +msgstr "" + +#: param/loadparm.c:713 +msgid "socket options" +msgstr "" + +#: param/loadparm.c:714 +msgid "stat cache size" +msgstr "" + +#: param/loadparm.c:715 +msgid "strict sync" +msgstr "" + +#: param/loadparm.c:716 +msgid "sync always" +msgstr "" + +#: param/loadparm.c:717 +msgid "write cache size" +msgstr "" + +#: param/loadparm.c:719 +msgid "Printing Options" +msgstr "" + +#: param/loadparm.c:720 +msgid "load printers" +msgstr "" + +#: param/loadparm.c:721 +msgid "printcap name" +msgstr "" + +#: param/loadparm.c:722 +msgid "printcap" +msgstr "" + +#: param/loadparm.c:723 +msgid "printer driver file" +msgstr "" + +#: param/loadparm.c:724 +msgid "printable" +msgstr "" + +#: param/loadparm.c:725 +msgid "print ok" +msgstr "" + +#: param/loadparm.c:726 +msgid "postscript" +msgstr "" + +#: param/loadparm.c:727 +msgid "printing" +msgstr "" + +#: param/loadparm.c:728 +msgid "print command" +msgstr "" + +#: param/loadparm.c:729 +msgid "lpq command" +msgstr "" + +#: param/loadparm.c:730 +msgid "lprm command" +msgstr "" + +#: param/loadparm.c:731 +msgid "lppause command" +msgstr "" + +#: param/loadparm.c:732 +msgid "lpresume command" +msgstr "" + +#: param/loadparm.c:733 +msgid "queuepause command" +msgstr "" + +#: param/loadparm.c:734 +msgid "queueresume command" +msgstr "" + +#: param/loadparm.c:736 +msgid "printer" +msgstr "" + +#: param/loadparm.c:737 +msgid "printer name" +msgstr "" + +#: param/loadparm.c:738 +msgid "printer driver" +msgstr "" + +#: param/loadparm.c:739 +msgid "printer driver location" +msgstr "" + +#: param/loadparm.c:742 +msgid "Filename Handling" +msgstr "" + +#: param/loadparm.c:743 +msgid "strip dot" +msgstr "" + +#: param/loadparm.c:744 +msgid "character set" +msgstr "" + +#: param/loadparm.c:745 +msgid "mangled stack" +msgstr "" + +#: param/loadparm.c:746 +msgid "default case" +msgstr "" + +#: param/loadparm.c:747 +msgid "case sensitive" +msgstr "" + +#: param/loadparm.c:748 +msgid "casesignames" +msgstr "" + +#: param/loadparm.c:749 +msgid "preserve case" +msgstr "" + +#: param/loadparm.c:750 +msgid "short preserve case" +msgstr "" + +#: param/loadparm.c:751 +msgid "mangle case" +msgstr "" + +#: param/loadparm.c:752 +msgid "mangling char" +msgstr "" + +#: param/loadparm.c:753 +msgid "hide dot files" +msgstr "" + +#: param/loadparm.c:754 +msgid "delete veto files" +msgstr "" + +#: param/loadparm.c:755 +msgid "veto files" +msgstr "" + +#: param/loadparm.c:756 +msgid "hide files" +msgstr "" + +#: param/loadparm.c:757 +msgid "veto oplock files" +msgstr "" + +#: param/loadparm.c:758 +msgid "map system" +msgstr "" + +#: param/loadparm.c:759 +msgid "map hidden" +msgstr "" + +#: param/loadparm.c:760 +msgid "map archive" +msgstr "" + +#: param/loadparm.c:761 +msgid "mangled names" +msgstr "" + +#: param/loadparm.c:762 +msgid "mangled map" +msgstr "" + +#: param/loadparm.c:763 +msgid "stat cache" +msgstr "" + +#: param/loadparm.c:765 +msgid "Domain Options" +msgstr "" + +#: param/loadparm.c:766 +msgid "domain groups" +msgstr "" + +#: param/loadparm.c:767 +msgid "domain admin group" +msgstr "" + +#: param/loadparm.c:768 +msgid "domain guest group" +msgstr "" + +#: param/loadparm.c:769 +msgid "domain admin users" +msgstr "" + +#: param/loadparm.c:770 +msgid "domain guest users" +msgstr "" + +#: param/loadparm.c:772 +msgid "groupname map" +msgstr "" + +#: param/loadparm.c:774 +msgid "machine password timeout" +msgstr "" + +#: param/loadparm.c:776 +msgid "Logon Options" +msgstr "" + +#: param/loadparm.c:777 +msgid "add user script" +msgstr "" + +#: param/loadparm.c:778 +msgid "delete user script" +msgstr "" + +#: param/loadparm.c:779 +msgid "logon script" +msgstr "" + +#: param/loadparm.c:780 +msgid "logon path" +msgstr "" + +#: param/loadparm.c:781 +msgid "logon drive" +msgstr "" + +#: param/loadparm.c:782 +msgid "logon home" +msgstr "" + +#: param/loadparm.c:783 +msgid "domain logons" +msgstr "" + +#: param/loadparm.c:785 +msgid "Browse Options" +msgstr "" + +#: param/loadparm.c:786 +msgid "os level" +msgstr "" + +#: param/loadparm.c:787 +msgid "lm announce" +msgstr "" + +#: param/loadparm.c:788 +msgid "lm interval" +msgstr "" + +#: param/loadparm.c:789 +msgid "preferred master" +msgstr "" + +#: param/loadparm.c:790 +msgid "prefered master" +msgstr "" + +#: param/loadparm.c:791 +msgid "local master" +msgstr "" + +#: param/loadparm.c:792 +msgid "domain master" +msgstr "" + +#: param/loadparm.c:793 +msgid "browse list" +msgstr "" + +#: param/loadparm.c:794 +msgid "browseable" +msgstr "" + +#: param/loadparm.c:795 +msgid "browsable" +msgstr "" + +#: param/loadparm.c:797 +msgid "WINS Options" +msgstr "" + +#: param/loadparm.c:798 +msgid "dns proxy" +msgstr "" + +#: param/loadparm.c:799 +msgid "wins proxy" +msgstr "" + +#: param/loadparm.c:800 +msgid "wins server" +msgstr "" + +#: param/loadparm.c:801 +msgid "wins support" +msgstr "" + +#: param/loadparm.c:802 +msgid "wins hook" +msgstr "" + +#: param/loadparm.c:804 +msgid "Locking Options" +msgstr "" + +#: param/loadparm.c:805 +msgid "blocking locks" +msgstr "" + +#: param/loadparm.c:806 +msgid "fake oplocks" +msgstr "" + +#: param/loadparm.c:807 +msgid "kernel oplocks" +msgstr "" + +#: param/loadparm.c:808 +msgid "locking" +msgstr "" + +#: param/loadparm.c:810 +msgid "utmp" +msgstr "" + +#: param/loadparm.c:812 +msgid "ole locking compatibility" +msgstr "" + +#: param/loadparm.c:813 +msgid "oplocks" +msgstr "" + +#: param/loadparm.c:814 +msgid "level2 oplocks" +msgstr "" + +#: param/loadparm.c:815 +msgid "oplock break wait time" +msgstr "" + +#: param/loadparm.c:816 +msgid "oplock contention limit" +msgstr "" + +#: param/loadparm.c:817 +msgid "strict locking" +msgstr "" + +#: param/loadparm.c:818 +msgid "share modes" +msgstr "" + +#: param/loadparm.c:821 +msgid "Ldap Options" +msgstr "" + +#: param/loadparm.c:822 +msgid "ldap server" +msgstr "" + +#: param/loadparm.c:823 +msgid "ldap port" +msgstr "" + +#: param/loadparm.c:824 +msgid "ldap suffix" +msgstr "" + +#: param/loadparm.c:825 +msgid "ldap filter" +msgstr "" + +#: param/loadparm.c:826 +msgid "ldap root" +msgstr "" + +#: param/loadparm.c:827 +msgid "ldap root passwd" +msgstr "" + +#: param/loadparm.c:831 +msgid "Miscellaneous Options" +msgstr "" + +#: param/loadparm.c:832 +msgid "smbrun" +msgstr "" + +#: param/loadparm.c:833 +msgid "config file" +msgstr "" + +#: param/loadparm.c:834 +msgid "auto services" +msgstr "" + +#: param/loadparm.c:835 +msgid "preload" +msgstr "" + +#: param/loadparm.c:836 +msgid "lock directory" +msgstr "" + +#: param/loadparm.c:837 +msgid "lock dir" +msgstr "" + +#: param/loadparm.c:839 +msgid "utmp directory" +msgstr "" + +#: param/loadparm.c:840 +msgid "utmp dir" +msgstr "" + +#: param/loadparm.c:841 +msgid "wtmp directory" +msgstr "" + +#: param/loadparm.c:842 +msgid "wtmp dir" +msgstr "" + +#: param/loadparm.c:843 +msgid "utmp hostname" +msgstr "" + +#: param/loadparm.c:844 +msgid "utmp consolidate" +msgstr "" + +#: param/loadparm.c:846 +msgid "default service" +msgstr "" + +#: param/loadparm.c:847 +msgid "default" +msgstr "" + +#: param/loadparm.c:848 +msgid "message command" +msgstr "" + +#: param/loadparm.c:849 +msgid "dfree command" +msgstr "" + +#: param/loadparm.c:850 +msgid "valid chars" +msgstr "" + +#: param/loadparm.c:851 +msgid "remote announce" +msgstr "" + +#: param/loadparm.c:852 +msgid "remote browse sync" +msgstr "" + +#: param/loadparm.c:853 +msgid "socket address" +msgstr "" + +#: param/loadparm.c:854 +msgid "homedir map" +msgstr "" + +#: param/loadparm.c:855 +msgid "time offset" +msgstr "" + +#: param/loadparm.c:856 +msgid "unix realname" +msgstr "" + +#: param/loadparm.c:857 +msgid "NIS homedir" +msgstr "" + +#: param/loadparm.c:858 +msgid "-valid" +msgstr "" + +#: param/loadparm.c:859 +msgid "copy" +msgstr "" + +#: param/loadparm.c:860 +msgid "include" +msgstr "" + +#: param/loadparm.c:861 +msgid "preexec" +msgstr "" + +#: param/loadparm.c:862 +msgid "exec" +msgstr "" + +#: param/loadparm.c:863 +msgid "preexec close" +msgstr "" + +#: param/loadparm.c:864 +msgid "postexec" +msgstr "" + +#: param/loadparm.c:865 +msgid "root preexec" +msgstr "" + +#: param/loadparm.c:866 +msgid "root preexec close" +msgstr "" + +#: param/loadparm.c:867 +msgid "root postexec" +msgstr "" + +#: param/loadparm.c:868 +msgid "available" +msgstr "" + +#: param/loadparm.c:869 +msgid "volume" +msgstr "" + +#: param/loadparm.c:870 +msgid "fstype" +msgstr "" + +#: param/loadparm.c:871 +msgid "set directory" +msgstr "" + +#: param/loadparm.c:872 +msgid "source environment" +msgstr "" + +#: param/loadparm.c:873 +msgid "wide links" +msgstr "" + +#: param/loadparm.c:874 +msgid "follow symlinks" +msgstr "" + +#: param/loadparm.c:875 +msgid "dont descend" +msgstr "" + +#: param/loadparm.c:876 +msgid "magic script" +msgstr "" + +#: param/loadparm.c:877 +msgid "magic output" +msgstr "" + +#: param/loadparm.c:878 +msgid "delete readonly" +msgstr "" + +#: param/loadparm.c:879 +msgid "dos filetimes" +msgstr "" + +#: param/loadparm.c:880 +msgid "dos filetime resolution" +msgstr "" + +#: param/loadparm.c:882 +msgid "fake directory create times" +msgstr "" + +#: param/loadparm.c:883 +msgid "panic action" +msgstr "" diff --git a/source3/po/ja.gmo b/source3/po/ja.gmo Binary files differnew file mode 100644 index 0000000000..6d5579883f --- /dev/null +++ b/source3/po/ja.gmo diff --git a/source3/po/ja.po b/source3/po/ja.po new file mode 100644 index 0000000000..17a528a917 --- /dev/null +++ b/source3/po/ja.po @@ -0,0 +1,1808 @@ +# Japanese messages for international release of SWAT. +# Copyright (C) 2001 Free Software Foundation, Inc. +# Ryo Kawahara <rkawa@lbe.co.jp>, 2000. +# +msgid "" +msgstr "" +"Project-Id-Version: i18n-swatE VERSION\n" +"POT-Creation-Date: 2001-09-20 20:29+0900\n" +"PO-Revision-Date: 2000-04-03 17:55+09:00\n" +"Last-Translator: TAKAHASHI Motonobu <monyo@samba.gr.jp>\n" +"Language-Team: Samba Team <samba-technical@samba.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=Shift_JIS\n" +"Content-Transfer-Encoding: \n" + +#: web/swat.c:120 +#, c-format +msgid "ERROR: Can't open %s\n" +msgstr "%s ‚ğƒI[ƒvƒ“‚Å‚«‚Ü‚¹‚ñ\n" + +#. +#. str = stripspace(parm->label); +#. strlower (str); //monyo +#. d_printf("<tr><td><A HREF=\"/swat/help/smb.conf.5.html#%s\" target=\"docs\">%s</A> %s</td><td>", +#. str, _("Help"), parm->label); +#. +#: web/swat.c:211 +msgid "Help" +msgstr "à–¾" + +#: web/swat.c:217 web/swat.c:231 web/swat.c:246 web/swat.c:254 web/swat.c:263 +#: web/swat.c:272 web/swat.c:278 web/swat.c:284 web/swat.c:297 +msgid "Set Default" +msgstr "Šù’è’l‚É–ß‚·" + +#: web/swat.c:502 +#, c-format +msgid "Logged in as <b>%s</b><p>\n" +msgstr "<b>%s</b>‚Æ‚µ‚ăƒOƒCƒ“<p>\n" + +#: web/swat.c:505 +msgid "Home" +msgstr "ƒz[ƒ€" + +#: web/swat.c:507 +msgid "Globals" +msgstr "‘S‘Ìİ’è" + +#: web/swat.c:508 +msgid "Shares" +msgstr "‹¤—Lİ’è" + +#: web/swat.c:509 +msgid "Printers" +msgstr "ƒvƒŠƒ“ƒ^İ’è" + +#: web/swat.c:512 +msgid "Status" +msgstr "“®ìó‹µ" + +#: web/swat.c:513 +msgid "View Config" +msgstr "İ’è•\\¦" + +#: web/swat.c:515 +msgid "Password Management" +msgstr "ƒpƒXƒ[ƒhŠÇ—Eƒ†[ƒUŠÇ—" + +#: web/swat.c:539 +msgid "Current Config" +msgstr "Œ»İ‚Ìİ’è" + +#: web/swat.c:543 +msgid "Normal View" +msgstr "•W€•\\¦" + +#: web/swat.c:545 +msgid "Full View" +msgstr "Š®‘S•\\¦" + +#: web/swat.c:561 +msgid "Global Variables" +msgstr "‘S‘Ìİ’è" + +#: web/swat.c:575 web/swat.c:671 web/swat.c:1014 +msgid "Commit Changes" +msgstr "İ’è•ÏX" + +#: web/swat.c:579 web/swat.c:674 web/swat.c:1016 +msgid "Reset Values" +msgstr "ƒŠƒZƒbƒg" + +#: web/swat.c:581 web/swat.c:676 web/swat.c:1018 +msgid "Advanced View" +msgstr "Úו\\¦" + +#: web/swat.c:583 web/swat.c:678 web/swat.c:1020 +msgid "Basic View" +msgstr "•W€•\\¦" + +#: web/swat.c:613 +msgid "Share Parameters" +msgstr "‹¤—Lİ’è" + +#: web/swat.c:642 +msgid "Choose Share" +msgstr "‹¤—L‘I‘ğ" + +#: web/swat.c:656 +msgid "Delete Share" +msgstr "‹¤—Líœ" + +#: web/swat.c:663 +msgid "Create Share" +msgstr "V‹K‹¤—Lì¬" + +#: web/swat.c:708 +msgid "password change in demo mode rejected\n" +msgstr "ƒfƒ‚Eƒ‚[ƒh‚ł̃pƒXƒ[ƒh•ÏX‚Í‚Å‚«‚Ü‚¹‚ñ\n" + +#: web/swat.c:747 +msgid " Must specify \"User Name\" \n" +msgstr "uƒ†[ƒU–¼v‚ğ“ü—Í‚‚¾‚³‚¢\n" + +#: web/swat.c:763 +msgid " Must specify \"Old Password\" \n" +msgstr "u‹ŒƒpƒXƒ[ƒhv‚ğ“ü—Í‚µ‚Ä‚‚¾‚³‚¢\n" + +#: web/swat.c:769 +msgid " Must specify \"Remote Machine\" \n" +msgstr "uƒŠƒ‚[ƒg ƒ}ƒVƒ“v‚ğ“ü—Í‚µ‚Ä‚‚¾‚³‚¢\n" + +#: web/swat.c:776 +msgid " Must specify \"New, and Re-typed Passwords\" \n" +msgstr "uVƒpƒXƒ[ƒhv‚ğ“ü—Í‚µAÄ“ü—Í‚à‚µ‚Ä‚‚¾‚³‚¢\n" + +#: web/swat.c:782 +msgid " Re-typed password didn't match new password\n" +msgstr "VƒpƒXƒ[ƒh‚ÌÄ“ü—Í‚ªŠÔˆá‚Á‚Ä‚¢‚Ü‚·\n" + +#: web/swat.c:812 +#, c-format +msgid " The passwd for '%s' has been changed. \n" +msgstr " '%s' ‚̃pƒXƒ[ƒh‚Í•ÏX‚³‚ê‚Ü‚µ‚½ \n" + +#: web/swat.c:814 +#, c-format +msgid " The passwd for '%s' has NOT been changed. \n" +msgstr " '%s' ‚̃pƒXƒ[ƒh‚Í•ÏX‚³‚ê‚Ü‚¹‚ñ‚Å‚µ‚½ \n" + +#: web/swat.c:838 +msgid "Server Password Management" +msgstr "ƒ[ƒJƒ‹ ƒ}ƒVƒ“‚̃pƒXƒ[ƒhŠÇ—" + +#. +#. * Create all the dialog boxes for data collection +#. +#: web/swat.c:847 web/swat.c:894 +msgid " User Name : " +msgstr "ƒ†[ƒU–¼ : " + +#: web/swat.c:850 web/swat.c:896 +msgid " Old Password : " +msgstr "‹ŒƒpƒXƒ[ƒh : " + +#: web/swat.c:853 web/swat.c:898 +msgid " New Password : " +msgstr "VƒpƒXƒ[ƒh : " + +#: web/swat.c:855 web/swat.c:900 +msgid " Re-type New Password : " +msgstr "VƒpƒXƒ[ƒhÄ“ü—Í : " + +#: web/swat.c:863 web/swat.c:911 +msgid "Change Password" +msgstr "ƒpƒXƒ[ƒh•ÏX" + +#: web/swat.c:866 +msgid "Add New User" +msgstr "V‹Kƒ†[ƒU’ljÁ" + +#: web/swat.c:868 +msgid "Delete User" +msgstr "ƒ†[ƒU‚ğ휂·‚é" + +#: web/swat.c:870 +msgid "Disable User" +msgstr "g—p•s‰Â‚É‚·‚é" + +#: web/swat.c:872 +msgid "Enable User" +msgstr "g—p‰Â”\\‚É‚·‚é" + +#: web/swat.c:885 +msgid "Client/Server Password Management" +msgstr "ƒŠƒ‚[ƒg ƒ}ƒVƒ“‚̃pƒXƒ[ƒhŠÇ—" + +#: web/swat.c:902 +msgid " Remote Machine : " +msgstr " ƒŠƒ‚[ƒg ƒ}ƒVƒ“ : " + +#: web/swat.c:940 +msgid "Printer Parameters" +msgstr "ƒvƒŠƒ“ƒ^İ’è [Printer]" + +#: web/swat.c:942 +msgid "Important Note:" +msgstr "*’:" + +#: web/swat.c:943 +msgid "Printer names marked with [*] in the Choose Printer drop-down box " +msgstr "–¼‘O‚Ì擪‚É [*] ‚ª‚‚¢‚½ƒvƒŠƒ“ƒ^" + +#: web/swat.c:944 +msgid "are autoloaded printers from " +msgstr "‚ÍA" + +#: web/swat.c:945 +msgid "Printcap Name" +msgstr "printcap name ƒpƒ‰ƒ[ƒ^" + +#: web/swat.c:946 +msgid "Attempting to delete these printers from SWAT will have no effect.\n" +msgstr "‚©‚ç©“®İ’肳‚ꂽ‚à‚Ì‚Å‚·‚©‚çA휂·‚邱‚Æ‚Í‚Å‚«‚Ü‚¹‚ñB\n" + +#: web/swat.c:980 +msgid "Choose Printer" +msgstr "ƒvƒŠƒ“ƒ^‘I‘ğ" + +#: web/swat.c:999 +msgid "Delete Printer" +msgstr "ƒvƒŠƒ“ƒ^íœ" + +#: web/swat.c:1006 +msgid "Create Printer" +msgstr "ƒvƒŠƒ“ƒ^V‹Kì¬" + +#: web/statuspage.c:40 +msgid "DENY_NONE" +msgstr "‹‘”Û‚È‚µ" + +#: web/statuspage.c:41 +msgid "DENY_ALL " +msgstr "‚·‚ׂċ‘”Û" + +#: web/statuspage.c:42 +msgid "DENY_DOS " +msgstr "DOS‚ğ‹‘”Û" + +#: web/statuspage.c:43 +msgid "DENY_READ " +msgstr "QÆ‚ğ‹‘”Û" + +#: web/statuspage.c:44 +msgid "DENY_WRITE " +msgstr "XV‚ğ‹‘”Û" + +#: web/statuspage.c:50 +msgid "RDONLY " +msgstr "QÆ‚Ì‚İ" + +#: web/statuspage.c:51 +msgid "WRONLY " +msgstr "‘}“ü‚Ì‚İ" + +#: web/statuspage.c:52 +msgid "RDWR " +msgstr "XV " + +#: web/statuspage.c:60 +msgid "EXCLUSIVE+BATCH " +msgstr "ê—L+ƒoƒbƒ` " + +#: web/statuspage.c:62 +msgid "EXCLUSIVE " +msgstr "ê—L " + +#: web/statuspage.c:64 +msgid "BATCH " +msgstr "ƒoƒbƒ` " + +#: web/statuspage.c:66 +msgid "LEVEL_II " +msgstr "ƒŒƒxƒ‹_II " + +#: web/statuspage.c:68 +msgid "NONE " +msgstr "‚È‚µ " + +#: web/statuspage.c:195 +msgid "Server Status" +msgstr "ƒT[ƒo[“®ìó‹µ" + +#: web/statuspage.c:200 +msgid "Auto Refresh" +msgstr "©“®Ä•\\¦" + +#: web/statuspage.c:201 web/statuspage.c:206 +msgid "Refresh Interval: " +msgstr "Ä•\\¦ŠÔŠu(•b): " + +#: web/statuspage.c:205 +msgid "Stop Refreshing" +msgstr "©“®•\\¦’â~" + +#: web/statuspage.c:220 +msgid "version:" +msgstr "ƒo[ƒWƒ‡ƒ“:" + +#: web/statuspage.c:223 +msgid "smbd:" +msgstr "ƒtƒ@ƒCƒ‹‹¤—Lƒf[ƒ‚ƒ“(smbd):" + +#: web/statuspage.c:223 web/statuspage.c:235 +msgid "running" +msgstr "“®ì’†" + +#: web/statuspage.c:223 web/statuspage.c:235 +msgid "not running" +msgstr "’â~’†" + +#: web/statuspage.c:226 +msgid "Stop smbd" +msgstr "smbd’â~" + +#: web/statuspage.c:228 +msgid "Start smbd" +msgstr "smbd‹N“®" + +#: web/statuspage.c:230 +msgid "Restart smbd" +msgstr "smbdÄ‹N“®" + +#: web/statuspage.c:235 +msgid "nmbd:" +msgstr "ƒl[ƒ€ ƒT[ƒrƒX ƒf[ƒ‚ƒ“(nmbd)" + +#: web/statuspage.c:238 +msgid "Stop nmbd" +msgstr "nmbd’â~" + +#: web/statuspage.c:240 +msgid "Start nmbd" +msgstr "nmbd‹N“®" + +#: web/statuspage.c:242 +msgid "Restart nmbd" +msgstr "nmbdÄ‹N“®" + +#: web/statuspage.c:249 +msgid "Active Connections" +msgstr "Ú‘±’†ƒNƒ‰ƒCƒAƒ“ƒg" + +#: web/statuspage.c:251 web/statuspage.c:264 web/statuspage.c:272 +msgid "PID" +msgstr "ƒvƒƒZƒXID" + +#: web/statuspage.c:251 web/statuspage.c:264 +msgid "Client" +msgstr "ƒNƒ‰ƒCƒAƒ“ƒg" + +#: web/statuspage.c:251 +msgid "IP address" +msgstr "IPƒAƒhƒŒƒX" + +#: web/statuspage.c:251 web/statuspage.c:264 web/statuspage.c:272 +msgid "Date" +msgstr "“ú•t" + +#: web/statuspage.c:253 +msgid "Kill" +msgstr "Ø’f" + +#: web/statuspage.c:261 +msgid "Active Shares" +msgstr "Ú‘±’†‹¤—L" + +#: web/statuspage.c:264 +msgid "Share" +msgstr "‹¤—L–¼" + +#: web/statuspage.c:264 +msgid "User" +msgstr "ƒ†[ƒU" + +#: web/statuspage.c:264 +msgid "Group" +msgstr "ƒOƒ‹[ƒv" + +#: web/statuspage.c:270 +msgid "Open Files" +msgstr "g—p’†ƒtƒ@ƒCƒ‹" + +#: web/statuspage.c:272 +msgid "Sharing" +msgstr "”r‘¼ƒ‚[ƒh" + +#: web/statuspage.c:272 +msgid "R/W" +msgstr "QÆ/XV" + +#: web/statuspage.c:272 +msgid "Oplock" +msgstr "•Ö‹XƒƒbƒN(Oplock)" + +#: web/statuspage.c:272 +msgid "File" +msgstr "ƒtƒ@ƒCƒ‹–¼" + +#: param/loadparm.c:641 +msgid "Base Options" +msgstr "Šî–{ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:643 +#, fuzzy +msgid "dos charset" +msgstr "—LŒø‚È•¶š" + +#: param/loadparm.c:644 +#, fuzzy +msgid "unix charset" +msgstr "—LŒø‚È•¶š" + +#: param/loadparm.c:645 +msgid "display charset" +msgstr "" + +#: param/loadparm.c:646 +msgid "comment" +msgstr "ƒRƒƒ“ƒg" + +#: param/loadparm.c:647 +msgid "path" +msgstr "ƒpƒX" + +#: param/loadparm.c:648 +msgid "directory" +msgstr "ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:649 +msgid "workgroup" +msgstr "ƒ[ƒNƒOƒ‹[ƒv" + +#: param/loadparm.c:650 +msgid "netbios name" +msgstr "netbios –¼" + +#: param/loadparm.c:651 +msgid "netbios aliases" +msgstr "netbios ƒGƒCƒŠƒAƒX" + +#: param/loadparm.c:652 +msgid "netbios scope" +msgstr "netbios ƒXƒR[ƒv" + +#: param/loadparm.c:653 +msgid "server string" +msgstr "ƒT[ƒo•¶š—ñ" + +#: param/loadparm.c:654 +msgid "interfaces" +msgstr "ƒCƒ“ƒ^[ƒtƒF[ƒX" + +#: param/loadparm.c:655 +msgid "bind interfaces only" +msgstr "‚±‚̃Cƒ“ƒ^[ƒtƒF[ƒX‚Ì‚İg—p" + +#: param/loadparm.c:657 +msgid "Security Options" +msgstr "ƒZƒLƒ…ƒŠƒeƒB ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:659 +msgid "security" +msgstr "ƒZƒLƒ…ƒŠƒeƒB" + +#: param/loadparm.c:660 +msgid "encrypt passwords" +msgstr "ƒpƒXƒ[ƒh‚ğˆÃ†‰»" + +#: param/loadparm.c:661 +msgid "update encrypted" +msgstr "ˆÃ†‰»ƒpƒXƒ[ƒh‚ÉXV" + +#: param/loadparm.c:662 +msgid "allow trusted domains" +msgstr "M—Š‚Å‚«‚éƒhƒƒCƒ“‚ğ‹–‰Â" + +#: param/loadparm.c:663 +msgid "alternate permissions" +msgstr "‘ãsƒp[ƒ~ƒbƒVƒ‡ƒ“" + +#: param/loadparm.c:664 +msgid "hosts equiv" +msgstr "“¯“™‚̃zƒXƒg" + +#: param/loadparm.c:665 +msgid "min passwd length" +msgstr "ŬƒpƒXƒ[ƒh’·" + +#: param/loadparm.c:666 +msgid "min password length" +msgstr "ŬƒpƒXƒ[ƒh’·" + +#: param/loadparm.c:667 +msgid "map to guest" +msgstr "ƒQƒXƒg‚Ƀ}ƒbƒv" + +#: param/loadparm.c:668 +msgid "null passwords" +msgstr "‹óƒpƒXƒ[ƒh" + +#: param/loadparm.c:669 +#, fuzzy +msgid "obey pam restrictions" +msgstr "æ“Ç‚İ" + +#: param/loadparm.c:670 +msgid "password server" +msgstr "ƒpƒXƒ[ƒh ƒT[ƒo" + +#: param/loadparm.c:671 +msgid "smb passwd file" +msgstr "smb passwd ƒtƒ@ƒCƒ‹" + +#: param/loadparm.c:672 +#, fuzzy +msgid "private dir" +msgstr "ƒvƒŠƒ“ƒ^ ƒhƒ‰ƒCƒo" + +#: param/loadparm.c:673 +msgid "passdb module path" +msgstr "" + +#: param/loadparm.c:674 +msgid "root directory" +msgstr "ƒ‹[ƒg ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:675 +msgid "root dir" +msgstr "ƒ‹[ƒg ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:676 +msgid "root" +msgstr "ƒ‹[ƒg" + +#: param/loadparm.c:678 +#, fuzzy +msgid "pam password change" +msgstr "ŬƒpƒXƒ[ƒh’·" + +#: param/loadparm.c:679 +msgid "passwd program" +msgstr "ƒpƒXƒ[ƒh ƒvƒƒOƒ‰ƒ€" + +#: param/loadparm.c:680 +msgid "passwd chat" +msgstr "ƒpƒXƒ[ƒh ƒ`ƒƒƒbƒg" + +#: param/loadparm.c:681 +msgid "passwd chat debug" +msgstr "ƒpƒXƒ[ƒh ƒ`ƒƒƒbƒg ƒfƒoƒbƒO" + +#: param/loadparm.c:682 +msgid "username map" +msgstr "ƒ†[ƒU–¼ƒ}ƒbƒv" + +#: param/loadparm.c:683 +msgid "password level" +msgstr "ƒpƒXƒ[ƒh ƒŒƒxƒ‹" + +#: param/loadparm.c:684 +msgid "username level" +msgstr "ƒ†[ƒU–¼ƒŒƒxƒ‹" + +#: param/loadparm.c:685 +msgid "unix password sync" +msgstr "unix ƒpƒXƒ[ƒh‚𓯊ú‚³‚¹‚é" + +#: param/loadparm.c:686 +msgid "restrict anonymous" +msgstr "“½–¼ƒAƒNƒZƒX‚̧ŒÀ" + +#: param/loadparm.c:687 +msgid "lanman auth" +msgstr "" + +#: param/loadparm.c:688 +msgid "ntlm auth" +msgstr "" + +#: param/loadparm.c:689 +msgid "plaintext to smbpasswd" +msgstr "" + +#: param/loadparm.c:690 +msgid "use rhosts" +msgstr "rhosts ‚ğg‚¤" + +#: param/loadparm.c:692 +msgid "username" +msgstr "ƒ†[ƒU–¼" + +#: param/loadparm.c:693 +msgid "user" +msgstr "ƒ†[ƒU" + +#: param/loadparm.c:694 +msgid "users" +msgstr "ƒ†[ƒU" + +#: param/loadparm.c:696 +msgid "guest account" +msgstr "ƒQƒXƒg ƒAƒJƒEƒ“ƒg" + +#: param/loadparm.c:697 +msgid "invalid users" +msgstr "–³Œø‚ȃ†[ƒU" + +#: param/loadparm.c:698 +msgid "valid users" +msgstr "—LŒø‚ȃ†[ƒU" + +#: param/loadparm.c:699 +msgid "admin users" +msgstr "ŠÇ—ƒ†[ƒU" + +#: param/loadparm.c:700 +msgid "read list" +msgstr "“Ç‚İæ‚胊ƒXƒg" + +#: param/loadparm.c:701 +msgid "write list" +msgstr "‘‚«‚݃ŠƒXƒg" + +#: param/loadparm.c:702 +#, fuzzy +msgid "printer admin" +msgstr "ƒvƒŠƒ“ƒ^–¼" + +#: param/loadparm.c:703 +msgid "force user" +msgstr "‹§‚·‚郆[ƒU" + +#: param/loadparm.c:704 +msgid "force group" +msgstr "‹§‚·‚éƒOƒ‹[ƒv" + +#: param/loadparm.c:705 +msgid "group" +msgstr "ƒOƒ‹[ƒv" + +#: param/loadparm.c:707 +msgid "read only" +msgstr "“Ç‚İæ‚è‚Ì‚İ" + +#: param/loadparm.c:708 +msgid "write ok" +msgstr "‘‚«‚݉Â" + +#: param/loadparm.c:709 +msgid "writeable" +msgstr "‘‚«‚݉Â" + +#: param/loadparm.c:710 +msgid "writable" +msgstr "‘‚«‚݉Â" + +#: param/loadparm.c:712 +msgid "create mask" +msgstr "쬂Ƀ}ƒXƒN" + +#: param/loadparm.c:713 +msgid "create mode" +msgstr "쬂̃‚[ƒh" + +#: param/loadparm.c:714 +msgid "force create mode" +msgstr "‹§‚·‚é쬂̃‚[ƒh" + +#: param/loadparm.c:715 +msgid "security mask" +msgstr "ƒZƒLƒ…ƒŠƒeƒB ƒ}ƒXƒN" + +#: param/loadparm.c:716 +msgid "force security mode" +msgstr "‹§‚·‚éƒZƒLƒ…ƒŠƒeƒB ƒ‚[ƒh" + +#: param/loadparm.c:717 +msgid "directory mask" +msgstr "ƒfƒBƒŒƒNƒgƒŠ ƒ}ƒXƒN" + +#: param/loadparm.c:718 +msgid "directory mode" +msgstr "ƒfƒBƒŒƒNƒgƒŠ ƒ‚[ƒh" + +#: param/loadparm.c:719 +msgid "force directory mode" +msgstr "‹§‚·‚éƒfƒBƒŒƒNƒgƒŠ ƒ‚[ƒh" + +#: param/loadparm.c:720 +msgid "directory security mask" +msgstr "ƒfƒBƒŒƒNƒgƒŠ‚̃ZƒLƒ…ƒŠƒeƒB ƒ}ƒXƒN" + +#: param/loadparm.c:721 +msgid "force directory security mode" +msgstr "‹§‚·‚éƒfƒBƒŒƒNƒgƒŠ‚̃ZƒLƒ…ƒŠƒeƒB ƒ‚[ƒh" + +#: param/loadparm.c:722 +msgid "inherit permissions" +msgstr "ƒp[ƒ~ƒbƒVƒ‡ƒ“‚ğŒp³" + +#: param/loadparm.c:723 +msgid "guest only" +msgstr "ƒQƒXƒg‚Ì‚İ" + +#: param/loadparm.c:724 +msgid "only guest" +msgstr "ƒQƒXƒg‚Ì‚İ" + +#: param/loadparm.c:726 +msgid "guest ok" +msgstr "ƒQƒXƒg‰Â" + +#: param/loadparm.c:727 +msgid "public" +msgstr "ƒpƒuƒŠƒbƒN" + +#: param/loadparm.c:729 +msgid "only user" +msgstr "ƒ†[ƒU‚Ì‚İ" + +#: param/loadparm.c:730 +msgid "hosts allow" +msgstr "‹–‰Â‚·‚éƒzƒXƒg" + +#: param/loadparm.c:731 +msgid "allow hosts" +msgstr "‹–‰Â‚·‚éƒzƒXƒg" + +#: param/loadparm.c:732 +msgid "hosts deny" +msgstr "‹‘”Û‚·‚éƒzƒXƒg" + +#: param/loadparm.c:733 +msgid "deny hosts" +msgstr "‹‘”Û‚·‚éƒzƒXƒg" + +#: param/loadparm.c:736 +msgid "Secure Socket Layer Options" +msgstr "ƒZƒLƒ…ƒA ƒ\\ƒPƒbƒg ƒŒƒCƒA[ ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:737 +msgid "ssl" +msgstr "ssl" + +#: param/loadparm.c:739 +msgid "ssl hosts" +msgstr "ssl ƒzƒXƒg" + +#: param/loadparm.c:740 +msgid "ssl hosts resign" +msgstr "ssl –¢g—pƒzƒXƒg" + +#: param/loadparm.c:741 +msgid "ssl CA certDir" +msgstr "ssl CA ”F؃fƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:742 +msgid "ssl CA certFile" +msgstr "ssl CA ”F؃tƒ@ƒCƒ‹" + +#: param/loadparm.c:743 +msgid "ssl server cert" +msgstr "ssl ƒT[ƒo”FØ" + +#: param/loadparm.c:744 +msgid "ssl server key" +msgstr "ssl ƒT[ƒoŒ®" + +#: param/loadparm.c:745 +msgid "ssl client cert" +msgstr "ssl ƒNƒ‰ƒCƒAƒ“ƒg”FØ" + +#: param/loadparm.c:746 +msgid "ssl client key" +msgstr "ssl ƒNƒ‰ƒCƒAƒ“ƒgŒ®" + +#: param/loadparm.c:747 +msgid "ssl require clientcert" +msgstr "ssl ƒNƒ‰ƒCƒAƒ“ƒg”FØ‚ğ—v‹" + +#: param/loadparm.c:748 +msgid "ssl require servercert" +msgstr "ssl ƒT[ƒo”FØ‚ğ—v‹" + +#: param/loadparm.c:749 +msgid "ssl ciphers" +msgstr "ssl ˆÃ†" + +#: param/loadparm.c:750 +msgid "ssl version" +msgstr "ssl ƒo[ƒWƒ‡ƒ“" + +#: param/loadparm.c:751 +msgid "ssl compatibility" +msgstr "ssl ŒİŠ·«" + +#: param/loadparm.c:754 +msgid "Logging Options" +msgstr "ƒƒMƒ“ƒO ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:755 +msgid "log level" +msgstr "ƒƒO ƒŒƒxƒ‹" + +#: param/loadparm.c:756 +#, fuzzy +msgid "debuglevel" +msgstr "ƒfƒoƒbƒOƒŒƒxƒ‹" + +#: param/loadparm.c:757 +msgid "syslog" +msgstr "syslog" + +#: param/loadparm.c:758 +msgid "syslog only" +msgstr "syslog ‚Ì‚İ" + +#: param/loadparm.c:759 +msgid "log file" +msgstr "ƒƒO ƒtƒ@ƒCƒ‹" + +#: param/loadparm.c:761 +msgid "max log size" +msgstr "ő僃O ƒTƒCƒY" + +#: param/loadparm.c:762 +msgid "timestamp logs" +msgstr "ƒ^ƒCƒ€ƒXƒ^ƒ“ƒv ƒƒO" + +#: param/loadparm.c:763 +msgid "debug timestamp" +msgstr "ƒfƒoƒbƒO ƒ^ƒCƒ€ƒXƒ^ƒ“ƒv" + +#: param/loadparm.c:764 +#, fuzzy +msgid "debug hires timestamp" +msgstr "ƒfƒoƒbƒO ƒ^ƒCƒ€ƒXƒ^ƒ“ƒv" + +#: param/loadparm.c:765 +msgid "debug pid" +msgstr "ƒfƒoƒbƒO pid" + +#: param/loadparm.c:766 +msgid "debug uid" +msgstr "ƒfƒoƒbƒO uid" + +#: param/loadparm.c:768 +msgid "Protocol Options" +msgstr "ƒvƒƒgƒRƒ‹ ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:770 +msgid "protocol" +msgstr "ƒvƒƒgƒRƒ‹" + +#: param/loadparm.c:771 +msgid "large readwrite" +msgstr "" + +#: param/loadparm.c:772 +#, fuzzy +msgid "max protocol" +msgstr "ƒvƒƒgƒRƒ‹" + +#: param/loadparm.c:773 +#, fuzzy +msgid "min protocol" +msgstr "ƒvƒƒgƒRƒ‹" + +#: param/loadparm.c:774 +msgid "unicode" +msgstr "" + +#: param/loadparm.c:775 +msgid "read bmpx" +msgstr "bmpx “Ç‚İo‚µ" + +#: param/loadparm.c:776 +msgid "read raw" +msgstr "raw “Ç‚İo‚µ" + +#: param/loadparm.c:777 +msgid "write raw" +msgstr "raw ‘‚«‚İ" + +#: param/loadparm.c:779 +msgid "nt smb support" +msgstr "nt smb ƒTƒ|[ƒg" + +#: param/loadparm.c:780 +msgid "nt pipe support" +msgstr "nt pipe ƒTƒ|[ƒg" + +#: param/loadparm.c:781 +msgid "nt acl support" +msgstr "nt acl ƒTƒ|[ƒg" + +#: param/loadparm.c:782 +msgid "announce version" +msgstr "ƒAƒiƒEƒ“ƒX ƒo[ƒWƒ‡ƒ“" + +#: param/loadparm.c:783 +msgid "announce as" +msgstr "ƒAƒiƒEƒ“ƒX‚·‚éí—Ş" + +#: param/loadparm.c:784 +msgid "max mux" +msgstr "Å‘å mux" + +#: param/loadparm.c:785 +msgid "max xmit" +msgstr "Å‘å xmit" + +#: param/loadparm.c:787 +msgid "name resolve order" +msgstr "–¼‘O‰ğŒˆ‚̇”Ô" + +#: param/loadparm.c:788 +msgid "max packet" +msgstr "Å‘åƒpƒPƒbƒg" + +#: param/loadparm.c:789 +msgid "packet size" +msgstr "ƒpƒPƒbƒg ƒTƒCƒY" + +#: param/loadparm.c:790 +msgid "max ttl" +msgstr "Å‘å ttl" + +#: param/loadparm.c:791 +msgid "max wins ttl" +msgstr "Å‘å wins ttl" + +#: param/loadparm.c:792 +msgid "min wins ttl" +msgstr "Ŭ wins ttl" + +#: param/loadparm.c:793 +msgid "time server" +msgstr "ƒ^ƒCƒ€ ƒT[ƒo" + +#: param/loadparm.c:795 +msgid "Tuning Options" +msgstr "ƒ`ƒ…[ƒjƒ“ƒO ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:797 +msgid "change notify timeout" +msgstr "XV’Ê’m‚ÌŠÔŠu" + +#: param/loadparm.c:798 +msgid "deadtime" +msgstr "Ø’f‚Ü‚Å‚ÌŠÔ" + +#: param/loadparm.c:799 +msgid "getwd cache" +msgstr "getwd ƒLƒƒƒbƒVƒ…" + +#: param/loadparm.c:800 +msgid "keepalive" +msgstr "" + +#: param/loadparm.c:802 +msgid "lpq cache time" +msgstr "lpq ƒLƒƒƒbƒVƒ…ŠÔ" + +#: param/loadparm.c:803 +msgid "max smbd processes" +msgstr "" + +#: param/loadparm.c:804 +msgid "max connections" +msgstr "Å‘åÚ‘±”" + +#: param/loadparm.c:805 +#, fuzzy +msgid "paranoid server security" +msgstr "ƒ†[ƒU’ljÁƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:806 +msgid "max disk size" +msgstr "Å‘åƒfƒBƒXƒN ƒTƒCƒY" + +#: param/loadparm.c:807 +msgid "max open files" +msgstr "Å‘åƒtƒ@ƒCƒ‹ ƒI[ƒvƒ“”" + +#: param/loadparm.c:808 +msgid "min print space" +msgstr "ŬˆóüƒXƒy[ƒX" + +#: param/loadparm.c:809 +msgid "read size" +msgstr "“Ç‚İæ‚èƒTƒCƒY" + +#: param/loadparm.c:811 +msgid "socket options" +msgstr "ƒ\\ƒPƒbƒg ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:812 +msgid "stat cache size" +msgstr "stat ƒLƒƒƒbƒVƒ… ƒTƒCƒY" + +#: param/loadparm.c:813 +#, fuzzy +msgid "strict allocate" +msgstr "Œµ–§‚ȃƒbƒN" + +#: param/loadparm.c:814 +msgid "strict sync" +msgstr "Œµ–§‚È sync" + +#: param/loadparm.c:815 +msgid "sync always" +msgstr "í‚É sync" + +#: param/loadparm.c:816 +#, fuzzy +msgid "use mmap" +msgstr "ƒ†[ƒU–¼ƒ}ƒbƒv" + +#: param/loadparm.c:817 +msgid "hostname lookups" +msgstr "" + +#: param/loadparm.c:818 +msgid "write cache size" +msgstr "‘‚«‚݃LƒƒƒbƒVƒ… ƒTƒCƒY" + +#: param/loadparm.c:820 +msgid "Printing Options" +msgstr "ˆóüƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:822 +#, fuzzy +msgid "total print jobs" +msgstr "ƒvƒŠƒ“ƒ^‚ğƒ[ƒh" + +#: param/loadparm.c:823 +#, fuzzy +msgid "max print jobs" +msgstr "ˆóü‰Â" + +#: param/loadparm.c:824 +msgid "load printers" +msgstr "ƒvƒŠƒ“ƒ^‚ğƒ[ƒh" + +#: param/loadparm.c:825 +msgid "printcap name" +msgstr "printcap –¼" + +#: param/loadparm.c:826 +msgid "printcap" +msgstr "printcap" + +#: param/loadparm.c:827 +msgid "printable" +msgstr "ˆóü‰Â" + +#: param/loadparm.c:828 +msgid "print ok" +msgstr "ˆóü‰Â" + +#: param/loadparm.c:829 +msgid "postscript" +msgstr "ƒ|ƒXƒgƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:830 +msgid "printing" +msgstr "ˆóü•û–@" + +#: param/loadparm.c:831 +msgid "print command" +msgstr "ˆóüƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:832 +msgid "disable spoolss" +msgstr "" + +#: param/loadparm.c:833 +msgid "lpq command" +msgstr "lpq ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:834 +msgid "lprm command" +msgstr "lprm ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:835 +msgid "lppause command" +msgstr "lppause ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:836 +msgid "lpresume command" +msgstr "lpresume ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:837 +msgid "queuepause command" +msgstr "ƒLƒ…[’â~ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:838 +msgid "queueresume command" +msgstr "ƒLƒ…[ÄŠJƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:840 +#, fuzzy +msgid "enumports command" +msgstr "ˆóüƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:841 +#, fuzzy +msgid "addprinter command" +msgstr "ˆóüƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:842 +#, fuzzy +msgid "deleteprinter command" +msgstr "ˆóüƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:843 +#, fuzzy +msgid "show add printer wizard" +msgstr "ƒvƒŠƒ“ƒ^‚ğƒ[ƒh" + +#: param/loadparm.c:844 +#, fuzzy +msgid "os2 driver map" +msgstr "ƒz[ƒ€ƒfƒBƒŒƒNƒgƒŠ ƒ}ƒbƒv" + +#: param/loadparm.c:846 +msgid "printer name" +msgstr "ƒvƒŠƒ“ƒ^–¼" + +#: param/loadparm.c:847 +msgid "printer" +msgstr "ƒvƒŠƒ“ƒ^" + +#: param/loadparm.c:848 +#, fuzzy +msgid "use client driver" +msgstr "ssl ƒNƒ‰ƒCƒAƒ“ƒg”FØ" + +#: param/loadparm.c:849 +msgid "printer driver" +msgstr "ƒvƒŠƒ“ƒ^ ƒhƒ‰ƒCƒo" + +#: param/loadparm.c:850 +msgid "printer driver file" +msgstr "ƒvƒŠƒ“ƒ^ ƒhƒ‰ƒCƒo ƒtƒ@ƒCƒ‹" + +#: param/loadparm.c:851 +msgid "printer driver location" +msgstr "ƒvƒŠƒ“ƒ^ ƒhƒ‰ƒCƒo‚ÌêŠ" + +#: param/loadparm.c:853 +msgid "Filename Handling" +msgstr "ƒtƒ@ƒCƒ‹–¼‚Ì戵" + +#: param/loadparm.c:854 +msgid "strip dot" +msgstr "ƒhƒbƒg‚ğí‚é" + +#: param/loadparm.c:856 +msgid "mangled stack" +msgstr "–¼‘O•ÏŠ·—pƒXƒ^ƒbƒN" + +#: param/loadparm.c:857 +msgid "default case" +msgstr "Šù’è‚Ì•¶š‚Ì‘å¬" + +#: param/loadparm.c:858 +msgid "case sensitive" +msgstr "‘å/¬•¶š‚Ì‹æ•Ê" + +#: param/loadparm.c:859 +msgid "casesignames" +msgstr "‘å/¬•¶š‚Ì‹æ•Ê" + +#: param/loadparm.c:860 +msgid "preserve case" +msgstr "•¶š‚̑嬂ğ•Û‘¶" + +#: param/loadparm.c:861 +msgid "short preserve case" +msgstr "’ZŒ`®‚Å•¶š‚̑嬂ğ•Û‘¶" + +#: param/loadparm.c:862 +msgid "mangle case" +msgstr "‘å/¬•¶š‚Ì•ÏŠ·" + +#: param/loadparm.c:863 +msgid "mangling char" +msgstr "•ÏŠ·—p•¶š" + +#: param/loadparm.c:864 +msgid "hide dot files" +msgstr "ƒhƒbƒgƒtƒ@ƒCƒ‹‚ğ‰B‚·" + +#: param/loadparm.c:865 +msgid "hide unreadable" +msgstr "" + +#: param/loadparm.c:866 +msgid "delete veto files" +msgstr "‹‘”Ûƒtƒ@ƒCƒ‹‚ğíœ" + +#: param/loadparm.c:867 +msgid "veto files" +msgstr "‹‘”Ûƒtƒ@ƒCƒ‹" + +#: param/loadparm.c:868 +msgid "hide files" +msgstr "‰B‚µƒtƒ@ƒCƒ‹" + +#: param/loadparm.c:869 +msgid "veto oplock files" +msgstr "oplock ‚ğ‹Ö~‚·‚éƒtƒ@ƒCƒ‹" + +#: param/loadparm.c:870 +msgid "map system" +msgstr "ƒVƒXƒeƒ€‘®«‚Ƀ}ƒbƒv" + +#: param/loadparm.c:871 +msgid "map hidden" +msgstr "‰B‚µ‘®«‚Ƀ}ƒbƒv" + +#: param/loadparm.c:872 +msgid "map archive" +msgstr "ƒA[ƒJƒCƒu‘®«‚Ƀ}ƒbƒv" + +#: param/loadparm.c:873 +msgid "mangled names" +msgstr "•ÏŠ·‚µ‚½–¼‘O‚Å•\\¦" + +#: param/loadparm.c:874 +msgid "mangled map" +msgstr "•ÏŠ·ƒ}ƒbƒv" + +#: param/loadparm.c:875 +msgid "stat cache" +msgstr "stat ƒLƒƒƒbƒVƒ…" + +#: param/loadparm.c:877 +msgid "Domain Options" +msgstr "ƒhƒƒCƒ“ ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:879 +msgid "domain admin group" +msgstr "ƒhƒƒCƒ“ŠÇ—ƒOƒ‹[ƒv" + +#: param/loadparm.c:880 +msgid "domain guest group" +msgstr "ƒhƒƒCƒ“ ƒQƒXƒg ƒOƒ‹[ƒv" + +#: param/loadparm.c:883 +msgid "groupname map" +msgstr "ƒOƒ‹[ƒv–¼ƒ}ƒbƒv" + +#: param/loadparm.c:886 +msgid "machine password timeout" +msgstr "ƒ}ƒVƒ“ ƒpƒXƒ[ƒh ƒ^ƒCƒ€ƒAƒEƒg" + +#: param/loadparm.c:888 +msgid "Logon Options" +msgstr "ƒƒOƒIƒ“ ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:890 +msgid "add user script" +msgstr "ƒ†[ƒU’ljÁƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:891 +msgid "delete user script" +msgstr "ƒ†[ƒU휃XƒNƒŠƒvƒg" + +#: param/loadparm.c:892 +#, fuzzy +msgid "add group script" +msgstr "ƒ†[ƒU’ljÁƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:893 +#, fuzzy +msgid "delete group script" +msgstr "ƒ†[ƒU휃XƒNƒŠƒvƒg" + +#: param/loadparm.c:894 +#, fuzzy +msgid "add user to group script" +msgstr "ƒ†[ƒU’ljÁƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:895 +#, fuzzy +msgid "delete user from group script" +msgstr "ƒ†[ƒU휃XƒNƒŠƒvƒg" + +#: param/loadparm.c:896 +#, fuzzy +msgid "add machine script" +msgstr "ƒ†[ƒU’ljÁƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:897 +#, fuzzy +msgid "shutdown script" +msgstr "ƒƒOƒIƒ“ ƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:898 +#, fuzzy +msgid "abort shutdown script" +msgstr "ƒƒOƒIƒ“ ƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:900 +msgid "logon script" +msgstr "ƒƒOƒIƒ“ ƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:901 +msgid "logon path" +msgstr "ƒƒOƒIƒ“ ƒpƒX" + +#: param/loadparm.c:902 +msgid "logon drive" +msgstr "ƒƒOƒIƒ“ ƒhƒ‰ƒCƒu" + +#: param/loadparm.c:903 +msgid "logon home" +msgstr "ƒƒOƒIƒ“ ƒz[ƒ€" + +#: param/loadparm.c:904 +msgid "domain logons" +msgstr "ƒhƒƒCƒ“ ƒƒOƒIƒ“" + +#: param/loadparm.c:906 +msgid "Browse Options" +msgstr "ƒRƒ“ƒsƒ…[ƒ^ˆê——•\\¦ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:908 +msgid "os level" +msgstr "os ƒŒƒxƒ‹" + +#: param/loadparm.c:909 +msgid "lm announce" +msgstr "lm ƒAƒiƒEƒ“ƒX" + +#: param/loadparm.c:910 +msgid "lm interval" +msgstr "lm ŠÔŠu" + +#: param/loadparm.c:911 +msgid "preferred master" +msgstr "—Dæ‚·‚éƒ}ƒXƒ^" + +#: param/loadparm.c:912 +msgid "prefered master" +msgstr "—Dæ‚·‚éƒ}ƒXƒ^" + +#: param/loadparm.c:913 +msgid "local master" +msgstr "ƒ[ƒJƒ‹ ƒ}ƒXƒ^" + +#: param/loadparm.c:914 +msgid "domain master" +msgstr "ƒhƒƒCƒ“ ƒ}ƒXƒ^" + +#: param/loadparm.c:915 +msgid "browse list" +msgstr "ƒuƒ‰ƒEƒY ƒŠƒXƒg" + +#: param/loadparm.c:916 +msgid "browseable" +msgstr "ƒuƒ‰ƒEƒY‰Â" + +#: param/loadparm.c:917 +msgid "browsable" +msgstr "ƒuƒ‰ƒEƒY‰Â" + +#: param/loadparm.c:918 +msgid "enhanced browsing" +msgstr "" + +#: param/loadparm.c:920 +msgid "WINS Options" +msgstr "WINSƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:921 +msgid "dns proxy" +msgstr "dns ƒvƒƒLƒV" + +#: param/loadparm.c:922 +msgid "wins proxy" +msgstr "wins ƒvƒƒLƒV" + +#: param/loadparm.c:924 +msgid "wins server" +msgstr "wins ƒT[ƒo" + +#: param/loadparm.c:925 +msgid "wins support" +msgstr "wins ƒTƒ|[ƒg" + +#: param/loadparm.c:926 +msgid "wins hook" +msgstr "wins ƒtƒbƒN" + +#: param/loadparm.c:928 +msgid "Locking Options" +msgstr "ƒƒbƒLƒ“ƒO ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:930 +#, fuzzy +msgid "blocking locks" +msgstr "ƒƒbƒN" + +#: param/loadparm.c:931 +msgid "fake oplocks" +msgstr "‹U‘• oplock" + +#: param/loadparm.c:932 +msgid "kernel oplocks" +msgstr "ƒJ[ƒlƒ‹ oplock" + +#: param/loadparm.c:933 +msgid "locking" +msgstr "ƒƒbƒN" + +#: param/loadparm.c:935 +msgid "oplocks" +msgstr "•Ö‹X“IƒƒbƒN" + +#: param/loadparm.c:936 +msgid "level2 oplocks" +msgstr "level2 oplocks" + +#: param/loadparm.c:937 +msgid "oplock break wait time" +msgstr "oplock ’†’f‚Ì‘Ò‚¿ŠÔ" + +#: param/loadparm.c:938 +msgid "oplock contention limit" +msgstr "oplock ‹£‡‚ÌŒÀ“x" + +#: param/loadparm.c:939 +#, fuzzy +msgid "posix locking" +msgstr "Œµ–§‚ȃƒbƒN" + +#: param/loadparm.c:940 +msgid "strict locking" +msgstr "Œµ–§‚ȃƒbƒN" + +#: param/loadparm.c:941 +msgid "share modes" +msgstr "‹¤—Lƒ‚[ƒh" + +#: param/loadparm.c:944 +msgid "Ldap Options" +msgstr "Ldap ƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:946 +msgid "ldap server" +msgstr "ldap ƒT[ƒo" + +#: param/loadparm.c:947 +msgid "ldap port" +msgstr "ldap ƒ|[ƒg" + +#: param/loadparm.c:948 +msgid "ldap suffix" +msgstr "lpad ƒTƒtƒBƒbƒNƒX" + +#: param/loadparm.c:949 +msgid "ldap filter" +msgstr "ldap ƒtƒBƒ‹ƒ^[" + +#: param/loadparm.c:950 +msgid "ldap root" +msgstr "ldap ƒ‹[ƒg" + +#: param/loadparm.c:951 +msgid "ldap root passwd" +msgstr "ldap ƒ‹[ƒg ƒpƒXƒ[ƒh" + +#: param/loadparm.c:954 +msgid "Miscellaneous Options" +msgstr "‚»‚Ì‘¼‚̃IƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:955 +#, fuzzy +msgid "add share command" +msgstr "dfree ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:956 +#, fuzzy +msgid "change share command" +msgstr "ƒƒbƒZ[ƒW ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:957 +#, fuzzy +msgid "delete share command" +msgstr "ƒƒbƒZ[ƒW ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:959 +msgid "config file" +msgstr "İ’èƒtƒ@ƒCƒ‹" + +#: param/loadparm.c:960 +msgid "preload" +msgstr "ƒvƒŠƒ[ƒh" + +#: param/loadparm.c:961 +msgid "auto services" +msgstr "©“®ƒT[ƒrƒX" + +#: param/loadparm.c:962 +msgid "lock dir" +msgstr "ƒƒbƒN ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:963 +msgid "lock directory" +msgstr "ƒƒbƒN ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:965 +msgid "utmp directory" +msgstr "utmp ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:966 +#, fuzzy +msgid "wtmp directory" +msgstr "utmp ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:967 +#, fuzzy +msgid "utmp" +msgstr "utmp ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:970 +msgid "default service" +msgstr "Šù’èƒT[ƒrƒX" + +#: param/loadparm.c:971 +msgid "default" +msgstr "Šù’è" + +#: param/loadparm.c:972 +msgid "message command" +msgstr "ƒƒbƒZ[ƒW ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:973 +msgid "dfree command" +msgstr "dfree ƒRƒ}ƒ“ƒh" + +#: param/loadparm.c:974 +msgid "remote announce" +msgstr "ƒŠƒ‚[ƒg ƒAƒiƒEƒ“ƒX" + +#: param/loadparm.c:975 +msgid "remote browse sync" +msgstr "ƒŠƒ‚[ƒg‚̃uƒ‰ƒEƒYƒŠƒXƒg‚𓯊ú" + +#: param/loadparm.c:976 +msgid "socket address" +msgstr "ƒ\\ƒPƒbƒg ƒAƒhƒŒƒX" + +#: param/loadparm.c:977 +msgid "homedir map" +msgstr "ƒz[ƒ€ƒfƒBƒŒƒNƒgƒŠ ƒ}ƒbƒv" + +#: param/loadparm.c:978 +msgid "time offset" +msgstr "ŠÔƒIƒtƒZƒbƒg" + +#: param/loadparm.c:979 +msgid "NIS homedir" +msgstr "NIS ƒz[ƒ€ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:980 +msgid "-valid" +msgstr "-valid" + +#: param/loadparm.c:982 +msgid "copy" +msgstr "ƒRƒs[" + +#: param/loadparm.c:983 +msgid "include" +msgstr "ƒCƒ“ƒNƒ‹[ƒh" + +#: param/loadparm.c:984 +msgid "exec" +msgstr "Às" + +#: param/loadparm.c:985 +msgid "preexec" +msgstr "Ú‘±‚ÉÀs" + +#: param/loadparm.c:987 +#, fuzzy +msgid "preexec close" +msgstr "Ú‘±‚ÉÀs" + +#: param/loadparm.c:988 +msgid "postexec" +msgstr "Ø’f‚ÉÀs" + +#: param/loadparm.c:989 +msgid "root preexec" +msgstr "ƒ‹[ƒg‚ÅÚ‘±Às" + +#: param/loadparm.c:990 +#, fuzzy +msgid "root preexec close" +msgstr "ƒ‹[ƒg‚ÅÚ‘±Às" + +#: param/loadparm.c:991 +msgid "root postexec" +msgstr "ƒ‹[ƒg‚ÅØ’fÀs" + +#: param/loadparm.c:992 +msgid "available" +msgstr "—˜—p‰Â”\\" + +#: param/loadparm.c:993 +msgid "volume" +msgstr "ƒ{ƒŠƒ…[ƒ€" + +#: param/loadparm.c:994 +msgid "fstype" +msgstr "ƒtƒ@ƒCƒ‹ ƒVƒXƒeƒ€ ƒ^ƒCƒv" + +#: param/loadparm.c:995 +#, fuzzy +msgid "set directory" +msgstr "ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:996 +msgid "source environment" +msgstr "" + +#: param/loadparm.c:997 +msgid "wide links" +msgstr "L‚ƒŠƒ“ƒN" + +#: param/loadparm.c:998 +msgid "follow symlinks" +msgstr "symlink æ‚ğQÆ" + +#: param/loadparm.c:999 +msgid "dont descend" +msgstr "‰º‚É~‚è‚È‚¢ƒfƒBƒŒƒNƒgƒŠ" + +#: param/loadparm.c:1000 +msgid "magic script" +msgstr "ƒ}ƒWƒbƒN ƒXƒNƒŠƒvƒg" + +#: param/loadparm.c:1001 +msgid "magic output" +msgstr "ƒ}ƒWƒbƒN o—Í" + +#: param/loadparm.c:1002 +msgid "delete readonly" +msgstr "“Ç‚İæ‚è‚݂̂̃tƒ@ƒCƒ‹‚ğíœ" + +#: param/loadparm.c:1003 +#, fuzzy +msgid "dos filemode" +msgstr "dos ‚̃tƒ@ƒCƒ‹" + +#: param/loadparm.c:1004 +msgid "dos filetimes" +msgstr "dos ‚̃tƒ@ƒCƒ‹" + +#: param/loadparm.c:1005 +msgid "dos filetime resolution" +msgstr "dos ‚̃tƒ@ƒCƒ‹‚Ì•ª‰ğ”\\" + +#: param/loadparm.c:1007 +msgid "fake directory create times" +msgstr "‹U‚̃fƒBƒŒƒNƒgƒŠì¬" + +#: param/loadparm.c:1008 +msgid "panic action" +msgstr "ƒpƒjƒbƒN ƒAƒNƒVƒ‡ƒ“" + +#: param/loadparm.c:1009 +#, fuzzy +msgid "hide local users" +msgstr "ƒ[ƒJƒ‹ ƒ}ƒXƒ^" + +#: param/loadparm.c:1012 +msgid "VFS options" +msgstr "VFSƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:1014 +msgid "vfs object" +msgstr "" + +#: param/loadparm.c:1015 +#, fuzzy +msgid "vfs options" +msgstr "VFSƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:1018 +#, fuzzy +msgid "msdfs root" +msgstr "ldap ƒ‹[ƒg" + +#: param/loadparm.c:1019 +#, fuzzy +msgid "host msdfs" +msgstr "‹‘”Û‚·‚éƒzƒXƒg" + +#: param/loadparm.c:1021 +msgid "Winbind options" +msgstr "WinbindƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:1023 +#, fuzzy +msgid "winbind uid" +msgstr "WinbindƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:1024 +#, fuzzy +msgid "winbind gid" +msgstr "WinbindƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:1025 +msgid "template homedir" +msgstr "" + +#: param/loadparm.c:1026 +msgid "template shell" +msgstr "" + +#: param/loadparm.c:1027 +#, fuzzy +msgid "winbind separator" +msgstr "WinbindƒIƒvƒVƒ‡ƒ“" + +#: param/loadparm.c:1028 +#, fuzzy +msgid "winbind cache time" +msgstr "lpq ƒLƒƒƒbƒVƒ…ŠÔ" + +#: param/loadparm.c:1029 +#, fuzzy +msgid "winbind enum users" +msgstr "–³Œø‚ȃ†[ƒU" + +#: param/loadparm.c:1030 +msgid "winbind enum groups" +msgstr "" + +#~ msgid "failed to open %s for writing\n" +#~ msgstr "%s ‚ğ‘‚«‚İ—p‚ɃI[ƒvƒ“‚Å‚«‚Ü‚¹‚ñ\n" + +#~ msgid "Can't reload %s\n" +#~ msgstr "%s ‚ğÄ“Ç‚İ‚İ‚Å‚«‚Ü‚¹‚ñ\n" + +#~ msgid "Can't setup password database vectors.\n" +#~ msgstr "ƒpƒXƒ[ƒhEƒf[ƒ^ƒx[ƒX‚ªŒ©‚‚¯‚ç‚ê‚Ü‚¹‚ñ\n" + +#~ msgid "You need to have status=yes in your smb config file\n" +#~ msgstr "smb.conf ‚Å status=yes ‚ğݒ肵‚Ä‚‚¾‚³‚¢\n" + +#~ msgid "coding system" +#~ msgstr "ƒR[ƒfƒBƒ“ƒO ƒVƒXƒeƒ€" + +#~ msgid "client code page" +#~ msgstr "ƒNƒ‰ƒCƒAƒ“ƒg ƒR[ƒhƒy[ƒW" + +#~ msgid "revalidate" +#~ msgstr "Ä”FØ" + +#~ msgid "status" +#~ msgstr "ƒXƒe[ƒ^ƒX" + +#~ msgid "shared mem size" +#~ msgstr "‹¤—Lƒƒ‚ƒŠ ƒTƒCƒY" + +#~ msgid "character set" +#~ msgstr "•¶šƒZƒbƒg" + +#~ msgid "domain groups" +#~ msgstr "ƒhƒƒCƒ“ ƒOƒ‹[ƒv" + +#~ msgid "domain admin users" +#~ msgstr "ƒhƒƒCƒ“ŠÇ—ƒ†[ƒU" + +#~ msgid "domain guest users" +#~ msgstr "ƒhƒƒCƒ“ ƒQƒXƒg ƒ†[ƒU" + +#~ msgid "ole locking compatibility" +#~ msgstr "ole ƒƒbƒN‚̌݊·«" + +#~ msgid "smbrun" +#~ msgstr "smbrun" + +#, fuzzy +#~ msgid "wtmp dir" +#~ msgstr "utmp ƒfƒBƒŒƒNƒgƒŠ" + +#~ msgid "unix realname" +#~ msgstr "unix ‚Ì–{–¼" diff --git a/source3/po/pl.gmo b/source3/po/pl.gmo Binary files differnew file mode 100644 index 0000000000..0821904c31 --- /dev/null +++ b/source3/po/pl.gmo diff --git a/source3/po/pl.po b/source3/po/pl.po new file mode 100644 index 0000000000..1ae8d6e754 --- /dev/null +++ b/source3/po/pl.po @@ -0,0 +1,1760 @@ +# Polish messages for international release of SWAT. +# Copyright (C) YEAR Free Software Foundation, Inc. +# Rafal Szczesniak <mimir@spin.ict.pwr.wroc.pl>, 2001. +# +msgid "" +msgstr "" +"Project-Id-Version: i18n_swat \n" +"POT-Creation-Date: 2001-09-20 20:29+0900\n" +"PO-Revision-Date: 2001-08-15 22:45+02:00\n" +"Last-Translator: Rafal Szczesniak <mimir@spin.ict.pwr.wroc.pl>\n" +"Language-Team: pl\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=iso-8859-2\n" +"Content-Transfer-Encoding: \n" + +#: web/swat.c:120 +#, c-format +msgid "ERROR: Can't open %s\n" +msgstr "B£¡D: Nie mo¿na otworzyæ %s\n" + +#. +#. str = stripspace(parm->label); +#. strlower (str); //monyo +#. d_printf("<tr><td><A HREF=\"/swat/help/smb.conf.5.html#%s\" target=\"docs\">%s</A> %s</td><td>", +#. str, _("Help"), parm->label); +#. +#: web/swat.c:211 +msgid "Help" +msgstr "Pomoc" + +#: web/swat.c:217 web/swat.c:231 web/swat.c:246 web/swat.c:254 web/swat.c:263 +#: web/swat.c:272 web/swat.c:278 web/swat.c:284 web/swat.c:297 +msgid "Set Default" +msgstr "Ustaw domy¶lnie" + +#: web/swat.c:502 +#, c-format +msgid "Logged in as <b>%s</b><p>\n" +msgstr "Zalogowany jako <b>%s</b>\n" + +#: web/swat.c:505 +msgid "Home" +msgstr "Strona domowa" + +#: web/swat.c:507 +msgid "Globals" +msgstr "Ustawienia globalne" + +#: web/swat.c:508 +msgid "Shares" +msgstr "Wspó³udzia³y" + +#: web/swat.c:509 +msgid "Printers" +msgstr "Drukarki" + +#: web/swat.c:512 +msgid "Status" +msgstr "Status" + +#: web/swat.c:513 +msgid "View Config" +msgstr "Przejrzyj Konfiguracjê" + +#: web/swat.c:515 +msgid "Password Management" +msgstr "Zarz±dzanie Has³ami" + +#: web/swat.c:539 +msgid "Current Config" +msgstr "Bie¿±ca Konfiguracja" + +#: web/swat.c:543 +msgid "Normal View" +msgstr "Normalny Widok" + +#: web/swat.c:545 +msgid "Full View" +msgstr "Pe³ny Widok" + +#: web/swat.c:561 +msgid "Global Variables" +msgstr "Zmienne Globalne" + +#: web/swat.c:575 web/swat.c:671 web/swat.c:1014 +msgid "Commit Changes" +msgstr "Potwierd¼ Zmiany" + +#: web/swat.c:579 web/swat.c:674 web/swat.c:1016 +msgid "Reset Values" +msgstr "Zresetuj Warto¶ci" + +#: web/swat.c:581 web/swat.c:676 web/swat.c:1018 +msgid "Advanced View" +msgstr "Widok Zaawansowany" + +#: web/swat.c:583 web/swat.c:678 web/swat.c:1020 +msgid "Basic View" +msgstr "Widok Podstawowy" + +#: web/swat.c:613 +msgid "Share Parameters" +msgstr "Parametry Wspó³udzia³u" + +#: web/swat.c:642 +msgid "Choose Share" +msgstr "Wybierz Wspó³udzia³" + +#: web/swat.c:656 +msgid "Delete Share" +msgstr "Usuñ Wspó³udzia³" + +#: web/swat.c:663 +msgid "Create Share" +msgstr "Utwórz Wspó³udzia³" + +#: web/swat.c:708 +msgid "password change in demo mode rejected\n" +msgstr "zmiana has³a w trybie demo odrzucona\n" + +#: web/swat.c:747 +msgid " Must specify \"User Name\" \n" +msgstr " Musisz podaæ \"Nazwê U¿ytkownika\" \n" + +#: web/swat.c:763 +msgid " Must specify \"Old Password\" \n" +msgstr " Musisz podaæ \"Stare Has³o\" \n" + +#: web/swat.c:769 +msgid " Must specify \"Remote Machine\" \n" +msgstr " Musisz podaæ \"Zdaln± Maszynê\" \n" + +#: web/swat.c:776 +msgid " Must specify \"New, and Re-typed Passwords\" \n" +msgstr " Musisz podaæ \"Nowe Has³o, i ponownie wpisane Nowe Has³o\" \n" + +#: web/swat.c:782 +msgid " Re-typed password didn't match new password\n" +msgstr " Ponownie wpisane has³o nie pasuje do nowego has³a\n" + +#: web/swat.c:812 +#, c-format +msgid " The passwd for '%s' has been changed. \n" +msgstr " Has³o dla '%s' zosta³o zmienione. \n" + +#: web/swat.c:814 +#, c-format +msgid " The passwd for '%s' has NOT been changed. \n" +msgstr " Has³o dla '%s' NIE zosta³o zmienione. \n" + +#: web/swat.c:838 +msgid "Server Password Management" +msgstr "Zarz±dzanie Has³ami na Serwerze" + +#. +#. * Create all the dialog boxes for data collection +#. +#: web/swat.c:847 web/swat.c:894 +msgid " User Name : " +msgstr " Nazwa U¿ytkownika : " + +#: web/swat.c:850 web/swat.c:896 +msgid " Old Password : " +msgstr " Stare Has³o : " + +#: web/swat.c:853 web/swat.c:898 +msgid " New Password : " +msgstr " Nowe Has³o : " + +#: web/swat.c:855 web/swat.c:900 +msgid " Re-type New Password : " +msgstr " Ponownie wpisz Nowe Has³o : " + +#: web/swat.c:863 web/swat.c:911 +msgid "Change Password" +msgstr "Zmieñ Has³o" + +#: web/swat.c:866 +msgid "Add New User" +msgstr "Dodaj Nowego U¿ytkownika" + +#: web/swat.c:868 +msgid "Delete User" +msgstr "Usuñ U¿ytkownika" + +#: web/swat.c:870 +msgid "Disable User" +msgstr "Zablokuj U¿ytkownika" + +#: web/swat.c:872 +msgid "Enable User" +msgstr "Odblokuj U¿ytkownika" + +#: web/swat.c:885 +msgid "Client/Server Password Management" +msgstr "Zarz±dzanie Has³ami Klient/Serwer" + +#: web/swat.c:902 +msgid " Remote Machine : " +msgstr " Zdalna Maszyna : " + +#: web/swat.c:940 +msgid "Printer Parameters" +msgstr "Parametry Drukarki" + +#: web/swat.c:942 +msgid "Important Note:" +msgstr "Wa¿na Informacja:" + +#: web/swat.c:943 +msgid "Printer names marked with [*] in the Choose Printer drop-down box " +msgstr "Nazwy Drukarek zaznaczone [*] w rozwijanym polu Wybierz Drukarkê " + +#: web/swat.c:944 +msgid "are autoloaded printers from " +msgstr "s± drukarkami automatycznie ³adowanymi z " + +#: web/swat.c:945 +msgid "Printcap Name" +msgstr "Nazwa Printcap" + +#: web/swat.c:946 +msgid "Attempting to delete these printers from SWAT will have no effect.\n" +msgstr "Próby usuniêcia tych drukarek ze SWAT nie przynios± efektu.\n" + +#: web/swat.c:980 +msgid "Choose Printer" +msgstr "Wybierz Drukarkê" + +#: web/swat.c:999 +msgid "Delete Printer" +msgstr "Usuñ Drukarkê" + +#: web/swat.c:1006 +msgid "Create Printer" +msgstr "Utwórz Drukarkê" + +#: web/statuspage.c:40 +msgid "DENY_NONE" +msgstr "" + +#: web/statuspage.c:41 +msgid "DENY_ALL " +msgstr "" + +#: web/statuspage.c:42 +msgid "DENY_DOS " +msgstr "" + +#: web/statuspage.c:43 +msgid "DENY_READ " +msgstr "" + +#: web/statuspage.c:44 +msgid "DENY_WRITE " +msgstr "" + +#: web/statuspage.c:50 +msgid "RDONLY " +msgstr "" + +#: web/statuspage.c:51 +msgid "WRONLY " +msgstr "" + +#: web/statuspage.c:52 +msgid "RDWR " +msgstr "" + +#: web/statuspage.c:60 +msgid "EXCLUSIVE+BATCH " +msgstr "" + +#: web/statuspage.c:62 +msgid "EXCLUSIVE " +msgstr "" + +#: web/statuspage.c:64 +msgid "BATCH " +msgstr "" + +#: web/statuspage.c:66 +msgid "LEVEL_II " +msgstr "" + +#: web/statuspage.c:68 +msgid "NONE " +msgstr "" + +#: web/statuspage.c:195 +msgid "Server Status" +msgstr "Status Serwera" + +#: web/statuspage.c:200 +msgid "Auto Refresh" +msgstr "Automatyczne Od¶wie¿anie" + +#: web/statuspage.c:201 web/statuspage.c:206 +msgid "Refresh Interval: " +msgstr "Interwa³ Od¶wie¿ania: " + +#: web/statuspage.c:205 +msgid "Stop Refreshing" +msgstr "Zatrzymaj Od¶wie¿anie" + +#: web/statuspage.c:220 +msgid "version:" +msgstr "wersja:" + +#: web/statuspage.c:223 +msgid "smbd:" +msgstr "" + +#: web/statuspage.c:223 web/statuspage.c:235 +msgid "running" +msgstr "dzia³a" + +#: web/statuspage.c:223 web/statuspage.c:235 +msgid "not running" +msgstr "nie dzia³a" + +#: web/statuspage.c:226 +msgid "Stop smbd" +msgstr "Zatrzymaj smbd" + +#: web/statuspage.c:228 +msgid "Start smbd" +msgstr "Uruchom smbd" + +#: web/statuspage.c:230 +msgid "Restart smbd" +msgstr "Zrestartuj smbd" + +#: web/statuspage.c:235 +msgid "nmbd:" +msgstr "" + +#: web/statuspage.c:238 +msgid "Stop nmbd" +msgstr "Zatrzymaj nmbd" + +#: web/statuspage.c:240 +msgid "Start nmbd" +msgstr "Uruchom nmbd" + +#: web/statuspage.c:242 +msgid "Restart nmbd" +msgstr "Zrestartuj nmbd" + +#: web/statuspage.c:249 +msgid "Active Connections" +msgstr "Aktywne Po³±czenia" + +#: web/statuspage.c:251 web/statuspage.c:264 web/statuspage.c:272 +msgid "PID" +msgstr "" + +#: web/statuspage.c:251 web/statuspage.c:264 +msgid "Client" +msgstr "Klient" + +#: web/statuspage.c:251 +msgid "IP address" +msgstr "adres IP" + +#: web/statuspage.c:251 web/statuspage.c:264 web/statuspage.c:272 +msgid "Date" +msgstr "Data" + +#: web/statuspage.c:253 +msgid "Kill" +msgstr "Zatrzymaj" + +#: web/statuspage.c:261 +msgid "Active Shares" +msgstr "Aktywne Wspó³udzia³y" + +#: web/statuspage.c:264 +msgid "Share" +msgstr "Wspó³udzia³" + +#: web/statuspage.c:264 +msgid "User" +msgstr "U¿ytkownik" + +#: web/statuspage.c:264 +msgid "Group" +msgstr "Grupa" + +#: web/statuspage.c:270 +msgid "Open Files" +msgstr "Otwarte Pliki" + +#: web/statuspage.c:272 +msgid "Sharing" +msgstr "Wspó³dzielenie" + +#: web/statuspage.c:272 +msgid "R/W" +msgstr "" + +#: web/statuspage.c:272 +msgid "Oplock" +msgstr "" + +#: web/statuspage.c:272 +msgid "File" +msgstr "Plik" + +#: param/loadparm.c:641 +msgid "Base Options" +msgstr "Bazowe Opcje" + +#: param/loadparm.c:643 +#, fuzzy +msgid "dos charset" +msgstr "Wybierz Wspó³udzia³" + +#: param/loadparm.c:644 +msgid "unix charset" +msgstr "" + +#: param/loadparm.c:645 +msgid "display charset" +msgstr "" + +#: param/loadparm.c:646 +msgid "comment" +msgstr "" + +#: param/loadparm.c:647 +msgid "path" +msgstr "" + +#: param/loadparm.c:648 +msgid "directory" +msgstr "" + +#: param/loadparm.c:649 +msgid "workgroup" +msgstr "" + +#: param/loadparm.c:650 +msgid "netbios name" +msgstr "" + +#: param/loadparm.c:651 +msgid "netbios aliases" +msgstr "" + +#: param/loadparm.c:652 +msgid "netbios scope" +msgstr "" + +#: param/loadparm.c:653 +msgid "server string" +msgstr "" + +#: param/loadparm.c:654 +#, fuzzy +msgid "interfaces" +msgstr "Drukarki" + +#: param/loadparm.c:655 +msgid "bind interfaces only" +msgstr "" + +#: param/loadparm.c:657 +msgid "Security Options" +msgstr "Opcje Zabezpieczeñ" + +#: param/loadparm.c:659 +msgid "security" +msgstr "" + +#: param/loadparm.c:660 +msgid "encrypt passwords" +msgstr "" + +#: param/loadparm.c:661 +msgid "update encrypted" +msgstr "" + +#: param/loadparm.c:662 +msgid "allow trusted domains" +msgstr "" + +#: param/loadparm.c:663 +msgid "alternate permissions" +msgstr "" + +#: param/loadparm.c:664 +msgid "hosts equiv" +msgstr "" + +#: param/loadparm.c:665 +msgid "min passwd length" +msgstr "" + +#: param/loadparm.c:666 +msgid "min password length" +msgstr "" + +#: param/loadparm.c:667 +msgid "map to guest" +msgstr "" + +#: param/loadparm.c:668 +#, fuzzy +msgid "null passwords" +msgstr "Zmieñ Has³o" + +#: param/loadparm.c:669 +msgid "obey pam restrictions" +msgstr "" + +#: param/loadparm.c:670 +msgid "password server" +msgstr "" + +#: param/loadparm.c:671 +msgid "smb passwd file" +msgstr "" + +#: param/loadparm.c:672 +msgid "private dir" +msgstr "" + +#: param/loadparm.c:673 +msgid "passdb module path" +msgstr "" + +#: param/loadparm.c:674 +msgid "root directory" +msgstr "" + +#: param/loadparm.c:675 +msgid "root dir" +msgstr "" + +#: param/loadparm.c:676 +msgid "root" +msgstr "" + +#: param/loadparm.c:678 +#, fuzzy +msgid "pam password change" +msgstr "Zarz±dzanie Has³ami" + +#: param/loadparm.c:679 +msgid "passwd program" +msgstr "" + +#: param/loadparm.c:680 +msgid "passwd chat" +msgstr "" + +#: param/loadparm.c:681 +msgid "passwd chat debug" +msgstr "" + +#: param/loadparm.c:682 +msgid "username map" +msgstr "" + +#: param/loadparm.c:683 +#, fuzzy +msgid "password level" +msgstr "Zarz±dzanie Has³ami" + +#: param/loadparm.c:684 +msgid "username level" +msgstr "" + +#: param/loadparm.c:685 +msgid "unix password sync" +msgstr "" + +#: param/loadparm.c:686 +msgid "restrict anonymous" +msgstr "" + +#: param/loadparm.c:687 +msgid "lanman auth" +msgstr "" + +#: param/loadparm.c:688 +msgid "ntlm auth" +msgstr "" + +#: param/loadparm.c:689 +msgid "plaintext to smbpasswd" +msgstr "" + +#: param/loadparm.c:690 +msgid "use rhosts" +msgstr "" + +#: param/loadparm.c:692 +msgid "username" +msgstr "" + +#: param/loadparm.c:693 +#, fuzzy +msgid "user" +msgstr "U¿ytkownik" + +#: param/loadparm.c:694 +#, fuzzy +msgid "users" +msgstr "U¿ytkownik" + +#: param/loadparm.c:696 +msgid "guest account" +msgstr "" + +#: param/loadparm.c:697 +msgid "invalid users" +msgstr "" + +#: param/loadparm.c:698 +msgid "valid users" +msgstr "" + +#: param/loadparm.c:699 +msgid "admin users" +msgstr "" + +#: param/loadparm.c:700 +msgid "read list" +msgstr "" + +#: param/loadparm.c:701 +msgid "write list" +msgstr "" + +#: param/loadparm.c:702 +msgid "printer admin" +msgstr "" + +#: param/loadparm.c:703 +msgid "force user" +msgstr "" + +#: param/loadparm.c:704 +msgid "force group" +msgstr "" + +#: param/loadparm.c:705 +#, fuzzy +msgid "group" +msgstr "Grupa" + +#: param/loadparm.c:707 +msgid "read only" +msgstr "" + +#: param/loadparm.c:708 +msgid "write ok" +msgstr "" + +#: param/loadparm.c:709 +msgid "writeable" +msgstr "" + +#: param/loadparm.c:710 +msgid "writable" +msgstr "" + +#: param/loadparm.c:712 +#, fuzzy +msgid "create mask" +msgstr "Utwórz Wspó³udzia³" + +#: param/loadparm.c:713 +#, fuzzy +msgid "create mode" +msgstr "Utwórz Wspó³udzia³" + +#: param/loadparm.c:714 +msgid "force create mode" +msgstr "" + +#: param/loadparm.c:715 +#, fuzzy +msgid "security mask" +msgstr "Opcje Zabezpieczeñ" + +#: param/loadparm.c:716 +msgid "force security mode" +msgstr "" + +#: param/loadparm.c:717 +msgid "directory mask" +msgstr "" + +#: param/loadparm.c:718 +msgid "directory mode" +msgstr "" + +#: param/loadparm.c:719 +msgid "force directory mode" +msgstr "" + +#: param/loadparm.c:720 +msgid "directory security mask" +msgstr "" + +#: param/loadparm.c:721 +msgid "force directory security mode" +msgstr "" + +#: param/loadparm.c:722 +msgid "inherit permissions" +msgstr "" + +#: param/loadparm.c:723 +msgid "guest only" +msgstr "" + +#: param/loadparm.c:724 +msgid "only guest" +msgstr "" + +#: param/loadparm.c:726 +msgid "guest ok" +msgstr "" + +#: param/loadparm.c:727 +msgid "public" +msgstr "" + +#: param/loadparm.c:729 +#, fuzzy +msgid "only user" +msgstr "Odblokuj U¿ytkownika" + +#: param/loadparm.c:730 +msgid "hosts allow" +msgstr "" + +#: param/loadparm.c:731 +msgid "allow hosts" +msgstr "" + +#: param/loadparm.c:732 +msgid "hosts deny" +msgstr "" + +#: param/loadparm.c:733 +msgid "deny hosts" +msgstr "" + +#: param/loadparm.c:736 +msgid "Secure Socket Layer Options" +msgstr "Opcje SSL" + +#: param/loadparm.c:737 +msgid "ssl" +msgstr "" + +#: param/loadparm.c:739 +msgid "ssl hosts" +msgstr "" + +#: param/loadparm.c:740 +msgid "ssl hosts resign" +msgstr "" + +#: param/loadparm.c:741 +msgid "ssl CA certDir" +msgstr "" + +#: param/loadparm.c:742 +msgid "ssl CA certFile" +msgstr "" + +#: param/loadparm.c:743 +msgid "ssl server cert" +msgstr "" + +#: param/loadparm.c:744 +msgid "ssl server key" +msgstr "" + +#: param/loadparm.c:745 +msgid "ssl client cert" +msgstr "" + +#: param/loadparm.c:746 +msgid "ssl client key" +msgstr "" + +#: param/loadparm.c:747 +msgid "ssl require clientcert" +msgstr "" + +#: param/loadparm.c:748 +msgid "ssl require servercert" +msgstr "" + +#: param/loadparm.c:749 +msgid "ssl ciphers" +msgstr "" + +#: param/loadparm.c:750 +#, fuzzy +msgid "ssl version" +msgstr "wersja:" + +#: param/loadparm.c:751 +msgid "ssl compatibility" +msgstr "" + +#: param/loadparm.c:754 +#, fuzzy +msgid "Logging Options" +msgstr "Opcje Blokowania" + +#: param/loadparm.c:755 +msgid "log level" +msgstr "" + +#: param/loadparm.c:756 +msgid "debuglevel" +msgstr "" + +#: param/loadparm.c:757 +msgid "syslog" +msgstr "" + +#: param/loadparm.c:758 +msgid "syslog only" +msgstr "" + +#: param/loadparm.c:759 +msgid "log file" +msgstr "" + +#: param/loadparm.c:761 +msgid "max log size" +msgstr "" + +#: param/loadparm.c:762 +msgid "timestamp logs" +msgstr "" + +#: param/loadparm.c:763 +msgid "debug timestamp" +msgstr "" + +#: param/loadparm.c:764 +msgid "debug hires timestamp" +msgstr "" + +#: param/loadparm.c:765 +msgid "debug pid" +msgstr "" + +#: param/loadparm.c:766 +msgid "debug uid" +msgstr "" + +#: param/loadparm.c:768 +msgid "Protocol Options" +msgstr "Opcje Protoko³u" + +#: param/loadparm.c:770 +msgid "protocol" +msgstr "" + +#: param/loadparm.c:771 +msgid "large readwrite" +msgstr "" + +#: param/loadparm.c:772 +msgid "max protocol" +msgstr "" + +#: param/loadparm.c:773 +msgid "min protocol" +msgstr "" + +#: param/loadparm.c:774 +msgid "unicode" +msgstr "" + +#: param/loadparm.c:775 +msgid "read bmpx" +msgstr "" + +#: param/loadparm.c:776 +msgid "read raw" +msgstr "" + +#: param/loadparm.c:777 +msgid "write raw" +msgstr "" + +#: param/loadparm.c:779 +msgid "nt smb support" +msgstr "" + +#: param/loadparm.c:780 +msgid "nt pipe support" +msgstr "" + +#: param/loadparm.c:781 +msgid "nt acl support" +msgstr "" + +#: param/loadparm.c:782 +msgid "announce version" +msgstr "" + +#: param/loadparm.c:783 +msgid "announce as" +msgstr "" + +#: param/loadparm.c:784 +msgid "max mux" +msgstr "" + +#: param/loadparm.c:785 +msgid "max xmit" +msgstr "" + +#: param/loadparm.c:787 +msgid "name resolve order" +msgstr "" + +#: param/loadparm.c:788 +msgid "max packet" +msgstr "" + +#: param/loadparm.c:789 +msgid "packet size" +msgstr "" + +#: param/loadparm.c:790 +msgid "max ttl" +msgstr "" + +#: param/loadparm.c:791 +msgid "max wins ttl" +msgstr "" + +#: param/loadparm.c:792 +msgid "min wins ttl" +msgstr "" + +#: param/loadparm.c:793 +msgid "time server" +msgstr "" + +#: param/loadparm.c:795 +msgid "Tuning Options" +msgstr "Opcje Dostrajaj±ce" + +#: param/loadparm.c:797 +msgid "change notify timeout" +msgstr "" + +#: param/loadparm.c:798 +msgid "deadtime" +msgstr "" + +#: param/loadparm.c:799 +msgid "getwd cache" +msgstr "" + +#: param/loadparm.c:800 +msgid "keepalive" +msgstr "" + +#: param/loadparm.c:802 +msgid "lpq cache time" +msgstr "" + +#: param/loadparm.c:803 +msgid "max smbd processes" +msgstr "" + +#: param/loadparm.c:804 +#, fuzzy +msgid "max connections" +msgstr "Aktywne Po³±czenia" + +#: param/loadparm.c:805 +msgid "paranoid server security" +msgstr "" + +#: param/loadparm.c:806 +msgid "max disk size" +msgstr "" + +#: param/loadparm.c:807 +#, fuzzy +msgid "max open files" +msgstr "Otwarte Pliki" + +#: param/loadparm.c:808 +msgid "min print space" +msgstr "" + +#: param/loadparm.c:809 +msgid "read size" +msgstr "" + +#: param/loadparm.c:811 +#, fuzzy +msgid "socket options" +msgstr "Bazowe Opcje" + +#: param/loadparm.c:812 +msgid "stat cache size" +msgstr "" + +#: param/loadparm.c:813 +msgid "strict allocate" +msgstr "" + +#: param/loadparm.c:814 +msgid "strict sync" +msgstr "" + +#: param/loadparm.c:815 +msgid "sync always" +msgstr "" + +#: param/loadparm.c:816 +msgid "use mmap" +msgstr "" + +#: param/loadparm.c:817 +msgid "hostname lookups" +msgstr "" + +#: param/loadparm.c:818 +msgid "write cache size" +msgstr "" + +#: param/loadparm.c:820 +msgid "Printing Options" +msgstr "Opcje Drukowania" + +#: param/loadparm.c:822 +msgid "total print jobs" +msgstr "" + +#: param/loadparm.c:823 +msgid "max print jobs" +msgstr "" + +#: param/loadparm.c:824 +#, fuzzy +msgid "load printers" +msgstr "Drukarki" + +#: param/loadparm.c:825 +#, fuzzy +msgid "printcap name" +msgstr "Nazwa Printcap" + +#: param/loadparm.c:826 +#, fuzzy +msgid "printcap" +msgstr "Nazwa Printcap" + +#: param/loadparm.c:827 +msgid "printable" +msgstr "" + +#: param/loadparm.c:828 +msgid "print ok" +msgstr "" + +#: param/loadparm.c:829 +msgid "postscript" +msgstr "" + +#: param/loadparm.c:830 +#, fuzzy +msgid "printing" +msgstr "dzia³a" + +#: param/loadparm.c:831 +msgid "print command" +msgstr "" + +#: param/loadparm.c:832 +msgid "disable spoolss" +msgstr "" + +#: param/loadparm.c:833 +msgid "lpq command" +msgstr "" + +#: param/loadparm.c:834 +msgid "lprm command" +msgstr "" + +#: param/loadparm.c:835 +msgid "lppause command" +msgstr "" + +#: param/loadparm.c:836 +msgid "lpresume command" +msgstr "" + +#: param/loadparm.c:837 +msgid "queuepause command" +msgstr "" + +#: param/loadparm.c:838 +msgid "queueresume command" +msgstr "" + +#: param/loadparm.c:840 +msgid "enumports command" +msgstr "" + +#: param/loadparm.c:841 +msgid "addprinter command" +msgstr "" + +#: param/loadparm.c:842 +#, fuzzy +msgid "deleteprinter command" +msgstr "Usuñ Drukarkê" + +#: param/loadparm.c:843 +msgid "show add printer wizard" +msgstr "" + +#: param/loadparm.c:844 +msgid "os2 driver map" +msgstr "" + +#: param/loadparm.c:846 +#, fuzzy +msgid "printer name" +msgstr "Parametry Drukarki" + +#: param/loadparm.c:847 +#, fuzzy +msgid "printer" +msgstr "Drukarki" + +#: param/loadparm.c:848 +msgid "use client driver" +msgstr "" + +#: param/loadparm.c:849 +#, fuzzy +msgid "printer driver" +msgstr "Parametry Drukarki" + +#: param/loadparm.c:850 +msgid "printer driver file" +msgstr "" + +#: param/loadparm.c:851 +msgid "printer driver location" +msgstr "" + +#: param/loadparm.c:853 +msgid "Filename Handling" +msgstr "Obs³uga Nazw Plików" + +#: param/loadparm.c:854 +msgid "strip dot" +msgstr "" + +#: param/loadparm.c:856 +msgid "mangled stack" +msgstr "" + +#: param/loadparm.c:857 +msgid "default case" +msgstr "" + +#: param/loadparm.c:858 +msgid "case sensitive" +msgstr "" + +#: param/loadparm.c:859 +msgid "casesignames" +msgstr "" + +#: param/loadparm.c:860 +msgid "preserve case" +msgstr "" + +#: param/loadparm.c:861 +msgid "short preserve case" +msgstr "" + +#: param/loadparm.c:862 +msgid "mangle case" +msgstr "" + +#: param/loadparm.c:863 +msgid "mangling char" +msgstr "" + +#: param/loadparm.c:864 +msgid "hide dot files" +msgstr "" + +#: param/loadparm.c:865 +msgid "hide unreadable" +msgstr "" + +#: param/loadparm.c:866 +msgid "delete veto files" +msgstr "" + +#: param/loadparm.c:867 +#, fuzzy +msgid "veto files" +msgstr "Otwarte Pliki" + +#: param/loadparm.c:868 +#, fuzzy +msgid "hide files" +msgstr "Otwarte Pliki" + +#: param/loadparm.c:869 +msgid "veto oplock files" +msgstr "" + +#: param/loadparm.c:870 +msgid "map system" +msgstr "" + +#: param/loadparm.c:871 +msgid "map hidden" +msgstr "" + +#: param/loadparm.c:872 +msgid "map archive" +msgstr "" + +#: param/loadparm.c:873 +msgid "mangled names" +msgstr "" + +#: param/loadparm.c:874 +msgid "mangled map" +msgstr "" + +#: param/loadparm.c:875 +msgid "stat cache" +msgstr "" + +#: param/loadparm.c:877 +msgid "Domain Options" +msgstr "Opcje Domeny" + +#: param/loadparm.c:879 +msgid "domain admin group" +msgstr "" + +#: param/loadparm.c:880 +msgid "domain guest group" +msgstr "" + +#: param/loadparm.c:883 +msgid "groupname map" +msgstr "" + +#: param/loadparm.c:886 +msgid "machine password timeout" +msgstr "" + +#: param/loadparm.c:888 +msgid "Logon Options" +msgstr "Opcje Logowania" + +#: param/loadparm.c:890 +msgid "add user script" +msgstr "" + +#: param/loadparm.c:891 +#, fuzzy +msgid "delete user script" +msgstr "Usuñ U¿ytkownika" + +#: param/loadparm.c:892 +msgid "add group script" +msgstr "" + +#: param/loadparm.c:893 +msgid "delete group script" +msgstr "" + +#: param/loadparm.c:894 +msgid "add user to group script" +msgstr "" + +#: param/loadparm.c:895 +msgid "delete user from group script" +msgstr "" + +#: param/loadparm.c:896 +msgid "add machine script" +msgstr "" + +#: param/loadparm.c:897 +msgid "shutdown script" +msgstr "" + +#: param/loadparm.c:898 +msgid "abort shutdown script" +msgstr "" + +#: param/loadparm.c:900 +msgid "logon script" +msgstr "" + +#: param/loadparm.c:901 +#, fuzzy +msgid "logon path" +msgstr "Opcje Logowania" + +#: param/loadparm.c:902 +msgid "logon drive" +msgstr "" + +#: param/loadparm.c:903 +msgid "logon home" +msgstr "" + +#: param/loadparm.c:904 +#, fuzzy +msgid "domain logons" +msgstr "Opcje Domeny" + +#: param/loadparm.c:906 +msgid "Browse Options" +msgstr "Opcje Przegl±dania" + +#: param/loadparm.c:908 +msgid "os level" +msgstr "" + +#: param/loadparm.c:909 +msgid "lm announce" +msgstr "" + +#: param/loadparm.c:910 +msgid "lm interval" +msgstr "" + +#: param/loadparm.c:911 +msgid "preferred master" +msgstr "" + +#: param/loadparm.c:912 +msgid "prefered master" +msgstr "" + +#: param/loadparm.c:913 +msgid "local master" +msgstr "" + +#: param/loadparm.c:914 +msgid "domain master" +msgstr "" + +#: param/loadparm.c:915 +#, fuzzy +msgid "browse list" +msgstr "Opcje Przegl±dania" + +#: param/loadparm.c:916 +msgid "browseable" +msgstr "" + +#: param/loadparm.c:917 +msgid "browsable" +msgstr "" + +#: param/loadparm.c:918 +msgid "enhanced browsing" +msgstr "" + +#: param/loadparm.c:920 +msgid "WINS Options" +msgstr "Opcje WINS" + +#: param/loadparm.c:921 +msgid "dns proxy" +msgstr "" + +#: param/loadparm.c:922 +msgid "wins proxy" +msgstr "" + +#: param/loadparm.c:924 +msgid "wins server" +msgstr "" + +#: param/loadparm.c:925 +msgid "wins support" +msgstr "" + +#: param/loadparm.c:926 +msgid "wins hook" +msgstr "" + +#: param/loadparm.c:928 +msgid "Locking Options" +msgstr "Opcje Blokowania" + +#: param/loadparm.c:930 +#, fuzzy +msgid "blocking locks" +msgstr "Opcje Blokowania" + +#: param/loadparm.c:931 +msgid "fake oplocks" +msgstr "" + +#: param/loadparm.c:932 +msgid "kernel oplocks" +msgstr "" + +#: param/loadparm.c:933 +msgid "locking" +msgstr "" + +#: param/loadparm.c:935 +msgid "oplocks" +msgstr "" + +#: param/loadparm.c:936 +msgid "level2 oplocks" +msgstr "" + +#: param/loadparm.c:937 +msgid "oplock break wait time" +msgstr "" + +#: param/loadparm.c:938 +msgid "oplock contention limit" +msgstr "" + +#: param/loadparm.c:939 +msgid "posix locking" +msgstr "" + +#: param/loadparm.c:940 +msgid "strict locking" +msgstr "" + +#: param/loadparm.c:941 +msgid "share modes" +msgstr "" + +#: param/loadparm.c:944 +msgid "Ldap Options" +msgstr "Opcje Ldap" + +#: param/loadparm.c:946 +msgid "ldap server" +msgstr "" + +#: param/loadparm.c:947 +msgid "ldap port" +msgstr "" + +#: param/loadparm.c:948 +msgid "ldap suffix" +msgstr "" + +#: param/loadparm.c:949 +msgid "ldap filter" +msgstr "" + +#: param/loadparm.c:950 +msgid "ldap root" +msgstr "" + +#: param/loadparm.c:951 +msgid "ldap root passwd" +msgstr "" + +#: param/loadparm.c:954 +msgid "Miscellaneous Options" +msgstr "Pozosta³e Opcje" + +#: param/loadparm.c:955 +msgid "add share command" +msgstr "" + +#: param/loadparm.c:956 +msgid "change share command" +msgstr "" + +#: param/loadparm.c:957 +#, fuzzy +msgid "delete share command" +msgstr "Usuñ Wspó³udzia³" + +#: param/loadparm.c:959 +msgid "config file" +msgstr "" + +#: param/loadparm.c:960 +msgid "preload" +msgstr "" + +#: param/loadparm.c:961 +#, fuzzy +msgid "auto services" +msgstr "Automatyczne Od¶wie¿anie" + +#: param/loadparm.c:962 +msgid "lock dir" +msgstr "" + +#: param/loadparm.c:963 +msgid "lock directory" +msgstr "" + +#: param/loadparm.c:965 +msgid "utmp directory" +msgstr "" + +#: param/loadparm.c:966 +msgid "wtmp directory" +msgstr "" + +#: param/loadparm.c:967 +msgid "utmp" +msgstr "" + +#: param/loadparm.c:970 +msgid "default service" +msgstr "" + +#: param/loadparm.c:971 +#, fuzzy +msgid "default" +msgstr "Ustaw domy¶lnie" + +#: param/loadparm.c:972 +msgid "message command" +msgstr "" + +#: param/loadparm.c:973 +msgid "dfree command" +msgstr "" + +#: param/loadparm.c:974 +msgid "remote announce" +msgstr "" + +#: param/loadparm.c:975 +msgid "remote browse sync" +msgstr "" + +#: param/loadparm.c:976 +#, fuzzy +msgid "socket address" +msgstr "adres IP" + +#: param/loadparm.c:977 +msgid "homedir map" +msgstr "" + +#: param/loadparm.c:978 +msgid "time offset" +msgstr "" + +#: param/loadparm.c:979 +msgid "NIS homedir" +msgstr "" + +#: param/loadparm.c:980 +msgid "-valid" +msgstr "" + +#: param/loadparm.c:982 +msgid "copy" +msgstr "" + +#: param/loadparm.c:983 +msgid "include" +msgstr "" + +#: param/loadparm.c:984 +msgid "exec" +msgstr "" + +#: param/loadparm.c:985 +msgid "preexec" +msgstr "" + +#: param/loadparm.c:987 +msgid "preexec close" +msgstr "" + +#: param/loadparm.c:988 +msgid "postexec" +msgstr "" + +#: param/loadparm.c:989 +msgid "root preexec" +msgstr "" + +#: param/loadparm.c:990 +msgid "root preexec close" +msgstr "" + +#: param/loadparm.c:991 +msgid "root postexec" +msgstr "" + +#: param/loadparm.c:992 +msgid "available" +msgstr "" + +#: param/loadparm.c:993 +#, fuzzy +msgid "volume" +msgstr "Strona domowa" + +#: param/loadparm.c:994 +msgid "fstype" +msgstr "" + +#: param/loadparm.c:995 +msgid "set directory" +msgstr "" + +#: param/loadparm.c:996 +msgid "source environment" +msgstr "" + +#: param/loadparm.c:997 +msgid "wide links" +msgstr "" + +#: param/loadparm.c:998 +msgid "follow symlinks" +msgstr "" + +#: param/loadparm.c:999 +msgid "dont descend" +msgstr "" + +#: param/loadparm.c:1000 +msgid "magic script" +msgstr "" + +#: param/loadparm.c:1001 +msgid "magic output" +msgstr "" + +#: param/loadparm.c:1002 +msgid "delete readonly" +msgstr "" + +#: param/loadparm.c:1003 +msgid "dos filemode" +msgstr "" + +#: param/loadparm.c:1004 +msgid "dos filetimes" +msgstr "" + +#: param/loadparm.c:1005 +msgid "dos filetime resolution" +msgstr "" + +#: param/loadparm.c:1007 +msgid "fake directory create times" +msgstr "" + +#: param/loadparm.c:1008 +msgid "panic action" +msgstr "" + +#: param/loadparm.c:1009 +msgid "hide local users" +msgstr "" + +#: param/loadparm.c:1012 +#, fuzzy +msgid "VFS options" +msgstr "Opcje WINS" + +#: param/loadparm.c:1014 +msgid "vfs object" +msgstr "" + +#: param/loadparm.c:1015 +#, fuzzy +msgid "vfs options" +msgstr "Bazowe Opcje" + +#: param/loadparm.c:1018 +msgid "msdfs root" +msgstr "" + +#: param/loadparm.c:1019 +msgid "host msdfs" +msgstr "" + +#: param/loadparm.c:1021 +#, fuzzy +msgid "Winbind options" +msgstr "Opcje Drukowania" + +#: param/loadparm.c:1023 +msgid "winbind uid" +msgstr "" + +#: param/loadparm.c:1024 +msgid "winbind gid" +msgstr "" + +#: param/loadparm.c:1025 +msgid "template homedir" +msgstr "" + +#: param/loadparm.c:1026 +msgid "template shell" +msgstr "" + +#: param/loadparm.c:1027 +msgid "winbind separator" +msgstr "" + +#: param/loadparm.c:1028 +msgid "winbind cache time" +msgstr "" + +#: param/loadparm.c:1029 +msgid "winbind enum users" +msgstr "" + +#: param/loadparm.c:1030 +msgid "winbind enum groups" +msgstr "" + +#~ msgid "failed to open %s for writing\n" +#~ msgstr "nie uda³o siê otworzyæ %s do zapisu\n" + +#~ msgid "Can't reload %s\n" +#~ msgstr "Nie mogê prze³adowaæ %s\n" + +#~ msgid "Can't setup password database vectors.\n" +#~ msgstr "Nie mo¿na ustawiæ wektorów bazy hase³.\n" + +#~ msgid "You need to have status=yes in your smb config file\n" +#~ msgstr "Musisz mieæ status=yes w swoim pliku konfiguracyjnym smb\n" diff --git a/source3/po/stamp-cat-id b/source3/po/stamp-cat-id new file mode 100644 index 0000000000..9788f70238 --- /dev/null +++ b/source3/po/stamp-cat-id @@ -0,0 +1 @@ +timestamp diff --git a/source3/po/tr.gmo b/source3/po/tr.gmo Binary files differnew file mode 100644 index 0000000000..a7a9ebb2df --- /dev/null +++ b/source3/po/tr.gmo diff --git a/source3/po/tr.po b/source3/po/tr.po new file mode 100644 index 0000000000..6c2bc1f93d --- /dev/null +++ b/source3/po/tr.po @@ -0,0 +1,1723 @@ +# Swat Turkish Translation +# Copyright (C) 2001 Deniz Akkus Kanca +# Deniz Akkus Kanca <deniz@arayan.com>, 2001. +# +# 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 2 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, write to the Free Software +# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. +msgid "" +msgstr "" +"Project-Id-Version: i18n_swat \n" +"POT-Creation-Date: 2001-09-20 20:29+0900\n" +"PO-Revision-Date: 2001-09-20 22:51EEST\n" +"Last-Translator: Deniz Akkus Kanca <deniz@arayan.com>\n" +"Language-Team: Turkish <gnu-tr-u12a@lists.sourceforge.net>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=ISO-8859-9\n" +"Content-Transfer-Encoding: 8bit\n" +"X-Generator: KBabel 0.9.1\n" + +#: web/swat.c:120 +#, c-format +msgid "ERROR: Can't open %s\n" +msgstr "HATA: %s açılamadı\n" + +#. +#. str = stripspace(parm->label); +#. strlower (str); //monyo +#. d_printf("<tr><td><A HREF=\"/swat/help/smb.conf.5.html#%s\" target=\"docs\">%s</A> %s</td><td>", +#. str, _("Help"), parm->label); +#. +#: web/swat.c:211 +msgid "Help" +msgstr "Yardım" + +#: web/swat.c:217 web/swat.c:231 web/swat.c:246 web/swat.c:254 web/swat.c:263 +#: web/swat.c:272 web/swat.c:278 web/swat.c:284 web/swat.c:297 +msgid "Set Default" +msgstr "Öntanımlıya Ayarla" + +#: web/swat.c:502 +#, c-format +msgid "Logged in as <b>%s</b><p>\n" +msgstr "<b>%s</b> kimliği ile oturum açılmış<p>\n" + +#: web/swat.c:505 +msgid "Home" +msgstr "Ev" + +#: web/swat.c:507 +msgid "Globals" +msgstr "Evrenseller" + +#: web/swat.c:508 +msgid "Shares" +msgstr "Paylaşımlar" + +#: web/swat.c:509 +msgid "Printers" +msgstr "Yazıcılar" + +#: web/swat.c:512 +msgid "Status" +msgstr "Durum" + +#: web/swat.c:513 +msgid "View Config" +msgstr "Ayarlara Gözat" + +#: web/swat.c:515 +msgid "Password Management" +msgstr "Şifre Yönetimi" + +#: web/swat.c:539 +msgid "Current Config" +msgstr "Şimdiki Ayarlar" + +#: web/swat.c:543 +msgid "Normal View" +msgstr "Normal Görünüm" + +#: web/swat.c:545 +msgid "Full View" +msgstr "Tam Görünüm" + +#: web/swat.c:561 +msgid "Global Variables" +msgstr "Genel Değişkenler" + +#: web/swat.c:575 web/swat.c:671 web/swat.c:1014 +msgid "Commit Changes" +msgstr "Değişiklikleri Kaydet" + +#: web/swat.c:579 web/swat.c:674 web/swat.c:1016 +msgid "Reset Values" +msgstr "Değerleri İlk Haline Getir" + +#: web/swat.c:581 web/swat.c:676 web/swat.c:1018 +msgid "Advanced View" +msgstr "Gelişmiş Görünüm" + +#: web/swat.c:583 web/swat.c:678 web/swat.c:1020 +msgid "Basic View" +msgstr "Temel Görünüm" + +#: web/swat.c:613 +msgid "Share Parameters" +msgstr "Paylaşım Parametreleri" + +#: web/swat.c:642 +msgid "Choose Share" +msgstr "Paylaşım Seçin" + +#: web/swat.c:656 +msgid "Delete Share" +msgstr "Paylaşım Kaldır" + +#: web/swat.c:663 +msgid "Create Share" +msgstr "Paylaşım Oluştur" + +#: web/swat.c:708 +msgid "password change in demo mode rejected\n" +msgstr "demo kipinde şifre değişikliği kabul edilmedi\n" + +#: web/swat.c:747 +msgid " Must specify \"User Name\" \n" +msgstr " \"Kullanıcı Adı\" belirtilmeli \n" + +#: web/swat.c:763 +msgid " Must specify \"Old Password\" \n" +msgstr " \"Eski Şifre\" belirtilmeli \n" + +#: web/swat.c:769 +msgid " Must specify \"Remote Machine\" \n" +msgstr " \"Uzak Makina\" belirtilmeli \n" + +#: web/swat.c:776 +msgid " Must specify \"New, and Re-typed Passwords\" \n" +msgstr " \"Yeni ve Tekrar Girilmiş Şifreler\" belirtilmeli \n" + +#: web/swat.c:782 +msgid " Re-typed password didn't match new password\n" +msgstr " Tekrar girilen şifre yeni şifre ile eşleşmedi\n" + +#: web/swat.c:812 +#, c-format +msgid " The passwd for '%s' has been changed. \n" +msgstr " '%s' için şifre değiştirildi. \n" + +#: web/swat.c:814 +#, c-format +msgid " The passwd for '%s' has NOT been changed. \n" +msgstr " '%s' için şifre DEĞİŞTİRİLMEDİ. \n" + +#: web/swat.c:838 +msgid "Server Password Management" +msgstr "Sunucu Şifre Yönetimi" + +#. +#. * Create all the dialog boxes for data collection +#. +#: web/swat.c:847 web/swat.c:894 +msgid " User Name : " +msgstr " Kullanıcı Adı : " + +#: web/swat.c:850 web/swat.c:896 +msgid " Old Password : " +msgstr " Eski Şifre : " + +#: web/swat.c:853 web/swat.c:898 +msgid " New Password : " +msgstr " Yeni Şifre : " + +#: web/swat.c:855 web/swat.c:900 +msgid " Re-type New Password : " +msgstr " Yeni Şifre Tekrarı : " + +#: web/swat.c:863 web/swat.c:911 +msgid "Change Password" +msgstr "Şifre Değiştir" + +#: web/swat.c:866 +msgid "Add New User" +msgstr "Kull. Ekle" + +#: web/swat.c:868 +msgid "Delete User" +msgstr "Kull. Sil" + +#: web/swat.c:870 +msgid "Disable User" +msgstr "Kull. Etkisizleştir" + +#: web/swat.c:872 +msgid "Enable User" +msgstr "Kull. Etkinleştir" + +#: web/swat.c:885 +msgid "Client/Server Password Management" +msgstr "İstemci/Sunucu Şifre Yönetimi" + +#: web/swat.c:902 +msgid " Remote Machine : " +msgstr " Uzak Makina : " + +#: web/swat.c:940 +msgid "Printer Parameters" +msgstr "Yazıcı Bilgileri" + +#: web/swat.c:942 +msgid "Important Note:" +msgstr "Önemli Not: " + +#: web/swat.c:943 +msgid "Printer names marked with [*] in the Choose Printer drop-down box " +msgstr "Yazıcı Seç kutusunda [*] ile işaretlenmiş yazıcı isimleri " + +#: web/swat.c:944 +msgid "are autoloaded printers from " +msgstr "otomatik yüklenen yazıcılar " + +#: web/swat.c:945 +msgid "Printcap Name" +msgstr "Printcap Adı" + +#: web/swat.c:946 +msgid "Attempting to delete these printers from SWAT will have no effect.\n" +msgstr "Bu yazıcıları SWAT'dan silmek etkisiz olacaktır.\n" + +#: web/swat.c:980 +msgid "Choose Printer" +msgstr "Yazıcı Seç" + +#: web/swat.c:999 +msgid "Delete Printer" +msgstr "Yazıcı Sil" + +#: web/swat.c:1006 +msgid "Create Printer" +msgstr "Yazıcı Oluştur" + +#: web/statuspage.c:40 +msgid "DENY_NONE" +msgstr "HERKESE_AÇIK" + +#: web/statuspage.c:41 +msgid "DENY_ALL " +msgstr "HERKESİ_REDDET " + +#: web/statuspage.c:42 +msgid "DENY_DOS " +msgstr "DOSU_REDDET " + +#: web/statuspage.c:43 +msgid "DENY_READ " +msgstr "OKU_REDDET " + +#: web/statuspage.c:44 +msgid "DENY_WRITE " +msgstr "YAZ_REDDET " + +#: web/statuspage.c:50 +msgid "RDONLY " +msgstr "SALTOKUNUR " + +#: web/statuspage.c:51 +msgid "WRONLY " +msgstr "SALTYAZILIR " + +#: web/statuspage.c:52 +msgid "RDWR " +msgstr "O/Y " + +#: web/statuspage.c:60 +msgid "EXCLUSIVE+BATCH " +msgstr "ŞAHSİ+TOPTAN " + +#: web/statuspage.c:62 +msgid "EXCLUSIVE " +msgstr "ŞAHSİ " + +#: web/statuspage.c:64 +msgid "BATCH " +msgstr "TOPTAN " + +#: web/statuspage.c:66 +msgid "LEVEL_II " +msgstr "SEVİYE_II " + +#: web/statuspage.c:68 +msgid "NONE " +msgstr "HİÇ " + +#: web/statuspage.c:195 +msgid "Server Status" +msgstr "Sunucu Durumu" + +#: web/statuspage.c:200 +msgid "Auto Refresh" +msgstr "Oto Tazele" + +#: web/statuspage.c:201 web/statuspage.c:206 +msgid "Refresh Interval: " +msgstr "Tazeleme Aralığı: " + +#: web/statuspage.c:205 +msgid "Stop Refreshing" +msgstr "Tazelemeyi Durdur" + +#: web/statuspage.c:220 +msgid "version:" +msgstr "sürüm:" + +#: web/statuspage.c:223 +msgid "smbd:" +msgstr "smbd:" + +#: web/statuspage.c:223 web/statuspage.c:235 +msgid "running" +msgstr "çalışıyor" + +#: web/statuspage.c:223 web/statuspage.c:235 +msgid "not running" +msgstr "çalışmıyor" + +#: web/statuspage.c:226 +msgid "Stop smbd" +msgstr "Smbd'yi durdur" + +#: web/statuspage.c:228 +msgid "Start smbd" +msgstr "Smbd'yi çalıştır" + +#: web/statuspage.c:230 +msgid "Restart smbd" +msgstr "Smbd'yi yeniden çalıştır" + +#: web/statuspage.c:235 +msgid "nmbd:" +msgstr "nmbd:" + +#: web/statuspage.c:238 +msgid "Stop nmbd" +msgstr "Nmbd'yi durdur" + +#: web/statuspage.c:240 +msgid "Start nmbd" +msgstr "Nmbd'yi çalıştır" + +#: web/statuspage.c:242 +msgid "Restart nmbd" +msgstr "Nmbd'yi yeniden çalıştır" + +#: web/statuspage.c:249 +msgid "Active Connections" +msgstr "Aktif Bağlantılar" + +#: web/statuspage.c:251 web/statuspage.c:264 web/statuspage.c:272 +msgid "PID" +msgstr "PID" + +#: web/statuspage.c:251 web/statuspage.c:264 +msgid "Client" +msgstr "İstemci" + +#: web/statuspage.c:251 +msgid "IP address" +msgstr "IP numarası" + +#: web/statuspage.c:251 web/statuspage.c:264 web/statuspage.c:272 +msgid "Date" +msgstr "Tarih" + +#: web/statuspage.c:253 +msgid "Kill" +msgstr "Kapat" + +#: web/statuspage.c:261 +msgid "Active Shares" +msgstr "Aktif Paylaşımlar" + +#: web/statuspage.c:264 +msgid "Share" +msgstr "Paylaşım" + +#: web/statuspage.c:264 +msgid "User" +msgstr "Kullanıcı" + +#: web/statuspage.c:264 +msgid "Group" +msgstr "Grup" + +#: web/statuspage.c:270 +msgid "Open Files" +msgstr "Açık Dosyalar" + +#: web/statuspage.c:272 +msgid "Sharing" +msgstr "Paylaşılıyor" + +#: web/statuspage.c:272 +msgid "R/W" +msgstr "O/Y" + +#: web/statuspage.c:272 +msgid "Oplock" +msgstr "Oplock" + +#: web/statuspage.c:272 +msgid "File" +msgstr "Dosya" + +#: param/loadparm.c:641 +msgid "Base Options" +msgstr "Temel Seçenekler" + +#: param/loadparm.c:643 +msgid "dos charset" +msgstr "dos karakter kümesi" + +#: param/loadparm.c:644 +msgid "unix charset" +msgstr "unix karakter kümesi" + +#: param/loadparm.c:645 +msgid "display charset" +msgstr "karakter kümesini göster" + +#: param/loadparm.c:646 +msgid "comment" +msgstr "açıklama" + +#: param/loadparm.c:647 +msgid "path" +msgstr "yol" + +#: param/loadparm.c:648 +msgid "directory" +msgstr "dizin" + +#: param/loadparm.c:649 +msgid "workgroup" +msgstr "çalışma grubu" + +#: param/loadparm.c:650 +msgid "netbios name" +msgstr "netbios adı" + +#: param/loadparm.c:651 +msgid "netbios aliases" +msgstr "netbios rumuzları" + +#: param/loadparm.c:652 +msgid "netbios scope" +msgstr "netbios kapsamı" + +#: param/loadparm.c:653 +msgid "server string" +msgstr "sunucu dizgesi" + +#: param/loadparm.c:654 +msgid "interfaces" +msgstr "arayüzler" + +#: param/loadparm.c:655 +msgid "bind interfaces only" +msgstr "yalnızca arayüzleri bağla" + +#: param/loadparm.c:657 +msgid "Security Options" +msgstr "Güvenlik Seçenekleri" + +#: param/loadparm.c:659 +msgid "security" +msgstr "güvenlik" + +#: param/loadparm.c:660 +msgid "encrypt passwords" +msgstr "şifreyi şifrele " + +#: param/loadparm.c:661 +msgid "update encrypted" +msgstr "şifrelenmiş güncelle" + +#: param/loadparm.c:662 +msgid "allow trusted domains" +msgstr "güvenli alanlara izin ver" + +#: param/loadparm.c:663 +msgid "alternate permissions" +msgstr "başka izinler" + +#: param/loadparm.c:664 +msgid "hosts equiv" +msgstr "hosts eşdeğerlisi" + +#: param/loadparm.c:665 +msgid "min passwd length" +msgstr "en kısa şifre uzunluğu" + +#: param/loadparm.c:666 +msgid "min password length" +msgstr "en kısa şifre uzunluğu" + +#: param/loadparm.c:667 +msgid "map to guest" +msgstr "guest (misafir) kullanıcıya eşle" + +#: param/loadparm.c:668 +msgid "null passwords" +msgstr "boş şifreler" + +#: param/loadparm.c:669 +msgid "obey pam restrictions" +msgstr "pam kısıtlamalarına uy" + +#: param/loadparm.c:670 +msgid "password server" +msgstr "şifre sunucusu" + +#: param/loadparm.c:671 +msgid "smb passwd file" +msgstr "smb şifre dosyası" + +#: param/loadparm.c:672 +msgid "private dir" +msgstr "özel dizin" + +#: param/loadparm.c:673 +msgid "passdb module path" +msgstr "şifre veritabanı modül yolu" + +#: param/loadparm.c:674 +msgid "root directory" +msgstr "kök dizin" + +#: param/loadparm.c:675 +msgid "root dir" +msgstr "kök dizin" + +#: param/loadparm.c:676 +msgid "root" +msgstr "kök" + +#: param/loadparm.c:678 +msgid "pam password change" +msgstr "pam şifre değişikliği" + +#: param/loadparm.c:679 +msgid "passwd program" +msgstr "şifre yazılımı" + +#: param/loadparm.c:680 +msgid "passwd chat" +msgstr "şifre diyaloğu" + +#: param/loadparm.c:681 +msgid "passwd chat debug" +msgstr "şifre diyalog hata ayıklaması" + +#: param/loadparm.c:682 +msgid "username map" +msgstr "kullanıcı adı eşlemesi" + +#: param/loadparm.c:683 +msgid "password level" +msgstr "şifre seviyesi" + +#: param/loadparm.c:684 +msgid "username level" +msgstr "kullanıcı kimliği seviyesi" + +#: param/loadparm.c:685 +msgid "unix password sync" +msgstr "unix şifre senkronizasyonu" + +#: param/loadparm.c:686 +msgid "restrict anonymous" +msgstr "anonim erişimi kısıtla" + +#: param/loadparm.c:687 +msgid "lanman auth" +msgstr "lanman auth" + +#: param/loadparm.c:688 +msgid "ntlm auth" +msgstr "ntlm auth" + +#: param/loadparm.c:689 +msgid "plaintext to smbpasswd" +msgstr "düz metinden smbpasswd'e" + +#: param/loadparm.c:690 +msgid "use rhosts" +msgstr "rhosts kullan" + +#: param/loadparm.c:692 +msgid "username" +msgstr "kullanıcı adı" + +#: param/loadparm.c:693 +msgid "user" +msgstr "kullanıcı" + +#: param/loadparm.c:694 +msgid "users" +msgstr "kullanıcılar" + +#: param/loadparm.c:696 +msgid "guest account" +msgstr "misafir hesap" + +#: param/loadparm.c:697 +msgid "invalid users" +msgstr "geçersiz kullanıcılar" + +#: param/loadparm.c:698 +msgid "valid users" +msgstr "geçerli kullanıcılar" + +#: param/loadparm.c:699 +msgid "admin users" +msgstr "yönetici kullanıcıları" + +#: param/loadparm.c:700 +msgid "read list" +msgstr "okuma listesi" + +#: param/loadparm.c:701 +msgid "write list" +msgstr "yazma listesi" + +#: param/loadparm.c:702 +msgid "printer admin" +msgstr "yazıcı yönetimi" + +#: param/loadparm.c:703 +msgid "force user" +msgstr "kullanıcıyı zorla" + +#: param/loadparm.c:704 +msgid "force group" +msgstr "grubu zorla" + +#: param/loadparm.c:705 +msgid "group" +msgstr "grup" + +#: param/loadparm.c:707 +msgid "read only" +msgstr "salt okunur" + +#: param/loadparm.c:708 +msgid "write ok" +msgstr "yazma tamam" + +#: param/loadparm.c:709 +msgid "writeable" +msgstr "yazılabilir" + +#: param/loadparm.c:710 +msgid "writable" +msgstr "yazılabilir" + +#: param/loadparm.c:712 +msgid "create mask" +msgstr "oluşturma izinleri" + +#: param/loadparm.c:713 +msgid "create mode" +msgstr "oluşturma kipi" + +#: param/loadparm.c:714 +msgid "force create mode" +msgstr "oluşturma kipini zorla" + +#: param/loadparm.c:715 +msgid "security mask" +msgstr "güvenlik izinleri" + +#: param/loadparm.c:716 +msgid "force security mode" +msgstr "güvenlik kipini zorla" + +#: param/loadparm.c:717 +msgid "directory mask" +msgstr "dizin izinleri" + +#: param/loadparm.c:718 +msgid "directory mode" +msgstr "dizin kipi" + +#: param/loadparm.c:719 +msgid "force directory mode" +msgstr "dizin kipini zorla" + +#: param/loadparm.c:720 +msgid "directory security mask" +msgstr "dizin güvenlik izinleri" + +#: param/loadparm.c:721 +msgid "force directory security mode" +msgstr "dizin güvenlik kipini zorla" + +#: param/loadparm.c:722 +msgid "inherit permissions" +msgstr "izinleri ebeveynden al" + +#: param/loadparm.c:723 +msgid "guest only" +msgstr "yalnız misafir" + +#: param/loadparm.c:724 +msgid "only guest" +msgstr "yalnız misafir" + +#: param/loadparm.c:726 +msgid "guest ok" +msgstr "misafir tamam" + +#: param/loadparm.c:727 +msgid "public" +msgstr "genel" + +#: param/loadparm.c:729 +msgid "only user" +msgstr "salt kullanıcı" + +#: param/loadparm.c:730 +msgid "hosts allow" +msgstr "hosts izinli" + +#: param/loadparm.c:731 +msgid "allow hosts" +msgstr "hosts izinli" + +#: param/loadparm.c:732 +msgid "hosts deny" +msgstr "hosts izinsiz" + +#: param/loadparm.c:733 +msgid "deny hosts" +msgstr "hosts izinsiz" + +#: param/loadparm.c:736 +msgid "Secure Socket Layer Options" +msgstr "Güvenli Soket Katman Seçenekleri" + +#: param/loadparm.c:737 +msgid "ssl" +msgstr "ssl" + +#: param/loadparm.c:739 +msgid "ssl hosts" +msgstr "ssl hosts" + +#: param/loadparm.c:740 +msgid "ssl hosts resign" +msgstr "ssl hosts istifa" + +#: param/loadparm.c:741 +msgid "ssl CA certDir" +msgstr "ssl CA sertifika dizini" + +#: param/loadparm.c:742 +msgid "ssl CA certFile" +msgstr "ssl CA sertifika dosyası" + +#: param/loadparm.c:743 +msgid "ssl server cert" +msgstr "ssl sunucu sertifikası" + +#: param/loadparm.c:744 +msgid "ssl server key" +msgstr "ssl sunucu anahtarı" + +#: param/loadparm.c:745 +msgid "ssl client cert" +msgstr "ssl istemci sertifikası" + +#: param/loadparm.c:746 +msgid "ssl client key" +msgstr "ssl istemci anahtarı" + +#: param/loadparm.c:747 +msgid "ssl require clientcert" +msgstr "ssl istemci sertifikası iste" + +#: param/loadparm.c:748 +msgid "ssl require servercert" +msgstr "ssl sunucu sertifikası iste" + +#: param/loadparm.c:749 +msgid "ssl ciphers" +msgstr "ssl şifreleri" + +#: param/loadparm.c:750 +msgid "ssl version" +msgstr "ssl sürümü" + +#: param/loadparm.c:751 +msgid "ssl compatibility" +msgstr "ssl uyumluluğu" + +#: param/loadparm.c:754 +msgid "Logging Options" +msgstr "Günlük Kaydı Seçenekleri" + +#: param/loadparm.c:755 +msgid "log level" +msgstr "günlük seviyesi" + +#: param/loadparm.c:756 +msgid "debuglevel" +msgstr "hata ayıklama seviyesi" + +#: param/loadparm.c:757 +msgid "syslog" +msgstr "sistem günlüğü" + +#: param/loadparm.c:758 +msgid "syslog only" +msgstr "salt sistem günlüğü" + +#: param/loadparm.c:759 +msgid "log file" +msgstr "günlük dosyası" + +#: param/loadparm.c:761 +msgid "max log size" +msgstr "maksimum günlük büyüklüğü" + +#: param/loadparm.c:762 +msgid "timestamp logs" +msgstr "zaman damgası günlükleri" + +#: param/loadparm.c:763 +msgid "debug timestamp" +msgstr "hata ayıklama zaman damgası" + +#: param/loadparm.c:764 +msgid "debug hires timestamp" +msgstr "hata ayıklama yüksek çözünürlüklü zaman damgası" + +#: param/loadparm.c:765 +msgid "debug pid" +msgstr "hata ayıklama pid" + +#: param/loadparm.c:766 +msgid "debug uid" +msgstr "hata ayıklama uid" + +#: param/loadparm.c:768 +msgid "Protocol Options" +msgstr "Protokol Seçenekleri" + +#: param/loadparm.c:770 +msgid "protocol" +msgstr "protokol" + +#: param/loadparm.c:771 +msgid "large readwrite" +msgstr "büyük oku/yaz" + +#: param/loadparm.c:772 +msgid "max protocol" +msgstr "max protokol" + +#: param/loadparm.c:773 +msgid "min protocol" +msgstr "min protokol" + +#: param/loadparm.c:774 +msgid "unicode" +msgstr "unicode" + +#: param/loadparm.c:775 +msgid "read bmpx" +msgstr "bmpx oku" + +#: param/loadparm.c:776 +msgid "read raw" +msgstr "ham oku" + +#: param/loadparm.c:777 +msgid "write raw" +msgstr "ham yaz" + +#: param/loadparm.c:779 +msgid "nt smb support" +msgstr "nt smb desteği" + +#: param/loadparm.c:780 +msgid "nt pipe support" +msgstr "nt verihattı desteği" + +#: param/loadparm.c:781 +msgid "nt acl support" +msgstr "nt acl desteği" + +#: param/loadparm.c:782 +msgid "announce version" +msgstr "sürümü bildir" + +#: param/loadparm.c:783 +msgid "announce as" +msgstr "bildir" + +#: param/loadparm.c:784 +msgid "max mux" +msgstr "maksimum mux" + +#: param/loadparm.c:785 +msgid "max xmit" +msgstr "maksimum xmit" + +#: param/loadparm.c:787 +msgid "name resolve order" +msgstr "ad çözümleme sırası" + +#: param/loadparm.c:788 +msgid "max packet" +msgstr "maksimum paket" + +#: param/loadparm.c:789 +msgid "packet size" +msgstr "paket büyüklüğü" + +#: param/loadparm.c:790 +msgid "max ttl" +msgstr "maksimum ttl" + +#: param/loadparm.c:791 +msgid "max wins ttl" +msgstr "maksimum wins ttl" + +#: param/loadparm.c:792 +msgid "min wins ttl" +msgstr "minimum wins ttl" + +#: param/loadparm.c:793 +msgid "time server" +msgstr "zaman sunucusu" + +#: param/loadparm.c:795 +msgid "Tuning Options" +msgstr "Ayar Seçenekleri" + +#: param/loadparm.c:797 +msgid "change notify timeout" +msgstr "zamanaşımı bildirmesini değiştir" + +#: param/loadparm.c:798 +msgid "deadtime" +msgstr "ölüzaman" + +#: param/loadparm.c:799 +msgid "getwd cache" +msgstr "getwd arabelleği" + +#: param/loadparm.c:800 +msgid "keepalive" +msgstr "hayattatut" + +#: param/loadparm.c:802 +msgid "lpq cache time" +msgstr "lpq arabellek zamanı" + +#: param/loadparm.c:803 +msgid "max smbd processes" +msgstr "maksimum smbd süreci" + +#: param/loadparm.c:804 +msgid "max connections" +msgstr "maksimum bağlantı" + +#: param/loadparm.c:805 +msgid "paranoid server security" +msgstr "yüksek dereceli sunucu güvenliği" + +#: param/loadparm.c:806 +msgid "max disk size" +msgstr "maksimum disk büyüklüğü" + +#: param/loadparm.c:807 +msgid "max open files" +msgstr "maksimum açık dosya" + +#: param/loadparm.c:808 +msgid "min print space" +msgstr "minimum yazma alanı" + +#: param/loadparm.c:809 +msgid "read size" +msgstr "okuma boyu" + +#: param/loadparm.c:811 +msgid "socket options" +msgstr "soket seçenekleri" + +#: param/loadparm.c:812 +msgid "stat cache size" +msgstr "durum arabelleği boyu" + +#: param/loadparm.c:813 +msgid "strict allocate" +msgstr "sıkı ayırma" + +#: param/loadparm.c:814 +msgid "strict sync" +msgstr "sıkı senkronizasyon" + +#: param/loadparm.c:815 +msgid "sync always" +msgstr "herzaman senkronize" + +#: param/loadparm.c:816 +msgid "use mmap" +msgstr "bellek eşlemesi kullan" + +#: param/loadparm.c:817 +msgid "hostname lookups" +msgstr "sunucu adı arama" + +#: param/loadparm.c:818 +msgid "write cache size" +msgstr "yazma arabellek boyu" + +#: param/loadparm.c:820 +msgid "Printing Options" +msgstr "Yazdırma Seçenekleri" + +#: param/loadparm.c:822 +msgid "total print jobs" +msgstr "toplam yazdırma işleri" + +#: param/loadparm.c:823 +msgid "max print jobs" +msgstr "maksimum yazdırma işi" + +#: param/loadparm.c:824 +msgid "load printers" +msgstr "yazıcıları yükle" + +#: param/loadparm.c:825 +msgid "printcap name" +msgstr "printcap adı" + +#: param/loadparm.c:826 +msgid "printcap" +msgstr "printcap" + +#: param/loadparm.c:827 +msgid "printable" +msgstr "yazdırılabilir" + +#: param/loadparm.c:828 +msgid "print ok" +msgstr "yazdırma tamam" + +#: param/loadparm.c:829 +msgid "postscript" +msgstr "postscript" + +#: param/loadparm.c:830 +msgid "printing" +msgstr "yazdırıyor" + +#: param/loadparm.c:831 +msgid "print command" +msgstr "yazdırma komutu" + +#: param/loadparm.c:832 +msgid "disable spoolss" +msgstr "kuyruğu etkisizleştir" + +#: param/loadparm.c:833 +msgid "lpq command" +msgstr "lpq komutu" + +#: param/loadparm.c:834 +msgid "lprm command" +msgstr "lprm komutu" + +#: param/loadparm.c:835 +msgid "lppause command" +msgstr "lppause komutu" + +#: param/loadparm.c:836 +msgid "lpresume command" +msgstr "lpresume komutu" + +#: param/loadparm.c:837 +msgid "queuepause command" +msgstr "queuepause komutu" + +#: param/loadparm.c:838 +msgid "queueresume command" +msgstr "queueresume komutu" + +#: param/loadparm.c:840 +msgid "enumports command" +msgstr "port listele komutu" + +#: param/loadparm.c:841 +msgid "addprinter command" +msgstr "yazıcı ekle komutu" + +#: param/loadparm.c:842 +msgid "deleteprinter command" +msgstr "yazıcı sil komutu" + +#: param/loadparm.c:843 +msgid "show add printer wizard" +msgstr "yazıcı ekleme sihirbazını göster" + +#: param/loadparm.c:844 +msgid "os2 driver map" +msgstr "os2 sürücü eşlemesi" + +#: param/loadparm.c:846 +msgid "printer name" +msgstr "yazıcı adı" + +#: param/loadparm.c:847 +msgid "printer" +msgstr "yazıcı" + +#: param/loadparm.c:848 +msgid "use client driver" +msgstr "istemci sürücüsü kullan" + +#: param/loadparm.c:849 +msgid "printer driver" +msgstr "yazıcı sürücüsü" + +#: param/loadparm.c:850 +msgid "printer driver file" +msgstr "yazıcı sürücü dosyası" + +#: param/loadparm.c:851 +msgid "printer driver location" +msgstr "yazıcı sürücüsü yeri" + +#: param/loadparm.c:853 +msgid "Filename Handling" +msgstr "Dosyaadı İşlenmesi" + +#: param/loadparm.c:854 +msgid "strip dot" +msgstr "noktaları bastır" + +#: param/loadparm.c:856 +msgid "mangled stack" +msgstr "karıştırılmış yığıt" + +#: param/loadparm.c:857 +msgid "default case" +msgstr "öntanımlı büyük/küçük harf" + +#: param/loadparm.c:858 +msgid "case sensitive" +msgstr "büyük küçük harfe duyarlı" + +#: param/loadparm.c:859 +msgid "casesignames" +msgstr "casesignames" + +#: param/loadparm.c:860 +msgid "preserve case" +msgstr "büyük küçük harf ayrımını tut" + +#: param/loadparm.c:861 +msgid "short preserve case" +msgstr "kısa büyük küçük harf ayrımını tut" + +#: param/loadparm.c:862 +msgid "mangle case" +msgstr "büyük küçük harf harmanla" + +#: param/loadparm.c:863 +msgid "mangling char" +msgstr "karakter harmanlanıyor" + +#: param/loadparm.c:864 +msgid "hide dot files" +msgstr "nokta ile başlayan dosyaları gizle" + +#: param/loadparm.c:865 +msgid "hide unreadable" +msgstr "okunamazları sakla" + +#: param/loadparm.c:866 +msgid "delete veto files" +msgstr "veto dosyalarını sil" + +#: param/loadparm.c:867 +msgid "veto files" +msgstr "veto dosyaları" + +#: param/loadparm.c:868 +msgid "hide files" +msgstr "dosyaları gizle" + +#: param/loadparm.c:869 +msgid "veto oplock files" +msgstr "veto oplock dosyaları" + +#: param/loadparm.c:870 +msgid "map system" +msgstr "sistemi eşle" + +#: param/loadparm.c:871 +msgid "map hidden" +msgstr "gizlileri eşle" + +#: param/loadparm.c:872 +msgid "map archive" +msgstr "arşivi eşle" + +#: param/loadparm.c:873 +msgid "mangled names" +msgstr "harmanlanmış isimler" + +#: param/loadparm.c:874 +msgid "mangled map" +msgstr "harmanlanmış eşleşme" + +#: param/loadparm.c:875 +msgid "stat cache" +msgstr "durum arabelleği" + +#: param/loadparm.c:877 +msgid "Domain Options" +msgstr "Alan Seçenekleri" + +#: param/loadparm.c:879 +msgid "domain admin group" +msgstr "alan yönetici grubu" + +#: param/loadparm.c:880 +msgid "domain guest group" +msgstr "alan misafir grubu" + +#: param/loadparm.c:883 +msgid "groupname map" +msgstr "grup adı eşlemesi" + +#: param/loadparm.c:886 +msgid "machine password timeout" +msgstr "makina şifresi zamanaşımı" + +#: param/loadparm.c:888 +msgid "Logon Options" +msgstr "Sistem Giriş Seçenekleri" + +#: param/loadparm.c:890 +msgid "add user script" +msgstr "kullanıcı ekleme betiği" + +#: param/loadparm.c:891 +msgid "delete user script" +msgstr "kullanıcı silme betiği" + +#: param/loadparm.c:892 +msgid "add group script" +msgstr "grup ekleme betiği" + +#: param/loadparm.c:893 +msgid "delete group script" +msgstr "grup silme betiği" + +#: param/loadparm.c:894 +msgid "add user to group script" +msgstr "gruba kullanıcı ekleme betiği" + +#: param/loadparm.c:895 +msgid "delete user from group script" +msgstr "gruptan kullanıcı silme betiği" + +#: param/loadparm.c:896 +msgid "add machine script" +msgstr "makina ekleme betiği" + +#: param/loadparm.c:897 +msgid "shutdown script" +msgstr "sistem kapanış betiği" + +#: param/loadparm.c:898 +msgid "abort shutdown script" +msgstr "sistem kapanış betiğini durdur" + +#: param/loadparm.c:900 +msgid "logon script" +msgstr "sistem giriş betiği" + +#: param/loadparm.c:901 +msgid "logon path" +msgstr "sistem giriş yolu" + +#: param/loadparm.c:902 +msgid "logon drive" +msgstr "sistem giriş aygıtı" + +#: param/loadparm.c:903 +msgid "logon home" +msgstr "sistem giriş kökü" + +#: param/loadparm.c:904 +msgid "domain logons" +msgstr "alan girişleri" + +#: param/loadparm.c:906 +msgid "Browse Options" +msgstr "Gözatma Seçenekleri" + +#: param/loadparm.c:908 +msgid "os level" +msgstr "işletim sistem seviyesi" + +#: param/loadparm.c:909 +msgid "lm announce" +msgstr "lm bildirimi" + +#: param/loadparm.c:910 +msgid "lm interval" +msgstr "lm aralığı" + +#: param/loadparm.c:911 +msgid "preferred master" +msgstr "tercih edilen ana alan sunucusu" + +#: param/loadparm.c:912 +msgid "prefered master" +msgstr "tercih edilen ana alan sunucusu" + +#: param/loadparm.c:913 +msgid "local master" +msgstr "yerel alan sunucusu" + +#: param/loadparm.c:914 +msgid "domain master" +msgstr "alan sunucusu" + +#: param/loadparm.c:915 +msgid "browse list" +msgstr "gözatma listesi" + +#: param/loadparm.c:916 +msgid "browseable" +msgstr "gözatılabilir" + +#: param/loadparm.c:917 +msgid "browsable" +msgstr "gözatılabilir" + +#: param/loadparm.c:918 +msgid "enhanced browsing" +msgstr "gelişkin gözatma" + +#: param/loadparm.c:920 +msgid "WINS Options" +msgstr "WINS Seçenekleri" + +#: param/loadparm.c:921 +msgid "dns proxy" +msgstr "dns proxy" + +#: param/loadparm.c:922 +msgid "wins proxy" +msgstr "wins proxy" + +#: param/loadparm.c:924 +msgid "wins server" +msgstr "wins sunucusu" + +#: param/loadparm.c:925 +msgid "wins support" +msgstr "wins desteği" + +#: param/loadparm.c:926 +msgid "wins hook" +msgstr "wins girişi" + +#: param/loadparm.c:928 +msgid "Locking Options" +msgstr "Kilitleme Seçenekleri" + +#: param/loadparm.c:930 +msgid "blocking locks" +msgstr "engelleyen kilitler" + +#: param/loadparm.c:931 +msgid "fake oplocks" +msgstr "sahte oplocklar" + +#: param/loadparm.c:932 +msgid "kernel oplocks" +msgstr "çekirdek oplockları" + +#: param/loadparm.c:933 +msgid "locking" +msgstr "kilitliyor" + +#: param/loadparm.c:935 +msgid "oplocks" +msgstr "oplocklar" + +#: param/loadparm.c:936 +msgid "level2 oplocks" +msgstr "Seviye 2 oplocklar" + +#: param/loadparm.c:937 +msgid "oplock break wait time" +msgstr "oplock kırma bekleme süresi" + +#: param/loadparm.c:938 +msgid "oplock contention limit" +msgstr "oplock ihtilaf limiti" + +#: param/loadparm.c:939 +msgid "posix locking" +msgstr "posix kilitlemesi" + +#: param/loadparm.c:940 +msgid "strict locking" +msgstr "sıkı kilitleme" + +#: param/loadparm.c:941 +msgid "share modes" +msgstr "paylaşım kipleri" + +#: param/loadparm.c:944 +msgid "Ldap Options" +msgstr "Ldap Seçenekleri" + +#: param/loadparm.c:946 +msgid "ldap server" +msgstr "ldap sunucusu" + +#: param/loadparm.c:947 +msgid "ldap port" +msgstr "ldap portu" + +#: param/loadparm.c:948 +msgid "ldap suffix" +msgstr "ldap soneki" + +#: param/loadparm.c:949 +msgid "ldap filter" +msgstr "ldap filtresi" + +#: param/loadparm.c:950 +msgid "ldap root" +msgstr "ldap kökü" + +#: param/loadparm.c:951 +msgid "ldap root passwd" +msgstr "ldap kök şifresi" + +#: param/loadparm.c:954 +msgid "Miscellaneous Options" +msgstr "Diğer Seçenekler" + +#: param/loadparm.c:955 +msgid "add share command" +msgstr "paylaşım ekle komutu" + +#: param/loadparm.c:956 +msgid "change share command" +msgstr "paylaşım değiştir komutu" + +#: param/loadparm.c:957 +msgid "delete share command" +msgstr "paylaşım sil komutu" + +#: param/loadparm.c:959 +msgid "config file" +msgstr "ayar dosyası" + +#: param/loadparm.c:960 +msgid "preload" +msgstr "önyükle" + +#: param/loadparm.c:961 +msgid "auto services" +msgstr "otomatik servisler" + +#: param/loadparm.c:962 +msgid "lock dir" +msgstr "kilit dizini" + +#: param/loadparm.c:963 +msgid "lock directory" +msgstr "kilit dizini" + +#: param/loadparm.c:965 +msgid "utmp directory" +msgstr "utmp dizini" + +#: param/loadparm.c:966 +msgid "wtmp directory" +msgstr "wtmp dizini" + +#: param/loadparm.c:967 +msgid "utmp" +msgstr "utmp" + +#: param/loadparm.c:970 +msgid "default service" +msgstr "öntanımlı servis" + +#: param/loadparm.c:971 +msgid "default" +msgstr "öntanımlı" + +#: param/loadparm.c:972 +msgid "message command" +msgstr "ileti komutu" + +#: param/loadparm.c:973 +msgid "dfree command" +msgstr "dfree komutu" + +#: param/loadparm.c:974 +msgid "remote announce" +msgstr "uzak bildirim" + +#: param/loadparm.c:975 +msgid "remote browse sync" +msgstr "uzak gözatma senkronizasyonu" + +#: param/loadparm.c:976 +msgid "socket address" +msgstr "soket adresi" + +#: param/loadparm.c:977 +msgid "homedir map" +msgstr "evdizini eşlemesi" + +#: param/loadparm.c:978 +msgid "time offset" +msgstr "zaman kaydırması" + +#: param/loadparm.c:979 +msgid "NIS homedir" +msgstr "NIS evdizini" + +#: param/loadparm.c:980 +msgid "-valid" +msgstr "-geçerli" + +#: param/loadparm.c:982 +msgid "copy" +msgstr "kopyala" + +#: param/loadparm.c:983 +msgid "include" +msgstr "ekle" + +#: param/loadparm.c:984 +msgid "exec" +msgstr "çalıştır" + +#: param/loadparm.c:985 +msgid "preexec" +msgstr "preexec" + +#: param/loadparm.c:987 +msgid "preexec close" +msgstr "preexec close" + +#: param/loadparm.c:988 +msgid "postexec" +msgstr "postexec" + +#: param/loadparm.c:989 +msgid "root preexec" +msgstr "root preexec" + +#: param/loadparm.c:990 +msgid "root preexec close" +msgstr "root preexec close" + +#: param/loadparm.c:991 +msgid "root postexec" +msgstr "root postexec" + +#: param/loadparm.c:992 +msgid "available" +msgstr "mevcut" + +#: param/loadparm.c:993 +msgid "volume" +msgstr "volume" + +#: param/loadparm.c:994 +msgid "fstype" +msgstr "dosya sistem tipi" + +#: param/loadparm.c:995 +msgid "set directory" +msgstr "dizini belirle" + +#: param/loadparm.c:996 +msgid "source environment" +msgstr "source environment" + +#: param/loadparm.c:997 +msgid "wide links" +msgstr "wide links" + +#: param/loadparm.c:998 +msgid "follow symlinks" +msgstr "sembolik bağları izle" + +#: param/loadparm.c:999 +msgid "dont descend" +msgstr "dont descend" + +#: param/loadparm.c:1000 +msgid "magic script" +msgstr "magic script" + +#: param/loadparm.c:1001 +msgid "magic output" +msgstr "magic output" + +#: param/loadparm.c:1002 +msgid "delete readonly" +msgstr "salt okunurları sil" + +#: param/loadparm.c:1003 +msgid "dos filemode" +msgstr "dos dosya kipi" + +#: param/loadparm.c:1004 +msgid "dos filetimes" +msgstr "dos dosya zamanları" + +#: param/loadparm.c:1005 +msgid "dos filetime resolution" +msgstr "dos dosya zamanı çözünürlüğü" + +#: param/loadparm.c:1007 +msgid "fake directory create times" +msgstr "dizin oluşma zamanlarını taklit et" + +#: param/loadparm.c:1008 +msgid "panic action" +msgstr "panik işlemi" + +#: param/loadparm.c:1009 +msgid "hide local users" +msgstr "yerel kullanıcıları sakla" + +#: param/loadparm.c:1012 +msgid "VFS options" +msgstr "VFS Seçenekleri" + +#: param/loadparm.c:1014 +msgid "vfs object" +msgstr "vfs nesnesi" + +#: param/loadparm.c:1015 +msgid "vfs options" +msgstr "vfs seçenekleri" + +#: param/loadparm.c:1018 +msgid "msdfs root" +msgstr "msdfs kökü" + +#: param/loadparm.c:1019 +msgid "host msdfs" +msgstr "host msdfs" + +#: param/loadparm.c:1021 +msgid "Winbind options" +msgstr "Winbind seçenekleri" + +#: param/loadparm.c:1023 +msgid "winbind uid" +msgstr "winbind uid" + +#: param/loadparm.c:1024 +msgid "winbind gid" +msgstr "winbind gid" + +#: param/loadparm.c:1025 +msgid "template homedir" +msgstr "örnek ev dizini" + +#: param/loadparm.c:1026 +msgid "template shell" +msgstr "örnek kabuk" + +#: param/loadparm.c:1027 +msgid "winbind separator" +msgstr "winbind ayracı" + +#: param/loadparm.c:1028 +msgid "winbind cache time" +msgstr "winbind arabellek zamanı" + +#: param/loadparm.c:1029 +msgid "winbind enum users" +msgstr "winbind kullanıcı listele" + +#: param/loadparm.c:1030 +msgid "winbind enum groups" +msgstr "winbind grup listele" + diff --git a/source3/po/zh_CN.gmo b/source3/po/zh_CN.gmo Binary files differnew file mode 100644 index 0000000000..5864706de5 --- /dev/null +++ b/source3/po/zh_CN.gmo diff --git a/source3/po/zh_CN.po b/source3/po/zh_CN.po new file mode 100644 index 0000000000..7b6f6b659c --- /dev/null +++ b/source3/po/zh_CN.po @@ -0,0 +1,1561 @@ +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR Free Software Foundation, Inc. +# FIRST AUTHOR <EMAIL@ADDRESS>, YEAR. +# +#, fuzzy +msgid "" +msgstr "" +"Project-Id-Version: PACKAGE VERSION\n" +"POT-Creation-Date: 2000-05-30 12:14+0900\n" +"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" +"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" +"Language-Team: zh <LL@li.org>\n" +"MIME-Version: 1.0\n" +"Content-Type: text/plain; charset=GB2312\n" +"Content-Transfer-Encoding: \n" + +#: web/swat.c:125 +#, c-format +msgid "ERROR: Can't open %s\n" +msgstr "" + +#: web/swat.c:214 +msgid "Help" +msgstr "Help(zh)" + +#: web/swat.c:221 web/swat.c:233 web/swat.c:245 web/swat.c:254 web/swat.c:263 +#: web/swat.c:269 web/swat.c:275 web/swat.c:285 +msgid "Set Default" +msgstr "" + +#: web/swat.c:396 +#, c-format +msgid "failed to open %s for writing\n" +msgstr "" + +#: web/swat.c:408 +#, c-format +msgid "Can't reload %s\n" +msgstr "" + +#: web/swat.c:486 +#, c-format +msgid "Logged in as <b>%s</b><p>\n" +msgstr "" + +#: web/swat.c:489 +msgid "Home" +msgstr "" + +#: web/swat.c:491 +msgid "Globals" +msgstr "" + +#: web/swat.c:492 +msgid "Shares" +msgstr "" + +#: web/swat.c:493 +msgid "Printers" +msgstr "" + +#: web/swat.c:496 +msgid "Status" +msgstr "" + +#: web/swat.c:497 +msgid "View Config" +msgstr "" + +#: web/swat.c:499 +msgid "Password Management" +msgstr "" + +#: web/swat.c:523 +msgid "Current Config" +msgstr "" + +#: web/swat.c:527 +msgid "Normal View" +msgstr "" + +#: web/swat.c:529 +msgid "Full View" +msgstr "" + +#: web/swat.c:545 +msgid "Global Variables" +msgstr "" + +#: web/swat.c:559 web/swat.c:667 web/swat.c:1022 +msgid "Commit Changes" +msgstr "" + +#: web/swat.c:563 web/swat.c:670 web/swat.c:1024 +msgid "Reset Values" +msgstr "" + +#: web/swat.c:565 web/swat.c:672 web/swat.c:1026 +msgid "Advanced View" +msgstr "" + +#: web/swat.c:567 web/swat.c:674 web/swat.c:1028 +msgid "Basic View" +msgstr "" + +#: web/swat.c:601 +msgid "Share Parameters" +msgstr "" + +#: web/swat.c:637 +msgid "Choose Share" +msgstr "" + +#: web/swat.c:652 +msgid "Delete Share" +msgstr "" + +#: web/swat.c:659 +msgid "Create Share" +msgstr "" + +#: web/swat.c:704 +msgid "password change in demo mode rejected\n" +msgstr "" + +#: web/swat.c:717 +msgid "Can't setup password database vectors.\n" +msgstr "" + +#: web/swat.c:743 +msgid " Must specify \"User Name\" \n" +msgstr "" + +#: web/swat.c:759 +msgid " Must specify \"Old Password\" \n" +msgstr "" + +#: web/swat.c:765 +msgid " Must specify \"Remote Machine\" \n" +msgstr "" + +#: web/swat.c:772 +msgid " Must specify \"New, and Re-typed Passwords\" \n" +msgstr "" + +#: web/swat.c:778 +msgid " Re-typed password didn't match new password\n" +msgstr "" + +#: web/swat.c:807 +#, c-format +msgid " The passwd for '%s' has been changed. \n" +msgstr "" + +#: web/swat.c:809 +#, c-format +msgid " The passwd for '%s' has NOT been changed. \n" +msgstr "" + +#: web/swat.c:833 +msgid "Server Password Management" +msgstr "" + +#. +#. * Create all the dialog boxes for data collection +#. +#: web/swat.c:842 web/swat.c:889 +msgid " User Name : " +msgstr "" + +#: web/swat.c:845 web/swat.c:891 +msgid " Old Password : " +msgstr "" + +#: web/swat.c:848 web/swat.c:893 +msgid " New Password : " +msgstr "" + +#: web/swat.c:850 web/swat.c:895 +msgid " Re-type New Password : " +msgstr "" + +#: web/swat.c:858 web/swat.c:906 +msgid "Change Password" +msgstr "" + +#: web/swat.c:861 +msgid "Add New User" +msgstr "" + +#: web/swat.c:863 +msgid "Delete User" +msgstr "" + +#: web/swat.c:865 +msgid "Disable User" +msgstr "" + +#: web/swat.c:867 +msgid "Enable User" +msgstr "" + +#: web/swat.c:880 +msgid "Client/Server Password Management" +msgstr "" + +#: web/swat.c:897 +msgid " Remote Machine : " +msgstr "" + +#: web/swat.c:941 +msgid "Printer Parameters" +msgstr "" + +#: web/swat.c:943 +msgid "Important Note:" +msgstr "" + +#: web/swat.c:944 +msgid "Printer names marked with [*] in the Choose Printer drop-down box " +msgstr "" + +#: web/swat.c:945 +msgid "are autoloaded printers from " +msgstr "" + +#: web/swat.c:946 +msgid "Printcap Name" +msgstr "" + +#: web/swat.c:947 +msgid "Attempting to delete these printers from SWAT will have no effect.\n" +msgstr "" + +#: web/swat.c:987 +msgid "Choose Printer" +msgstr "" + +#: web/swat.c:1007 +msgid "Delete Printer" +msgstr "" + +#: web/swat.c:1014 +msgid "Create Printer" +msgstr "" + +#: web/statuspage.c:38 +msgid "DENY_NONE" +msgstr "" + +#: web/statuspage.c:39 +msgid "DENY_ALL " +msgstr "" + +#: web/statuspage.c:40 +msgid "DENY_DOS " +msgstr "" + +#: web/statuspage.c:41 +msgid "DENY_READ " +msgstr "" + +#: web/statuspage.c:42 +msgid "DENY_WRITE " +msgstr "" + +#: web/statuspage.c:48 +msgid "RDONLY " +msgstr "" + +#: web/statuspage.c:49 +msgid "WRONLY " +msgstr "" + +#: web/statuspage.c:50 +msgid "RDWR " +msgstr "" + +#: web/statuspage.c:58 +msgid "EXCLUSIVE+BATCH " +msgstr "" + +#: web/statuspage.c:60 +msgid "EXCLUSIVE " +msgstr "" + +#: web/statuspage.c:62 +msgid "BATCH " +msgstr "" + +#: web/statuspage.c:64 +msgid "LEVEL_II " +msgstr "" + +#: web/statuspage.c:66 +msgid "NONE " +msgstr "" + +#: web/statuspage.c:145 +msgid "Server Status" +msgstr "" + +#: web/statuspage.c:150 +msgid "Auto Refresh" +msgstr "" + +#: web/statuspage.c:151 web/statuspage.c:156 +msgid "Refresh Interval: " +msgstr "" + +#: web/statuspage.c:155 +msgid "Stop Refreshing" +msgstr "" + +#: web/statuspage.c:167 +msgid "You need to have status=yes in your smb config file\n" +msgstr "" + +#: web/statuspage.c:173 +msgid "version:" +msgstr "" + +#: web/statuspage.c:176 +msgid "smbd:" +msgstr "" + +#: web/statuspage.c:176 web/statuspage.c:188 +msgid "running" +msgstr "" + +#: web/statuspage.c:176 web/statuspage.c:188 +msgid "not running" +msgstr "" + +#: web/statuspage.c:179 +msgid "Stop smbd" +msgstr "" + +#: web/statuspage.c:181 +msgid "Start smbd" +msgstr "" + +#: web/statuspage.c:183 +msgid "Restart smbd" +msgstr "" + +#: web/statuspage.c:188 +msgid "nmbd:" +msgstr "" + +#: web/statuspage.c:191 +msgid "Stop nmbd" +msgstr "" + +#: web/statuspage.c:193 +msgid "Start nmbd" +msgstr "" + +#: web/statuspage.c:195 +msgid "Restart nmbd" +msgstr "" + +#: web/statuspage.c:202 +msgid "Active Connections" +msgstr "" + +#: web/statuspage.c:204 web/statuspage.c:235 web/statuspage.c:254 +msgid "PID" +msgstr "" + +#: web/statuspage.c:204 web/statuspage.c:235 +msgid "Client" +msgstr "" + +#: web/statuspage.c:204 +msgid "IP address" +msgstr "" + +#: web/statuspage.c:204 web/statuspage.c:235 web/statuspage.c:254 +msgid "Date" +msgstr "" + +#: web/statuspage.c:206 +msgid "Kill" +msgstr "" + +#: web/statuspage.c:232 +msgid "Active Shares" +msgstr "" + +#: web/statuspage.c:235 +msgid "Share" +msgstr "" + +#: web/statuspage.c:235 +msgid "User" +msgstr "" + +#: web/statuspage.c:235 +msgid "Group" +msgstr "" + +#: web/statuspage.c:252 +msgid "Open Files" +msgstr "" + +#: web/statuspage.c:254 +msgid "Sharing" +msgstr "" + +#: web/statuspage.c:254 +msgid "R/W" +msgstr "" + +#: web/statuspage.c:254 +msgid "Oplock" +msgstr "" + +#: web/statuspage.c:254 +msgid "File" +msgstr "" + +#: param/loadparm.c:557 +msgid "Base Options" +msgstr "" + +#: param/loadparm.c:558 +msgid "coding system" +msgstr "" + +#: param/loadparm.c:559 +msgid "client code page" +msgstr "" + +#: param/loadparm.c:560 +msgid "comment" +msgstr "" + +#: param/loadparm.c:561 +msgid "path" +msgstr "" + +#: param/loadparm.c:562 +msgid "directory" +msgstr "" + +#: param/loadparm.c:563 +msgid "workgroup" +msgstr "" + +#: param/loadparm.c:564 +msgid "netbios name" +msgstr "" + +#: param/loadparm.c:565 +msgid "netbios aliases" +msgstr "" + +#: param/loadparm.c:566 +msgid "netbios scope" +msgstr "" + +#: param/loadparm.c:567 +msgid "server string" +msgstr "" + +#: param/loadparm.c:568 +msgid "interfaces" +msgstr "" + +#: param/loadparm.c:569 +msgid "bind interfaces only" +msgstr "" + +#: param/loadparm.c:571 +msgid "Security Options" +msgstr "" + +#: param/loadparm.c:572 +msgid "security" +msgstr "" + +#: param/loadparm.c:573 +msgid "encrypt passwords" +msgstr "" + +#: param/loadparm.c:574 +msgid "update encrypted" +msgstr "" + +#: param/loadparm.c:575 +msgid "allow trusted domains" +msgstr "" + +#: param/loadparm.c:576 +msgid "alternate permissions" +msgstr "" + +#: param/loadparm.c:577 +msgid "hosts equiv" +msgstr "" + +#: param/loadparm.c:578 +msgid "min password length" +msgstr "" + +#: param/loadparm.c:579 +msgid "min passwd length" +msgstr "" + +#: param/loadparm.c:580 +msgid "map to guest" +msgstr "" + +#: param/loadparm.c:581 +msgid "null passwords" +msgstr "" + +#: param/loadparm.c:582 +msgid "password server" +msgstr "" + +#: param/loadparm.c:583 +msgid "smb passwd file" +msgstr "" + +#: param/loadparm.c:584 +msgid "root directory" +msgstr "" + +#: param/loadparm.c:585 +msgid "root dir" +msgstr "" + +#: param/loadparm.c:586 +msgid "root" +msgstr "" + +#: param/loadparm.c:587 +msgid "passwd program" +msgstr "" + +#: param/loadparm.c:588 +msgid "passwd chat" +msgstr "" + +#: param/loadparm.c:589 +msgid "passwd chat debug" +msgstr "" + +#: param/loadparm.c:590 +msgid "username map" +msgstr "" + +#: param/loadparm.c:591 +msgid "password level" +msgstr "" + +#: param/loadparm.c:592 +msgid "username level" +msgstr "" + +#: param/loadparm.c:593 +msgid "unix password sync" +msgstr "" + +#: param/loadparm.c:594 +msgid "restrict anonymous" +msgstr "" + +#: param/loadparm.c:595 +msgid "revalidate" +msgstr "" + +#: param/loadparm.c:596 +msgid "use rhosts" +msgstr "" + +#: param/loadparm.c:597 +msgid "username" +msgstr "" + +#: param/loadparm.c:598 +msgid "user" +msgstr "" + +#: param/loadparm.c:599 +msgid "users" +msgstr "" + +#: param/loadparm.c:600 +msgid "guest account" +msgstr "" + +#: param/loadparm.c:601 +msgid "invalid users" +msgstr "" + +#: param/loadparm.c:602 +msgid "valid users" +msgstr "" + +#: param/loadparm.c:603 +msgid "admin users" +msgstr "" + +#: param/loadparm.c:604 +msgid "read list" +msgstr "" + +#: param/loadparm.c:605 +msgid "write list" +msgstr "" + +#: param/loadparm.c:606 +msgid "force user" +msgstr "" + +#: param/loadparm.c:607 +msgid "force group" +msgstr "" + +#: param/loadparm.c:608 +msgid "group" +msgstr "" + +#: param/loadparm.c:609 +msgid "writeable" +msgstr "" + +#: param/loadparm.c:610 +msgid "write ok" +msgstr "" + +#: param/loadparm.c:611 +msgid "writable" +msgstr "" + +#: param/loadparm.c:612 +msgid "read only" +msgstr "" + +#: param/loadparm.c:613 +msgid "create mask" +msgstr "" + +#: param/loadparm.c:614 +msgid "create mode" +msgstr "" + +#: param/loadparm.c:615 +msgid "force create mode" +msgstr "" + +#: param/loadparm.c:616 +msgid "security mask" +msgstr "" + +#: param/loadparm.c:617 +msgid "force security mode" +msgstr "" + +#: param/loadparm.c:618 +msgid "directory mask" +msgstr "" + +#: param/loadparm.c:619 +msgid "directory mode" +msgstr "" + +#: param/loadparm.c:620 +msgid "force directory mode" +msgstr "" + +#: param/loadparm.c:621 +msgid "directory security mask" +msgstr "" + +#: param/loadparm.c:622 +msgid "force directory security mode" +msgstr "" + +#: param/loadparm.c:623 +msgid "inherit permissions" +msgstr "" + +#: param/loadparm.c:624 +msgid "guest only" +msgstr "" + +#: param/loadparm.c:625 +msgid "only guest" +msgstr "" + +#: param/loadparm.c:626 +msgid "guest ok" +msgstr "" + +#: param/loadparm.c:627 +msgid "public" +msgstr "" + +#: param/loadparm.c:628 +msgid "only user" +msgstr "" + +#: param/loadparm.c:629 +msgid "hosts allow" +msgstr "" + +#: param/loadparm.c:630 +msgid "allow hosts" +msgstr "" + +#: param/loadparm.c:631 +msgid "hosts deny" +msgstr "" + +#: param/loadparm.c:632 +msgid "deny hosts" +msgstr "" + +#: param/loadparm.c:635 +msgid "Secure Socket Layer Options" +msgstr "" + +#: param/loadparm.c:636 +msgid "ssl" +msgstr "" + +#: param/loadparm.c:637 +msgid "ssl hosts" +msgstr "" + +#: param/loadparm.c:638 +msgid "ssl hosts resign" +msgstr "" + +#: param/loadparm.c:639 +msgid "ssl CA certDir" +msgstr "" + +#: param/loadparm.c:640 +msgid "ssl CA certFile" +msgstr "" + +#: param/loadparm.c:641 +msgid "ssl server cert" +msgstr "" + +#: param/loadparm.c:642 +msgid "ssl server key" +msgstr "" + +#: param/loadparm.c:643 +msgid "ssl client cert" +msgstr "" + +#: param/loadparm.c:644 +msgid "ssl client key" +msgstr "" + +#: param/loadparm.c:645 +msgid "ssl require clientcert" +msgstr "" + +#: param/loadparm.c:646 +msgid "ssl require servercert" +msgstr "" + +#: param/loadparm.c:647 +msgid "ssl ciphers" +msgstr "" + +#: param/loadparm.c:648 +msgid "ssl version" +msgstr "" + +#: param/loadparm.c:649 +msgid "ssl compatibility" +msgstr "" + +#: param/loadparm.c:652 +msgid "Logging Options" +msgstr "" + +#: param/loadparm.c:653 +msgid "debug level" +msgstr "" + +#: param/loadparm.c:654 +msgid "log level" +msgstr "" + +#: param/loadparm.c:655 +msgid "syslog" +msgstr "" + +#: param/loadparm.c:656 +msgid "syslog only" +msgstr "" + +#: param/loadparm.c:657 +msgid "log file" +msgstr "" + +#: param/loadparm.c:658 +msgid "max log size" +msgstr "" + +#: param/loadparm.c:659 +msgid "debug timestamp" +msgstr "" + +#: param/loadparm.c:660 +msgid "timestamp logs" +msgstr "" + +#: param/loadparm.c:661 +msgid "debug hires timestamp" +msgstr "" + +#: param/loadparm.c:662 +msgid "debug pid" +msgstr "" + +#: param/loadparm.c:663 +msgid "debug uid" +msgstr "" + +#: param/loadparm.c:664 +msgid "status" +msgstr "" + +#: param/loadparm.c:666 +msgid "Protocol Options" +msgstr "" + +#: param/loadparm.c:667 +msgid "protocol" +msgstr "" + +#: param/loadparm.c:668 +msgid "read bmpx" +msgstr "" + +#: param/loadparm.c:669 +msgid "read raw" +msgstr "" + +#: param/loadparm.c:670 +msgid "write raw" +msgstr "" + +#: param/loadparm.c:671 +msgid "nt smb support" +msgstr "" + +#: param/loadparm.c:672 +msgid "nt pipe support" +msgstr "" + +#: param/loadparm.c:673 +msgid "nt acl support" +msgstr "" + +#: param/loadparm.c:674 +msgid "announce version" +msgstr "" + +#: param/loadparm.c:675 +msgid "announce as" +msgstr "" + +#: param/loadparm.c:676 +msgid "max mux" +msgstr "" + +#: param/loadparm.c:677 +msgid "max xmit" +msgstr "" + +#: param/loadparm.c:678 +msgid "name resolve order" +msgstr "" + +#: param/loadparm.c:679 +msgid "packet size" +msgstr "" + +#: param/loadparm.c:680 +msgid "max packet" +msgstr "" + +#: param/loadparm.c:681 +msgid "max ttl" +msgstr "" + +#: param/loadparm.c:682 +msgid "max wins ttl" +msgstr "" + +#: param/loadparm.c:683 +msgid "min wins ttl" +msgstr "" + +#: param/loadparm.c:684 +msgid "time server" +msgstr "" + +#: param/loadparm.c:686 +msgid "Tuning Options" +msgstr "" + +#: param/loadparm.c:687 +msgid "change notify timeout" +msgstr "" + +#: param/loadparm.c:688 +msgid "deadtime" +msgstr "" + +#: param/loadparm.c:689 +msgid "getwd cache" +msgstr "" + +#: param/loadparm.c:690 +msgid "keepalive" +msgstr "" + +#: param/loadparm.c:691 +msgid "lpq cache time" +msgstr "" + +#: param/loadparm.c:692 +msgid "max connections" +msgstr "" + +#: param/loadparm.c:693 +msgid "max disk size" +msgstr "" + +#: param/loadparm.c:694 +msgid "max open files" +msgstr "" + +#: param/loadparm.c:695 +msgid "min print space" +msgstr "" + +#: param/loadparm.c:696 +msgid "read prediction" +msgstr "" + +#: param/loadparm.c:697 +msgid "read size" +msgstr "" + +#: param/loadparm.c:698 +msgid "shared mem size" +msgstr "" + +#: param/loadparm.c:699 +msgid "socket options" +msgstr "" + +#: param/loadparm.c:700 +msgid "stat cache size" +msgstr "" + +#: param/loadparm.c:701 +msgid "strict sync" +msgstr "" + +#: param/loadparm.c:702 +msgid "sync always" +msgstr "" + +#: param/loadparm.c:703 +msgid "write cache size" +msgstr "" + +#: param/loadparm.c:705 +msgid "Printing Options" +msgstr "" + +#: param/loadparm.c:706 +msgid "load printers" +msgstr "" + +#: param/loadparm.c:707 +msgid "printcap name" +msgstr "" + +#: param/loadparm.c:708 +msgid "printcap" +msgstr "" + +#: param/loadparm.c:709 +msgid "printer driver file" +msgstr "" + +#: param/loadparm.c:710 +msgid "printable" +msgstr "" + +#: param/loadparm.c:711 +msgid "print ok" +msgstr "" + +#: param/loadparm.c:712 +msgid "postscript" +msgstr "" + +#: param/loadparm.c:713 +msgid "printing" +msgstr "" + +#: param/loadparm.c:714 +msgid "print command" +msgstr "" + +#: param/loadparm.c:715 +msgid "lpq command" +msgstr "" + +#: param/loadparm.c:716 +msgid "lprm command" +msgstr "" + +#: param/loadparm.c:717 +msgid "lppause command" +msgstr "" + +#: param/loadparm.c:718 +msgid "lpresume command" +msgstr "" + +#: param/loadparm.c:719 +msgid "queuepause command" +msgstr "" + +#: param/loadparm.c:720 +msgid "queueresume command" +msgstr "" + +#: param/loadparm.c:722 +msgid "printer" +msgstr "" + +#: param/loadparm.c:723 +msgid "printer name" +msgstr "" + +#: param/loadparm.c:724 +msgid "printer driver" +msgstr "" + +#: param/loadparm.c:725 +msgid "printer driver location" +msgstr "" + +#: param/loadparm.c:728 +msgid "Filename Handling" +msgstr "" + +#: param/loadparm.c:729 +msgid "strip dot" +msgstr "" + +#: param/loadparm.c:730 +msgid "character set" +msgstr "" + +#: param/loadparm.c:731 +msgid "mangled stack" +msgstr "" + +#: param/loadparm.c:732 +msgid "default case" +msgstr "" + +#: param/loadparm.c:733 +msgid "case sensitive" +msgstr "" + +#: param/loadparm.c:734 +msgid "casesignames" +msgstr "" + +#: param/loadparm.c:735 +msgid "preserve case" +msgstr "" + +#: param/loadparm.c:736 +msgid "short preserve case" +msgstr "" + +#: param/loadparm.c:737 +msgid "mangle case" +msgstr "" + +#: param/loadparm.c:738 +msgid "mangling char" +msgstr "" + +#: param/loadparm.c:739 +msgid "hide dot files" +msgstr "" + +#: param/loadparm.c:740 +msgid "delete veto files" +msgstr "" + +#: param/loadparm.c:741 +msgid "veto files" +msgstr "" + +#: param/loadparm.c:742 +msgid "hide files" +msgstr "" + +#: param/loadparm.c:743 +msgid "veto oplock files" +msgstr "" + +#: param/loadparm.c:744 +msgid "map system" +msgstr "" + +#: param/loadparm.c:745 +msgid "map hidden" +msgstr "" + +#: param/loadparm.c:746 +msgid "map archive" +msgstr "" + +#: param/loadparm.c:747 +msgid "mangled names" +msgstr "" + +#: param/loadparm.c:748 +msgid "mangled map" +msgstr "" + +#: param/loadparm.c:749 +msgid "stat cache" +msgstr "" + +#: param/loadparm.c:751 +msgid "Domain Options" +msgstr "" + +#: param/loadparm.c:752 +msgid "domain groups" +msgstr "" + +#: param/loadparm.c:753 +msgid "domain admin group" +msgstr "" + +#: param/loadparm.c:754 +msgid "domain guest group" +msgstr "" + +#: param/loadparm.c:755 +msgid "domain admin users" +msgstr "" + +#: param/loadparm.c:756 +msgid "domain guest users" +msgstr "" + +#: param/loadparm.c:758 +msgid "groupname map" +msgstr "" + +#: param/loadparm.c:760 +msgid "machine password timeout" +msgstr "" + +#: param/loadparm.c:762 +msgid "Logon Options" +msgstr "" + +#: param/loadparm.c:763 +msgid "add user script" +msgstr "" + +#: param/loadparm.c:764 +msgid "delete user script" +msgstr "" + +#: param/loadparm.c:765 +msgid "logon script" +msgstr "" + +#: param/loadparm.c:766 +msgid "logon path" +msgstr "" + +#: param/loadparm.c:767 +msgid "logon drive" +msgstr "" + +#: param/loadparm.c:768 +msgid "logon home" +msgstr "" + +#: param/loadparm.c:769 +msgid "domain logons" +msgstr "" + +#: param/loadparm.c:771 +msgid "Browse Options" +msgstr "" + +#: param/loadparm.c:772 +msgid "os level" +msgstr "" + +#: param/loadparm.c:773 +msgid "lm announce" +msgstr "" + +#: param/loadparm.c:774 +msgid "lm interval" +msgstr "" + +#: param/loadparm.c:775 +msgid "preferred master" +msgstr "" + +#: param/loadparm.c:776 +msgid "prefered master" +msgstr "" + +#: param/loadparm.c:777 +msgid "local master" +msgstr "" + +#: param/loadparm.c:778 +msgid "domain master" +msgstr "" + +#: param/loadparm.c:779 +msgid "browse list" +msgstr "" + +#: param/loadparm.c:780 +msgid "browseable" +msgstr "" + +#: param/loadparm.c:781 +msgid "browsable" +msgstr "" + +#: param/loadparm.c:783 +msgid "WINS Options" +msgstr "" + +#: param/loadparm.c:784 +msgid "dns proxy" +msgstr "" + +#: param/loadparm.c:785 +msgid "wins proxy" +msgstr "" + +#: param/loadparm.c:786 +msgid "wins server" +msgstr "" + +#: param/loadparm.c:787 +msgid "wins support" +msgstr "" + +#: param/loadparm.c:788 +msgid "wins hook" +msgstr "" + +#: param/loadparm.c:790 +msgid "Locking Options" +msgstr "" + +#: param/loadparm.c:791 +msgid "blocking locks" +msgstr "" + +#: param/loadparm.c:792 +msgid "fake oplocks" +msgstr "" + +#: param/loadparm.c:793 +msgid "kernel oplocks" +msgstr "" + +#: param/loadparm.c:794 +msgid "locking" +msgstr "" + +#: param/loadparm.c:796 +msgid "utmp" +msgstr "" + +#: param/loadparm.c:798 +msgid "ole locking compatibility" +msgstr "" + +#: param/loadparm.c:799 +msgid "oplocks" +msgstr "" + +#: param/loadparm.c:800 +msgid "level2 oplocks" +msgstr "" + +#: param/loadparm.c:801 +msgid "oplock break wait time" +msgstr "" + +#: param/loadparm.c:802 +msgid "oplock contention limit" +msgstr "" + +#: param/loadparm.c:803 +msgid "strict locking" +msgstr "" + +#: param/loadparm.c:804 +msgid "share modes" +msgstr "" + +#: param/loadparm.c:807 +msgid "Ldap Options" +msgstr "" + +#: param/loadparm.c:808 +msgid "ldap server" +msgstr "" + +#: param/loadparm.c:809 +msgid "ldap port" +msgstr "" + +#: param/loadparm.c:810 +msgid "ldap suffix" +msgstr "" + +#: param/loadparm.c:811 +msgid "ldap filter" +msgstr "" + +#: param/loadparm.c:812 +msgid "ldap root" +msgstr "" + +#: param/loadparm.c:813 +msgid "ldap root passwd" +msgstr "" + +#: param/loadparm.c:817 +msgid "Miscellaneous Options" +msgstr "" + +#: param/loadparm.c:818 +msgid "smbrun" +msgstr "" + +#: param/loadparm.c:819 +msgid "config file" +msgstr "" + +#: param/loadparm.c:820 +msgid "auto services" +msgstr "" + +#: param/loadparm.c:821 +msgid "preload" +msgstr "" + +#: param/loadparm.c:822 +msgid "lock directory" +msgstr "" + +#: param/loadparm.c:823 +msgid "lock dir" +msgstr "" + +#: param/loadparm.c:825 +msgid "utmp directory" +msgstr "" + +#: param/loadparm.c:826 +msgid "utmp dir" +msgstr "" + +#: param/loadparm.c:827 +msgid "wtmp directory" +msgstr "" + +#: param/loadparm.c:828 +msgid "wtmp dir" +msgstr "" + +#: param/loadparm.c:829 +msgid "utmp hostname" +msgstr "" + +#: param/loadparm.c:830 +msgid "utmp consolidate" +msgstr "" + +#: param/loadparm.c:832 +msgid "default service" +msgstr "" + +#: param/loadparm.c:833 +msgid "default" +msgstr "" + +#: param/loadparm.c:834 +msgid "message command" +msgstr "" + +#: param/loadparm.c:835 +msgid "dfree command" +msgstr "" + +#: param/loadparm.c:836 +msgid "valid chars" +msgstr "" + +#: param/loadparm.c:837 +msgid "remote announce" +msgstr "" + +#: param/loadparm.c:838 +msgid "remote browse sync" +msgstr "" + +#: param/loadparm.c:839 +msgid "socket address" +msgstr "" + +#: param/loadparm.c:840 +msgid "homedir map" +msgstr "" + +#: param/loadparm.c:841 +msgid "time offset" +msgstr "" + +#: param/loadparm.c:842 +msgid "unix realname" +msgstr "" + +#: param/loadparm.c:843 +msgid "NIS homedir" +msgstr "" + +#: param/loadparm.c:844 +msgid "-valid" +msgstr "" + +#: param/loadparm.c:845 +msgid "copy" +msgstr "" + +#: param/loadparm.c:846 +msgid "include" +msgstr "" + +#: param/loadparm.c:847 +msgid "preexec" +msgstr "" + +#: param/loadparm.c:848 +msgid "exec" +msgstr "" + +#: param/loadparm.c:849 +msgid "preexec close" +msgstr "" + +#: param/loadparm.c:850 +msgid "postexec" +msgstr "" + +#: param/loadparm.c:851 +msgid "root preexec" +msgstr "" + +#: param/loadparm.c:852 +msgid "root preexec close" +msgstr "" + +#: param/loadparm.c:853 +msgid "root postexec" +msgstr "" + +#: param/loadparm.c:854 +msgid "available" +msgstr "" + +#: param/loadparm.c:855 +msgid "volume" +msgstr "" + +#: param/loadparm.c:856 +msgid "fstype" +msgstr "" + +#: param/loadparm.c:857 +msgid "set directory" +msgstr "" + +#: param/loadparm.c:858 +msgid "source environment" +msgstr "" + +#: param/loadparm.c:859 +msgid "wide links" +msgstr "" + +#: param/loadparm.c:860 +msgid "follow symlinks" +msgstr "" + +#: param/loadparm.c:861 +msgid "dont descend" +msgstr "" + +#: param/loadparm.c:862 +msgid "magic script" +msgstr "" + +#: param/loadparm.c:863 +msgid "magic output" +msgstr "" + +#: param/loadparm.c:864 +msgid "delete readonly" +msgstr "" + +#: param/loadparm.c:865 +msgid "dos filetimes" +msgstr "" + +#: param/loadparm.c:866 +msgid "dos filetime resolution" +msgstr "" + +#: param/loadparm.c:868 +msgid "fake directory create times" +msgstr "" + +#: param/loadparm.c:869 +msgid "panic action" +msgstr "" |