uuencode - UUENCODE のエンコードとデコード

------------------------------------------------------------------------------
int touufrombits(unsigned char *out, const unsigned char *in, int inlen);

長さ inlen のデータ(最大 45 バイト) in を UUENCODE 文字列にエンコードし、
out に出力します。 out には十分な領域が必要です
(少なくとも (inlen * 4 + 2) / 3 + 1 バイト)。

out: UUENCODE 文字列を出力するバッファ
in: 入力データ
inlen: 入力データの長さ(45 バイト以下)
戻り値: 出力文字列の長さ(ヌル文字の分を含む)
        エラーの場合 -1

------------------------------------------------------------------------------
int fromuutobits(char *out, const char *in);

UUENCODE エンコード文字列 in をデコードし、 out に出力します。
out の領域は 45 バイト必要です。

in: UUENCODE エンコード文字列
out: データ出力用バッファ
戻り値: 出力データの長さ
        エラーの場合負の値
        -1: 不正な文字が含まれている
        -2: データの先頭に記録されているデータ長が不正
        -3: 実際のデータ長が先頭の宣言と一致しない
