パスワードを忘れた? アカウント作成

beroさんのトモダチの日記みんなの日記も見てね。 Idle.srad.jpは、あなたの人生において完全な時間の浪費です。見るなよ、見るなよ。

10605824 journal
日記

beroの日記: mod_evasiveがいまいち使えない件

日記 by bero

ApacheのDoS対策でググるとmod_evasiveとmod_dosdetectorが出てくる。

が、mod_evasiveをテストしてみると、設定したリミットより数倍のアクセスの後にブロックされる。
よく調べてみると、プロセス毎に制限してるようだ。
したがって最大でリミットxプロセス数(最大でMaxServers)のアクセスを許すことになる。

一方mod_dosdetectorは、共有メモリで全プロセスのアクセスを一括して管理しているので、
正確にリミットで制限される。

最終的に mod_dosdetector改 入れた。

10605818 journal
日記

beroの日記: mod_evasiveがいまいち使えない件

日記 by bero

ApacheのDoS対策でググるとmod_evasiveとmod_dosdetectorが出てくる。

が、mod_evasiveをテストしてみると、設定したリミットより数倍のアクセスの後にブロックされる。
よく調べてみると、プロセス毎に制限してるようだ。
したがって最大でリミットxプロセス数(最大でMaxServers)のアクセスを許すことになる。

一方mod_dosdetectorは、共有メモリで全プロセスのアクセスを一括して管理しているので、
正確にリミットで制限される。

最終的に mod_dosdetector改 入れた。

9646060 journal
日記

beroの日記: kindleで角川系出版社隠しセール中 5

日記 by bero

koboでも8/1朝まで角川全作品セール中(30%引)で、
kindleは紙の本との比較なので見かけ上37%とかになるが、koboと同じ。
アスキー/エンターブレインとか系列出版社も有効な模様。

確かkindleの契約条件としてkindleを最安にすべしというのがあったと思うので、合わせてるのだと思われ。
電子書籍を他社でセール中の時はkindleもチェックしてみるのが吉。
但しポイントバック等のときはこのルールが発動しない時もあるようだ。

というわけで星新一とか名作を積ん読。

9487591 journal
日記

beroの日記: LGPLv3の注意点

日記 by bero

LGPLv2は独立したライセンスだが、LGPLv3は例外付きGPLの一種で、GPLv3本体とLGPLv3例外の両方を合わせて有効なライセンスとなる。
配布時にはGPLv3とLGPLv3の両方のライセンス文書を添付しなければならない。

LGPLv3

0.
  As used herein, “this License” refers to version 3 of the GNU Lesser General Public License, and the “GNU GPL” refers to version 3 of the GNU General Public License.
  本文中で使われている通り、「本許諾書」はGNU 劣等一般公衆利用許諾書バー ジョン3を指す。「GNU GPL」は、GNU 一般公衆利用許諾書バージョン3を指す。

4-b)
  Accompany the Combined Work with a copy of the GNU GPL and this license document.
  『結合された作品』に、GNU GPLと本許諾書のコピーを添付す る。

GPL FAQ

もし、LGPLv3をあなたのプロジェクトに使う場合、GPLv3とLGPLv3の両方のコピーを含めることを確実にしてください。これは、今、LGPLv3はGPLv3の上に一組の追加の許可をする形で書かれているからです。

てなことをCOPYING.LGPLv3しか入ってないffmpeg入り某ゲームを見ながら思った

8347925 journal
日記

beroの日記: GoCon行ってきた

日記 by bero

http://togetter.com/li/487380
http://takuan-osho.hatenablog.com/entry/2013/04/14/the-report-of-the-1st-go-conference-in-japan
http://moonstruckdrops.github.io/blog/2013/04/13/gocon-spring/

map遅いという話があったので、帰ってから少し調べてみた

結論から言えば

        hoge := make(map[string]int);
        hoge["hoge"] = 1;


pkg/runtime/hashmap.c
https://code.google.com/p/go/source/browse/src/pkg/runtime/hashmap.c?name=go1.0.3
内の
runtime·makemap
runtime·mapassign1
等を呼び出す。

コレ差し替えれば速くなるんじゃね?と思ったら絶賛書き換え中だった
https://code.google.com/p/go/source/browse/src/pkg/runtime/hashmap.c

