# make_smbcodepage (1)

## Samba-TNG

## 20 Aug 2005

## NAME

make_codepage - Construct a codepage file for Samba-TNG

## SYNOPSIS

make_smbcodepage [c|d] codepage inputfile outputfile

## DESCRIPTION

This program is part of the Samba-TNG suite.

make_smbcodepage compiles or de-compiles codepage files for use with the internationalization features of Samba-TNG.

## OPTIONS

c|d
  This tells make_smbcodepage if it is compiling (c) a text format code page file to binary, or (d) de-compiling a binary codepage file to text.

codepage
  This is the codepage we are processing (a number, e.g. 850).

inputfile
  This is the input file to process. In the 'c' case this will be a text codepage definition file such as the ones found in the Samba-TNG source/codepages directory. In the 'd' case this will be the binary format codepage definition file normally found in the lib/codepages directory in the Samba-TNG install directory path.

outputfile
  This is the output file to produce.

  ## Samba Codepage Files

  A text Samba-TNG codepage definition file is a description that tells Samba-TNG how to map from upper to lower case for characters greater than ascii 127 in the specified DOS code page. Note that for certain DOS codepages (437 for example) mapping from lower to upper case may be non-symmetrical. For example, in code page 437 lower case 'a' acute maps to a plain upper case 'A' when going from lower to upper case, but plain upper case 'A' maps to plain lower case 'a' when lower casing a character.

  A binary Samba-TNG codepage definition file is a binary representation of the same information, including a value that specifies what codepage this file is describing.

  As Samba-TNG is migrating to Unicode, you still need to specify the client code page that your DOS and Windows clients are using if you wish to have case insensitivity done correctly for your particular language. The default codepage Samba-TNG uses is 850 (Western European). Text codepage definition sample files are provided in the Samba-TNG distribution for codepages 437 (USA), 737 (Greek), 850 (Western European), 852 (MS-DOS Latin 2), 861 (Icelandic), 866 (Cyrillic), 932 (Kanji SJIS), 936 (Simplified Chinese), 949 (Hangul) and 950 (Traditional Chinese). Users are encouraged to write text codepage definition files for their own code pages and donate them to tng-technical@samba-tng.org. All codepage files in the Samba-TNG source/codepages directory are compiled and installed when a 'make install' command is issued there.

  The client codepage used by the smbd server is configured using the client code page parameter in the smb.conf file.

  ## FILES

  codepage_def.<codepage>

  These are the input (text) codepage files provided in the Samba-TNG source/codepages directory.

  A text codepage definition file consists of multiple lines containing four fields. These fields are :

  - lower: which is the (hex) lower case character mapped on this line.

  - upper: which is the (hex) upper case character that the lower case character will map to.

  - map upper to lower which is a boolean value (put either True or False here) which tells Samba-TNG if it is to map the given upper case character to the given lower case character when lower casing a filename.

  - map lower to upper which is a boolean value (put either True or False here) which tells Samba-TNG if it is to map the given lower case character to the given upper case character when upper casing a filename.

  codepage.<codepage> These are the output (binary) codepage files produced and placed in the Samba-TNG destination lib/codepage directory.

  ## INSTALLATION

  The location of the server and its support files is a matter for individual system administrators. The following are thus suggestions only.

  It is recommended that the make_smbcodepage program be installed under the /usr/local/samba hierarchy, in a directory readable by all, writeable only by root. The program itself should be executable by all. The program should NOT be setuid or setgid!

  ## SEE ALSO

  smb.conf(5), smbd(8)

  ## AUTHOR

  The original Samba software and related utilities were created by Andrew Tridgell.

  Samba-TNG is now developed by the Samba-TNG Team as an independent Open Source project. Take a look at the Samba-TNG Forum for more informations.

  This manual page originally was written by Karl Auer and updated by Jeremy Allison.

  2005 the manpage was adapted to the current version of the Samba-TNG project.