入場者数
kema's web TopWho is kema?電気・回路無線コンピュータ
バイク鉄道関係妙な写真・イラストkema's料理ゲーム関係

上に戻る

+FreeBSD
和訳RFC
自作プログラム公開場所
自作プログラム公開場所

拙作プログラム公開後悔場所


コンピュータ、とりわけプログラムなんて大の苦手なワタクシが作ったソースを置いておくという破廉恥なページです(笑)。ワタクシのWEBページ群のどこにも増して無保証です。万が一実行した結果、システムがぶっ飛んで復旧不能になって100億円の損害を出してもアタクシは知りません(笑)。
基本的に、入力に不正データがあった場合の処理なんかが甘いです。分かっちゃいますが、自分で分かった上で使ってますので無保証、そして無責任です(笑)。


FreeBSDカーネル"VIA Nehemiah"表示用パッチ

先日、サーバのCPUを「VIA C3/Nehemiah」に変えたんですが、FreeBSDのカーネルが「UnknownCPU」として認識したのが今ひとつ気持ち悪かったために作っただけのパッチです。
面白くもなんともない、技術力ゼロのパッチ。


dmesgの内容
使用前
Copyright (c) 1992-2003 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD 4.9-RELEASE #2: Mon Nov  3 14:16:41 JST 2003
    root@khz-net.com:/usr/src/sys/compile/KHZ
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 996830517 Hz
CPU: VIA/IDT Unknown (996.83-MHz 686-class CPU)
  Origin = "CentaurHauls"  Id = 0x693  Stepping = 3
  Features=0x380b13d
使用後
Copyright (c) 1992-2003 The FreeBSD Project.
Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
        The Regents of the University of California. All rights reserved.
FreeBSD 4.9-RELEASE #2: Mon Nov  3 14:16:41 JST 2003
    root@khz-net.com:/usr/src/sys/compile/KHZ
Timecounter "i8254"  frequency 1193182 Hz
Timecounter "TSC"  frequency 996830517 Hz
CPU: VIA C3 Nehemiah (996.83-MHz 686-class CPU)
  Origin = "CentaurHauls"  Id = 0x693  Stepping = 3
  Features=0x380b13d

Apacheでパーチャルドメインでもsuexecの機能を使うためのパッチ

Apacheのsuexec機能を付けてコンパイルすると、何もしないよりは安全にcgiを稼動させることができますが、バーチャルドメインを切った時にcgiが使えなくなる問題(というよりも仕様)があります。
これを回避するためのパッチです。適用した場合はそれなりのリスクが増えるので、何をやってるか分かる人だけ使ってください。(単に、自分の備忘録として置いてるんですが。爆)
注:Apache-1.3.27の時に作ったパッチで、1.3.29でもそのまま当たります。2.x系統でどうなってるかは、知りません。


一括ユーザ追加プログラムaddusers.c Ver.1.21(2003/5/3)(FreeBSD用)

これは、CSVファイルに

ユーザID,パスワード,ユーザ名
ユーザID,パスワード,ユーザ名

という形式でユーザIDとパスワードの組が延々と入っているファイルを読み込み、FreeBSDシステムに一括登録を行うものです。
これは、一旦全てのデータをテンポラリディレクトリに書き出し、最後にシェルスクリプトに頼るという実装になっとります。また、このプログラムによって追加するユーザのグループも決め打ちという(^^;
一応、手元では数千ユーザの一括登録までは実行してみました。それ以上の場合どうなるかは知りません。
想定している環境は、メールサーバやWEBサーバ等、ユーザにシェル権限を与えないことを前提にしています。また、MTAとしてはqmailを使うことを想定し、ユーザのホームディレクトリ、MaildirとMaildir/以下のディレクトリ、.qmailファイル、そしてpublic_htmlディレクトリを作成するようになってます。
ワタクシのような超初心者が書いたソースなので、見れば何やってるかすぐに分かると思います。まぁ、本当はユーザIDやホームディレクトリに不正な2バイト文字等が入ってないか検証すべきでしょう。(手抜き。それに、明らかなバグがあるのに面倒で直してないし。)


パスワード作成プログラムmkpasswd.c Ver.1.00(2003/5/3)

新アカウントを作成するためにランダムなパスワードを発生させるプログラムです。見ての通り、単に現在の時間を乱数の種にして乱数を発生させ、それをパスワードとして許可する文字(デフォルトでは、数字とアルファベットの大文字・小文字の合計62個)の数で割り、その余りに対して文字を割り振っているだけです。(笑)
無保証、無責任。馬鹿なもん作ってるなぁ…。