ちなみにstructリテラルや配列リテラルはマジ定数だが、mapリテラルはmap初期化+挿入ループに落ちる。

        fuga := map[string]int{"a":1,"b":2,"c":3}

        kvs := []KeyVal{{"a",1},{"b",2},{"c",3}}
        fuga2 := make(map[string]int);
        for _,kv := range kvs {
                fuga2[kv.k] = kv.v;
        }

と同じ。

最初はA Tour of Goをやってた
あと何問残ってるかわからず心が折れそうだったが、右上の[]が目次だった

Exercise: Images
http://go-tour-jp.appspot.com/#59
で詰まった

http://go-tour-jp.appspot.com/#51
では、

func (v *Vertex) Scale(f float64) {
..
func main() {
        v := &Vertex{3, 4}

でも

        v := Vertex{3, 4}

でも、

        v.Scale(5)

が呼べるんだが、

http://go-tour-jp.appspot.com/#59
だと、

...
func (img *Image) At(x, y int) color.Color { v:=uint8(x^y); return color.RGBA{v,v,255,255} }

func main() {
        m := Image{256,256}
        pic.ShowImage(m)
}

prog.go:18: cannot use m (type Image) as type image.Image in function argument:
        Image does not implement image.Image (At method requires pointer receiver)

というエラーが出て動かない。

        m := &Image{256,256}
        pic.ShowImage(&m)

または

        m := Image{256,256}
        pic.ShowImage(&m)

だと動く。または

func (img Image) At(x, y int) color.Color { v:=uint8(x^y); return color.RGBA{v,v,255,255} }
..
        m := Image{256,256}
        pic.ShowImage(m)

のようにレシーバがポインタ版でなく値版にしても動く。

元は

type Image struct{}

func main() {
        m := Image{}
        pic.ShowImage(m)
}

を書き換えて実装しましょう、という問題なのでコレはハマった。
なんでエラーになるかわからん

8142897 journal
日記

beroの日記: Chromium プロジェクトの新しいレンダリングエンジン Blink 1

日記 by bero

Chromium プロジェクトの新しいレンダリングエンジン Blink のご紹介

しかしながら、Chromium は 他の WebKit ベースブラウザーと違い、マルチプロセス アーキテクチャを採用しているため、WebKit プロジェクトと Chromium プロジェクトはここ数年複雑化の一途を辿ってきました。

原文

However, Chromium uses a different multi-process architecture than other WebKit-based browsers, and supporting multiple architectures over the years has led to increasing complexity for both the WebKit and Chromium projects.

しかしながら、Chromium は 他の WebKit ベースブラウザーと違い、マルチプロセス アーキテクチャを採用しているため、

という訳は

しかしながら、Chromium は 他の WebKit ベースブラウザーと異なるマルチプロセス アーキテクチャを採用しているため、

つまり
Chromiumも他の WebKit ベースブラウザーもマルチプロセスだがアーキテクチャが異なる
という意味じゃなかろうか

ChromiumとWebkitのアーキテクチャの概要は、(今やGoogleの中の人である)以下のblogに詳しい

WebKit2 と愉快な仲間たち

この中で「Chromium WebKit」と呼ばれているものがBlinkの正体だと思う。

Chromium が自分用に定義した WebKit の API … Chromium WebKit と呼ぼう … は、 プラットホームにくっつける WebKit1 の流儀をすっかり無視している。 Chromium はライブラリとしての Chromium WebKit を広く人々に使って欲しいとは思っていない。特定ブラウザのためだけに WebKit を使っている。 だから安定した API はなく、 クラスやメソッドが必要に応じて足し引きされていく。 一週間バージョンがずれた WebKit と Chromium はたぶん一緒にビルドできない。
(略)
Chromium はもともと Chromium WebKit のような API レイヤを持たず、 WebCore のクラスを直接使っていた。 WebKit (Project) のリビジョンを固定して開発する分にはそれでもよかったけれど、 最新版の WebKit に追従しつづけようとした途端に WebCore 直接方式は成り立たなくなる。 Chromium チームではない誰かの変更で簡単にビルドが壊れてしまうから。

つまり、「新しいレンダリングエンジン」というより、
すでに事実上forkしてたのを、これまではChromium以外のWebkit側の変更も考慮しつつ上流のWebkitに投げてマージしてたのだが、めんどくさくなったので上流に投げるのやめました、他のアーキテクチャ(WebKit1 APIやWebkit2 マルチプロセス)用のコードはごっそり消して、マージ時の互換性は考えないことにします

ってことじゃないかと思う(コード見てないけど)。

追記:
GoogleがWebKitをフォークして新レンダリングエンジンBlinkをローンチ, 速さと単純性を追求

Chrome Blink よくある質問の翻訳まとめ

7948310 journal
日記

beroの日記: 仮想マシンで摘発逃れ? 4

日記 by bero

児童ポルノ保存、「仮想マシン」使い偽装…逮捕
via: 壇弁護士の事務室

小沢容疑者は、画像を流出させるソフトが存在しないように見せかけられる「仮想マシン」と呼ばれる機能を使っており、府警は摘発逃れを図ったとみている。
発表では、小沢容疑者は2月26日、ファイル共有ソフト「Share(シェア)」を使い、ネット上に流す目的で自宅パソコンに女児の裸の写真が入ったファイル3個を所持した疑い。黙秘しているという。

「摘発逃れを図った」というより、
普通に出所不明ファイルのチェック目的等で仮想マシン内で動かしてたんじゃねーの
(ファイル名を偽装した実行ファイルや、画像や動画を開くだけで発動するウィルスもある)

7771063 journal
日記

beroの日記: GoogleがWebMのためMPEGライセンス取得 33

日記 by bero

GoogleとMPEG LAがVP8規格について合意。Googleがライセンス取得

H.264など動画フォーマットの特許プールを管理する団体 MPEG LA が、Google と VP8コーデックについて合意に達しました。今回の合意では、VP8 や旧 VPx の動画圧縮に必須である「可能性のある」(may be) 技術について、Google はMEPG LAの特許プールを構成する11社からライセンスを取得します。
VP8は Google が2010年に On2 から買った動画フォーマットで、Googleが主導する「ロイヤリティーフリーな」ウェブ向け動画フォーマット WebM の動画部分を構成します。(音声は Vorbis)。

かつてMicrosoftがWindowsMedia(VC-1)をロイヤリティフリー(もしくはMPEGより安価)と発表したものの、結局MPEG特許をベースとしてることが明らかになったが、同様のオチになった模様。

ffmpegのソースを見ると、どこが特許に当たるかわからないが
基本アルゴリズムはどう見てもMPEGと同じだろと思えたので、想定通りのオチ。

ただし

さらに Google はほかの WebM 利用者に対してもサブライセンスする権利を持ち、これは Google 自身による VP8実装に限らず、ほかの企業や個人、団体が実装した場合にも有効とされています。

ということは GoogleがWebMをロイヤリティフリーでサブライセンスできる、
つまりユーザからは現状と同じ?

追記: GoogleとMPEG LAがVP8ビデオコーデックのライセンス問題で合意, より安心して使える規格に

7657963 journal
日記

beroの日記: 警視庁がハッカーをリクルート 8

日記 by bero

ハッカー大会:「PC技術、正義のために」警視庁がPR

パソコン(PC)遠隔操作事件などを受け、警視庁がハッカーの獲得に向け動き出した。23日に東京都内で開かれたハッキング技術を競う学生の全国大会「SECCON(セクコン)」に警察官が出向き、参加した高校生や大学生らに「警察官としてその技術を正義のために使わないか」と声を掛けた。こうした学生への働きかけは初めてという。
(略)
警視庁はこれまでも情報セキュリティー会社で勤務経験があるハッカーを捜査官などに採用してきた。だが、遠隔操作での犯罪予告の書き込み、企業や官公庁のPCへのサイバー攻撃などサイバー犯罪は高度化。通信技術の進歩に捜査が追いつかず、専門知識のある人材がさらに求められるようになった。

>警視庁はこれまでも情報セキュリティー会社で勤務経験があるハッカーを捜査官などに採用してきた。

というのが事実であるならば、
スラドや2ch民でも指摘できる「ちょっとIT知ってれば常識」レベルの話が全く考慮されてない現状を見ると

1.これまでの捜査官(を採用した人事)が無能ぞろい
2.捜査官の意見が聞かれない
3.聞いた意見が現場に浸透しない

のいずれかが考えられるが

とりあえずそこを直さないと採用しても無意味じゃないかな

typodupeerror

弘法筆を選ばず、アレゲはキーボードを選ぶ -- アレゲ研究家

読み込み中...