2014年12月10日水曜日

Salesforceクックブック

1. 見積(Quote)をコピーする方法

2.  SOQL
  1. SQLのIN句でコレクションを使用する方法
  2. SOQL入門 SOQLにおけるJoinの方法
3. 開発環境
  1. Sublime Text 3 + MavensMateでForce.com開発 (準備編)_各アプリのインストール手順は公式サイトを優先すること
4. 画面に警告文を表示する

5. String型判定処理のNULL対策について

6. 外部システム連携
  1. Sample code for Http post 
  2. ApexからコールアウトでPOST送信する
7. SSL通信(Salesforceではあまり証明書さえちゃんとしてれば気にしなくて良いかも)
  1. JavaからIPアドレスベースなSSLサイトと通信しようとして嵌った
  2. サーバ名とポート番号(ServerName, Listen)
  3. Apache でマルチドメインを設定する
8. 値の変換処理
  1. Apex で文字列を他の型に変換したい
  2. 日付数式のサンプル
  3. String Class
  4. Apexクラスでは剰余(%)が使えない!
  5. Apex で数値がある桁数に満たない場合に左(上位桁)を 0 埋めしたい
9. DML(Insert/Update/Upsert/Delete)発行後にコールアウトを行なう事はできないへの対処法

10. ページング
  1. Visualforce ページのレコード一覧表示をした際に、ページング機能が欲しい
  2. Visualforceのみで行番号を表示する
11. ページ遷移
  1. Force.com:標準の salesforce のページから Visualforce のページへ遷移したい 
12. 日付
  1. SFDC:DateTimeのFormatと時間の表示形式 
  2. format() 関数で YYYY を使用することは yyyy と同じではありません 
  3. Apexで利用可能な日付関数を教えて下さい 

2014年7月8日火曜日

SSH・SSLクックブック

0. SSLとSSHの違い

0. SSLとTLSの解説

0. SSL Server Test

1. WindowsからSSHサーバーへリモート接続(TeraTerm鍵方式ログイン編)

2. .ssh/configを活用しよう

3. sshでVPNを実現する
  1. sshでVPNを実現する
  2. Linuxでの仮想ネットワーク構築
  3. OpenSSH を使った簡易 VPN の構築
4. putty形式とOpenSSH形式
  1. ppkファイルを OpenSSH 互換の鍵ファイルに変換する
  2. SSH秘密鍵 id_rsa -> putty形式&OpenSSH形式に変換 

5. SSLとは&SSLの設定について分かりやすいサイト

6. OpenSSLコマンドとその用例

7. 私が愛した openssl (SSL/TLS 編) コマンドサンプルが分かりやすい

8. SSL証明書作成
  1. 独自SSLサーバ認証局(CA)作成とサーバ証明書発行
  2. SSL証明書のKEYファイル・CSRファイル・CRTファイルのチェック方法 
  3. apache+mod_sslでSSL
  4. X.509証明書ファイルとPKCS証明書ファイルのタイプと変換方法 
  5. SSL証明書をSHA–1からSHA–2に更新する際にはご注意を!
  6. OpenSSLコマンドによる公開鍵暗号、電子署名の方法 
  7. 保存した証明書ファイルの内容を確認する方法 
9. SHA-224、SHA-256、SHA-384、SHA-512の違い

10. SHA-1 証明書の受付終了と SHA-2 証明書への移行について

11. SSH で接続可能なユーザを制限する

12. WinSCPコマンド実行
  1.  コマンドやバッチファイルとの連携による自動処理
  2.  スクリプト機能
  3.  コマンドラインオプション
13. SSHのX11Forwarding を使ってセキュアなリモートでGUIを操作する

14. TeraTerm
  1. Tera Termのknown_hostsの在処
15. SSH接続エラー回避方法:.ssh/known_hostsから特定のホストを削除する/削除しないで対処する3つの方法

16. SSHの多重接続について

2014年6月12日木曜日

Apacheクックブック

1. .htaccessでHTTPアクセスをSSLでリダイレクト(逆もアリ)

2. [tech]HTTP GETメソッドのURIの長さ制限を調べてみた

3. Apacheから強制的にキャッシュを使わせないようにする方法

4. Apacheのバージョン確認方法

5. .htaccessによるリダイレクト徹底解説(RewriteRuleなど)

6. apacheでメモリリークしないようにするチューニング

7. 転ばぬ先のApacheチューニング(〜中規模)

8. Apache チュートリアル: .htaccess ファイル

9. php + apache のメモリ量をおさえる

10. さくらVPSで一日6万PVを処理するためにしたこと

11. Apacheでファイル一覧を表示させないようにするには

12. Apacheインストール後にディレクトリ一覧やテストページを非表示にする

13. iPadのSafariでオレオレSSLクライアント証明書を使っていると動画再生できない

14. .htaccess活用法

15. Basic認証を設定する方法

16. apache2でURLの最後のスラッシュの省略をさせない

17. SSL設定エラー : ssl_error_rx_record_too_long

18. WebDAV設定
  1. Apache2.0+WebDAVの設定(Linux編) 
  2. WebDAVクライアント/サーバ環境の構築  
19. CentOS に Apache HTTPD を導入して SSL を有効にする

20. Options -FollowSymLinks
  1. Apache HTTPD: `Options -FollowSymLinks` は不完全
  2. シンボリックリンクを用いた「ハッキング手法」を、ロリポップの大規模サイト改ざん事例から学ぶ
21. アクセス制限の記述(Order, Allow, Deny)

22. アクセスログのフォーマット
23. SSLのパスフレーズ(Pass Phrase Dialog)入力を省略してApacheを起動する

24. logresolve - apacheのログのアクセス元IPを逆引きする

Sendmailクックブック

1. sendmail基本設定

2. ドメイン設定も含めSendmailでメール送受信ができるようになるまで試行錯誤まとめ

3. sendmail 基本 (テスト方法が充実)

4. メールログ(送信:sendmail)の見方は?

5. sendmailのメールキューを確認、削除する方法

6. OP25B対策Part2 メールサーバを構築し別メールサーバに全転送【sendmail編】

7. sendmailを使って内部メールをgmailへ転送する

8. システム設定ファイルを知ろう~/etc/aliases~

9. /etc/aliases を編集して root のスプールにメールを溜めたくない!エイリアス定義で転送だ!

10. sendmail、qmail、Postfixのそれぞれの良さと違い

11. ログレベルの変更とメールログの解析

12. 設定ファイル一覧

13. linuxユーザを追加したときsendmailに必要な設定を行う

14. バーチャルドメインメールサーバーの構築

15. Sendmail のログレベルの変更とメールログの解析

16. 設定ファイルの設定値の詳細が書いてある

17. SMTP AUTH(SMTP認証)に対応させる方法

18. メールログに"Domain name required for sender address"とでてメールが送信できない場合

19. SPF(Sender Policy Framework)とは

2014年6月4日水曜日

CSSクックブック

1. text-shadow テキストに影をつける

2. text-indent 一行目のインデント幅を指定する

3. text-transform テキストの大文字表示・小文字表示を指定する

4. letter-spacing 文字の間隔を指定する

5. white-space ソース中のスペース・タブ・改行の表示の仕方を指定する

6. box-sizing ボックスサイズの算出方法を指定する

7. appearance プラットフォームにおける標準的なUIの外観にする

8. border-radius 角丸をまとめて指定する

9. outline アウトラインのスタイル・太さ・色を指定する

10. CSS: marginの正しい理解 論理プロパティ margin-startなど

11. linear-gradient() 線形グラデーションを指定する

12. ボックスモデルCSSプロパティの詳細とデモ displayプロパティ + table-row-group値

13. CSSで中央配置(センターリング)する方法

14. 行間を調節するプロパティ line-height:

15. フォントサイズの指定はCSS3の「rem」が便利そう

16. フォームのradiobutton、checkbox、selectのずれを調整する

17. font-familyとは?

18. word-breakプロパティとword-wrapプロパティの違い

19. CSS の拡張機能 webkit

20. writing-mode

21. CSSで文字を選択(ドラッグ)した時の背景色を変える(::selection)

22. :focus擬似クラス フォーカスされた要素にスタイルを適用する

23. Webサイト制作におけるoverflow:hiddenの効果

24. font-weight フォントの太さを指定する

25. ビットマップフォントとアウトラインフォントの違い

26. CSS3のtext-strokeとtext-shadowで文字の縁取り(アウトライン)を表現した時の違い

27. 1分でできる Google Web Fonts を使って CSS3 の Web Font を使おう

28. ボックス(レイヤー)の重なり順序を指定する

29. 素敵なダイアログを作るための資料
  1. 使いやすくなった!UI素材とテクニック集/CSS jQuery版 
  2. デザインから選ぶjQueryダイアログ集
  3. 保存版!CSS3で出来る素敵なデザインやアニメーションをまとめてみた

2014年6月3日火曜日

MySQLクックブック

0. コネクション
  1. MySQLでtoo many connectionsエラーが発生した際の対処方法
  2. MySQL DBのコネクション数の確認とか
  3. MySQL、「too many connections」エラーを解消する
  4. MySQLで「Too many connections」のエラー
1. コメント構文

2. MySQLクイック・リファレンス

3. MySQL C API

4. 外部キー
  1. FOREIGN KEY 制約
  2. 外部キー制約を活用する 
  3. 外部キー制約(FOREIGN KEY) 
  4. MySQL #1452 – Cannot add or update a child row: a foreign key constraint fails
5. カラムの名前と定義の変更

6. MySQL SQLファイル(スクリプト)の実行

7.  コメントを含めてテーブルを作成する

8. カラムの追加と削除

9. Federated
  1. Federatedテーブルの作成(リモートDB上のテーブルとの同期)
  2. MySQLのFEDERATEDストレージエンジンを利用する 

10.  トリガ
  1. トリガの作成
  2. MySQLでトリガ使って別テーブルに自動でコピる
  3. MySQL トリガの作成、確認、削除
  4. MySQL のトリガで mruby を実行する
  5. MySQL で UDF を定義しよう
  6. MySQL 5.7でやっと(?)1テーブル複数トリガーが仕掛けられるようになった 
  7. トリガに関する情報の取得 
11. MySQLの運用で役立つコマンド集(統計情報更新など)

12. MySQLからMariaDBへの移行作業メモ

13.MySQLのバックアップリストア
  1. バックアップ&復元 
  2. 5.1.8以降Warning発生 
  3. optオプションの意味
  4. ダンプファイルから任意のテーブルのみリストアする
  5. MySQLのバックアップ運用について色々
  6. XtraBackupを使ってMySQLをバックアップしよう
  7. MySQLマニュアル データベースサーバーのバックアップ
  8. MySQLのバックアップツール比較
  9. データのインポート・エクスポート ファイル読込
  10. LOAD DATA INFILE構文のキーワード
  11. MySQLでデータをエクスポートする(テーブル指定) 
14. ユーザとDB作成

15. InnoDBについて
  1. mysqlでInnoDBが使えない件
  2. InnoDB Pluginことはじめ。快適ストレージエンジン生活はじまる!
  3. デフォルトストレージエンジンの設定
  4. MySQL InnoDBを無効にする
  5. MySQLの「InnoDB」と「MyISAM」についての易しめな違い 
  6. MySQLでテーブル毎に設定されているストレージエンジンを確認する方法
16. MySQL複数プロセス起動
  1. 複数MySQLのセットアップ備忘メモ
  2. MySQLプロセスを一台のサーバで複数起動
  3. MySQLで外部から接続するときにチェックする項目 
  4. mysqld_multiの設定方法 
  5. MySQLサーバ複数起動メモ
  6. mysql_multi「を・・使わない」で同一サーバ内に複数インスタンスを立ち上げる方法
17. MySQLの照合順序

18. 文字コード関連
  1. データベースの文字コードを調べる
  2. 文字コードの設定(文字コードの扱い方の説明もあり)
  3. MySQLでcharacter_set_databaseがlatin1になってしまう問題の対応方法
  4. テーブルの文字コードを調べる
  5. MySQL で utf8 と utf8mb4 の混在で起きること 
19. MySQLで特定のカラムを持つテーブルを検索する

20. 誰も教えてくれなかったMySQLの障害解析方法

21. MySQLに真偽値を格納する場合はbit(1)型のフィールドが最適

22. あいまい検索(パターンマッチングで比較)

23. セキュアな接続のための SSL の使用

24. MySQLサーバーのバージョン確認方法

25. MySQLで他のサーバからのアクセスを許可する

26. SSHのポートフォワーディングでMySQLに接続する方法

27. 限界までMySQLを使い尽くす!!

28. 整数型

29. 複合キーを単一キーに変更する場合のSQL文

30. 予約語と同じテーブル名はバッククォートで囲む

31. キャスト関数と演算子(型変換)

32.  レプリケーション
  1. レプリケーションの機能と問題
  2. MySQLマルチマスタ構成キー重複を避けるには
33. 「every derived table must have its own alias」というエラーが表示される

33. テーブル定義を取得する方法

34. 外部キー貼り直し手順メモ

35. 後からユニークインデックスを追加するには

36. SELECT文でcsv出力
  1. SELECT文でcsvを出力する
  2. CSVでエクスポート(テーブル単位 or クエリの結果を丸ごと)
  3. MySQLでコマンドから直接クエリを実行し、CSVファイルに保存する 
37. ログ
  1. ログの種類とログの仕方を調べてみた(実施例)
  2. スロークエリログで問題のクエリをあぶり出す
  3. MySQLのログファイル ログの種類と保存先
38. MySQLパフォーマンスチューニングのためのインデックスの基礎知識

39. MySQL の warnings をすぐに表示させる方法

40. MySQL の同時接続数 (max_connections) の変更

41. 欠番

42. show profileでフェーズごとの実行時間を見る

43. MySQLのポート番号を調べる

44. Linux(CentOS)のMySQLへ外部接続する

46. lockの確認とプロセスの削除

47. InnoDBで行ロック/テーブルロックになる条件を調べた 

48. テーブル毎に設定されているストレージエンジンを確認する方法

49. テーブルのロック

50. 外部キーやユニークキーなどが貼られているか確認 show create table

51. データ型と最小値/最大値

52. データベースを初期化する

53. SQL 問い合わせ結果を垂直に表示する

54. 親テーブルの更新/削除の時の挙動

55. 外部キー作成時、外部キー名の注意点
     以下のようにCONSTRAINTをつけてかつ、名称を指定しないと、自動で名前が設定される。
   かつ、KEYには、名称が付与されず、KEYのみの除去が出来なくなるため注意。
     <SQL例>
     ALTER TABLE xxxx ADD CONSTRAINT FK_xxxx_01 FOREIGN KEY(aaa,bbb) REFERENCES t_m_site(aaa,bbb) ON UPDATE CASCADE ON DELETE CASCADE;
     <上記SQLで外部キーを追加した場合のshow create table結果>
      CREATE TABLE `xxxx` (
        `aaa` mediumint(8) unsigned zerofill NOT NULL DEFAULT '00000000' COMMENT '会社ID',
        `bbb` varchar(32) NOT NULL COMMENT 'サーバー名',
        `cccc` mediumint(9) NOT NULL DEFAULT '0' COMMENT 'グループNO',
        PRIMARY KEY (`company_id`,`svname`,`group_no`),
        KEY `FK_xxxx_01` (`svname`,`company_id`),
        CONSTRAINT `FK_xxxx_01` FOREIGN KEY (`aaa`, `bbb`) REFERENCES `t_m_site` (`aaa`, `bbb`) ON DELETE CASCADE ON UPDATE CASCADE
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8
     <CONSTRAINTなし、名称未指定の場合のshow create table結果>
      CREATE TABLE `xxxx` (
        `aaa` mediumint(8) unsigned zerofill NOT NULL DEFAULT '00000000' COMMENT '会社ID',
        `bbb` varchar(32) NOT NULL COMMENT 'サーバー名',
        `cccc` mediumint(9) NOT NULL DEFAULT '0' COMMENT 'グループNO',
        PRIMARY KEY (`company_id`,`svname`,`group_no`),
        KEY (`svname`,`company_id`),
        CONSTRAINT `FK_xxxx_xxx_01` FOREIGN KEY (`aaa`, `bbb`) REFERENCES `t_m_site` (`aaa`, `bbb`) ON DELETE CASCADE ON UPDATE CASCADE
        ) ENGINE=InnoDB DEFAULT CHARSET=utf8

56. MySQLのデータベースの容量を調べる

57. MySQL ibdata1が肥大化する理由(記事の意訳)

58. InnoDBデータファイルのサイズを変更するには(自動拡張時の拡張サイズを参考にした)

59. ユーザー権限
  1. 権限の種類と設定されている権限の確認
  2. MySQLユーザの追加
  3. MySQLのユーザー一覧を確認
  4. パスワードの設定 
  5. [MySQL]権限の確認と付与
  6. MySQLに外部ホストから接続できるように設定する
  7. MySQL の権限のコマンドまとめ。
  8. ユーザーの削除
60. MySQLのコマンド履歴を見る方法

61. 日時
  1. 日付データへの変換
  2. 日時の計算(加算・減算) 
  3. 日付関数、システム日付、切捨、日付差、日付加算、書式 

62. PostgreSQLとMySQLはどちらかに明確な優位性がありますか?

63. MySQLでレコードに登録された文字列を置換する

64. 取得するデータの数と開始位置を指定

65. サブクエリ
  1. MySQL | エラー対策 | Every derived table must have its own alias
66. [MySQL] 激重の原因はDNS逆引きでした

67. MySQLで、シェルスクリプトからバッチ処理でSQLを実行する方法

68. MySQLでの正規表現

69. LIKEフィルタに対するインデックス

70. AUTO_INCREMENT
  1. 従来の InnoDB の自動インクリメントロック
  2. 言っておくけど、AuroraクラスターでAUTO_INCREMENTのカウンタが同期されないのはバグじゃないからな
  3. 【mysql】auto_incrementの値を確認、変更。からの、0(ゼロ)入れたり歯抜け直してみたり

2014年5月20日火曜日

C言語クックブック

0. 基礎知識
  1. Cにおける識別子の有効範囲と変数の生存期間
  2. C初心者が知っておきたいヘッダーファイルとリンクの基礎知識(正しいexternの考え方)
  3. プリプロセッサでプログラムの質を向上させよう
0. volatileで最適化を抑制する

0. 文字配列初期化の心得
  1. callocは、0x00で初期化してくれる
  2. mallocは、0x00で初期化しない
  3. char str[n];は、0x00で初期化しない
  4. 2、3で定義した文字配列にstrncpyで文字配列をコピーする場合は、事前にmemsetなどで初期化すべき。コピー元の文字配列の長さ以降の領域に予期しない値が入っている場合がある
  5. 文字配列に値を設定する関数の挙動(終端文字をセットしてくれるか)は必ず確認
0. 文字配列に値を設定する関数の挙動(よく使うもの)
  1. strncpy
  2. strcat
  3. fread
  4. fgets
  5. sprintf
  6. strstr
  7. memcpy 
0. sprintfの注意点
以下のように終端文字を設定すると(null)が設定される
ex.
char exten[4] = {0};
sprintf(exten,"%s",'\0');
printf("%s\n", exten);
出力結果  = (null)

ブランクを設定したい場合は、以下のようにする
sprintf(exten,"%s","");
0. メモリ割り当て
  1. malloc
  2. calloc
  3. realloc
0. 初期化についての議論
  1. [迷信] とりあえず memset で初期化
  2. 文字配列char str[x]の初期化
  3. char str[xx]、malloc、calloc処理速度比較 
0. フォーマット指定子一覧
0. C言語のバグ回避をするための習慣

0. 関数を調べる
  1. C言語関数辞典
  2. コマンド検索: man
0. ローカル変数とメモリスタックの注意点

0. IPヘッダ構造体について u_int8_t = u_char

0. 苦しんで覚えるC言語
1. x86_64の逆アセンブルを読む(gcc版)

2. strncpy(文字列をn文字コピー)

3. strcpy(文字列のコピー)

strncpy(strcpyとの違い)

4. 文字列の置換~strchg関数を作る

5. 「警告: 初期化子のまわりのブレースを欠いています」対応

6. strcmp(文字列比較)

7. strtok(文字列strの中をデリミッタ文字で区切って、呼び出す毎に区切った文字列のアドレスを返す)

8.  inotify
  1. inotify を使ってファイルシステムのアクティビティーを監視する
  2. inotify API
  3. lsyncd(inotify)で上限ファイル数を超えた時の対処策 
  4. inotifyの上限値設定変更 
  5. inotify で Linux ファイルシステムのイベントを監視する
  6. inotifytools/inotifytools.h File Reference
9. strstr(文字列1から文字列2を検索する)

10. 文字列の終端 null文字('\0')に関すること

11. scanf関数で文字列を得るにはどうしたらいいのか、文字列を扱う時の危険性を考慮する

12. strcat(文字列の連結)

13. メモリの管理について
     mallocもしくはnewで動的にメモリを確保した場合は、以下の関数で動的にメモリを開放する必要がある。
     malloc - free
     new - delete

     ※外部変数はプログラム終了後、関数で定義した内部変数は関数終了後にOSが自動的にメモリを開放する。また、関数についてはstack領域でメモリ確保し、mallocで確保したメモリ領域とは異なる。
     参考:変数とメモリ領域の対応

14. ポインタ
  1. C言語のポインタ ~ & と * を使ってみる ~ 
  2. C言語のポインタ2 ~charポインタとchar配列~ 
  3. C言語 ポインタ完全制覇
  4. ポインタ演算は正しく使用する 
15. static関数

16. 関数から配列の先頭アドレスを返す

17. POSIX正規表現 regex.h

18. if文(≠0:真、=0:偽)

19. GRegex(GLibの正規表現)の一般キャラクタタイプが使えない(警告: 不明なエスケープシーケンス '\d')

20. 大文字小文字
  1. 小文字大文字変換(for文)
  2. 小文字を大文字に変換(while文) 
  3. 大文字小文字を区別せずに文字列を比較する 
21. MySQL C APIを使って、C言語でMySQLに接続

22. プログラムの適切な終了方法を選択する

23. コマンドを実行する

24. プログラムで使う静的ライブラリ、共有ライブラリ

25. 文字列を整数型に変換する

26. statvfsでファイルシステム情報を取得

27. 標準入出力関数(1)

28. 配列の要素数を取得する

29. 配列

30. 配列やメモリ領域の内容をコピーする

31. 配列を自由自在に作る(配列のサイズを動的に変更)

32. sprintf(書式指定変換した出力を文字列に格納)strcpyとの使い分け

33. boolean型

34.  NULLポインタ
  1. NULLポインタ
  2. 空ポインタ(null pointer) 

35. strncmpとstrcmp
  1. 文字列をn文字比較 
  2. 文字列の比較 
36. system関数
  1. system関数 
  2. system関数の戻り値についての質問 
  3. Linux環境のC言語で、実行ファイルを呼び出して、結果を取得する方法 
37. libcurlでhttp接続
  1. 本家サイト
  2. cURL と libcurl を使ってインターネット経由でやりとりする
  3. C言語のlibcurl を使ってみた。でもgccのライブラリ・パスがよくわからなかった。
  4. ftpuploadサンプル 
38. XMLパーサー
  1. C/C++のXML Parserについてよくまとまっているサイト
39. C開発環境開発 for Windows
  1. プログラミング速成コース 開発環境の準備-Windows編install_win.html 
  2. Windows 7 で C/C++ の開発・実行環境を整える!
  3. cygwin + Eclipse + CDT 環境構築 (Windows) 
  4. データを保持する 
  5. CURLOPT_HEADERFUNCTION explained
  6. Setup Cygwin toolchain in Eclipse CDT(cygcheckコマンドのサンプル)
  7. 標準ライブラリにパスを通す
  8. [Eclipse]cppのSymbol ‘NULL’ could not be resolvedがクリーン&ビルドでも解決しない時に試したいこと 
40. C言語 printfとfprintfの違いについて

41. シグナル処理関数(シグナルハンドラ)を登録する

42.  ファイル操作
  1. ファイルシステム
  2. ファイル操作関数 / fopen
  3. scandir()でディレクトリエントリのリストを取得する方法
  4. scandirかopendirか悩んでみた。
43. C言語システムコール-gethostname

44. segfault の error_code の意味

45. C言語 popen()でコマンドを実行して出力を読み込む

46. 色々なデータ型の最大値、最小値

47. ファイルの所有者を変更する chown関数

48. システムコール-mkdir

49. Linuxでプロセスのデーモン化

50. マルチスレッド
  1. スレッドと排他処理とデッドロック(pthread,mutex)
  2. セマフォの操作を行なう
  3. pthread_cancel(3)を使ってみた 
  4. マルチスレッドについて(マルチプロセスとの対比 fork) 
  5. 子プロセスを生成する(fork) 
51. プログラム途中強制終了、メモリーリーク

52.  voidポインタ
  1. voidポインタの利点
  2. void型ポインタ 
53. uname関数でシステム情報を取得する

54. gethostnameのヘルプ・マニュアル

55. バイトオーダー(htons() と htonl() を その逆は ntohs() と ntohl())

56. バイトオーダ - ビッグエンディアン/リトルエディアン

57. プログラムファイル分割
  1. ファイル分割
  2. 分割コンパイルとリンケージ
  3. C言語の正しいヘッダファイルの書き方 
58. 文字列処理関数 綺麗にまとまってて分かりやすい

59. C言語で2次元配列を動的に割り当てる4つの方法 めっちゃ参考にしました

60. 構造体配列
  1. 構造体配列のポインタ表現
  2. メモリの動的確保と自己参照構造体
  3. ハッシュテーブル 
  4. ハッシュテーブルを実装してみる
  5. 構造体 
61. 関数内でmallocするときの注意

62. mallocに対するcallocのメリットは何ですか。

63. C言語でMySQLにアクセスする
※MYSQL_ROWは、文字型のポインタの配列のため、int型の値を取得した場合は、atoiでの変換が必要

64. 文字型配列の初期化とクリア

65. MD5ハッシュによるファイルチェック
  1. ファイルが一致することを確認する
  2. MD5 によるハッシュ値の計算
  3. md5 reference error(コンパイル時の注意)
66. fread

67. snprintf

68. C言語標準ビルトイン型で関数オーバーロードしてはいけない

69. poll, ppoll - ファイルディスクリプターにおけるイベントを待つ

70. gcc の警告オプション -Wall と -W 

71. Interprocess Communication (IPC)

72. バッファオーバーラン ~その1・こうして起こる~

73. gdb
  1. Debugging with GDB
  2. gdbの主要コマンド
  3. 最適化オプションのまとめ
  4. スタック・フレーム
  5. gcc+gdbによるプログラムのデバッグ 第1回 ステップ実行、変数の操作、ブレークポイント 
  6. gcc+gdbによるプログラムのデバッグ 第2回 変数の監視、バックトレース、その他のコマンド 
  7. gcc+gdbによるプログラムのデバッグ 第3回 gdbの便利な機能、デバッグの例 
  8. 既に起動しているプロセスをgdbで制御する 
  9. forkするプログラムのデバッグ 
 74. Linuxでネットワークインターフェースのリンク状態変化を得る

2014年5月19日月曜日

Asteriskクックブック

0. FreePBX confのリロード
  1. amportal commands (FreePBX12まで13から警告がでる)
  2. fwconsole commands (FreePBX13から)
0. CLIにAsteriskの標準エラーを出力
  1.  STDERR output in asterisk cli
0. sip.conf canreinvite
AsteriskによるIP-PBXの構築(CentOS4.2編)より抜粋
設定は "yes/no" である。
本設定は、通話中にINVITE要求を送ってアドレスやポートを変更とする機能。
RTPでの音声パケットを端末間で直接送受させる場合は"yes"とすること。
"no"の場合はサーバがRTP中継することになり、常にサーバ負荷になるのと同時に両方の端末が仮にインターネット上にあった場合は、サーバ回線に2通話分の音声パケットのトラフィックが流れるので注意が必要。
なお、"yes"に設定しても一方が"no"の場合や、転送サービスとしてextensions.confで "t/T"オプションが指定してある場合は、サーバ中継になるので不用意にサービスを付与しないこと。

0. sip.conf host
内線のホスト名かIPアドレスを指定する。 "dynamic" を指定するとホスト名やIPアドレスは無視されるので、モバイルアクセスや動的IP環境のクライアントは本設定とすること。

0. MySQL接続ユーザー
  1. How to change the default FreePBX MYSQL password 
1. Asterisk基本設定ガイド

2. Zaptelについて

3. Asteriskでひかり電話を使う

4. Tropo API を利用した自動音声応答装置(IVR)の構築サンプル

5. Asterisk cdr csv

6.  CLI
  1. Asterisk CLI
  2. Asterisk CLIコマンドリスト 
  3. Asterisk CLI 
  4. Originating call in CLI? 
7. PRIボード SANGOMA Support Wiki

8. Asterisk Wiki

9. ACD機能を試す(Asteriskの研究)

10. SIPpでSIP動作/負荷シナリオを作るメモ

11. WebRTC用にsrtpをインストール
     ※1.4.4をインストールする場合、以下のパスに読み換え
     http://sourceforge.net/projects/srtp/files/srtp/1.4.4/srtp-1.4.4.tgz

11-2. PJPROJECT クラウドにAsterisk立てて[SIPクライアント-(WebRTC)-WEBブラウザ]間でビデオ通話した時のメモ
    ※FreePBXのインストール手順にはデフォルトで含まれている

12. 外線着信で"Rejecting unknown SIP connection"が発生した場合

13. SIP attacker blacklist

14. VoIP/SIPエンティティに対するDoSアタック

15. Asterisk CLI sip set debug

16. FUSION B2BUA IAX

17. Asterisk_NAT

18. RFC3581 日本語訳

19. FreePBXインストール手順(ディストロを使わない場合)

20. FreePBX ODBCの設定
  1. Setting up ODBC for mysql on Centos 6.3 
  2. How to enable CDR on AsteriskNOW and FreePBX  
21. 保留音の設定

22. iSymphony
  1. Knowledge Base  
23. FreePBXでDialPlanカスタム
  1. FreePBX and Custom Dialplans
  2. Changes to extensions_custom.conf not working
24. Backgroundを使うときの注意点
  1. Channel status is 'UNKNOWN"
25. AstDB
  1. Using the Asterisk Database (AstDB) Blacklistのサンプルあり 
26. How to change the default FreePBX MYSQL password

27. AGI
  1. agi set debug on <- CLIでAGIのデバッグをするためのコマンド
28. 日本語化
  1. Asterisk/FreePBX日本語版導入 
29. Agent
  1. Asterisk Agents Asterisk call agents
  2. FreePBX Agents.conf Autologoff & AutoLogoffUnavail?
30. AMI
  1. Ryan Bullock > Asterisk-AMI-v0.2.8 > Asterisk::AMI 
31. ストリーミング配信をIP電話経由で聞く

32. PJSIP
  1. PJSIP 
  2. Getting Started
  3. PJSIP Linux版をビルドする
33. SipCLI(SIPコマンドライン user agent)
  1. SipCLI
34. Acrobit Softphone
  1. asterisk-1.8.4.2をAcrobits Softphoneでプッシュ待ち受け
  2. iPhoneのソフトフォンでバックグラウンド待ち受け
  3. Cloud Softphone FAQ 
  4. About Push Notifications 
  5. Unable to receive Push Notifications 
  6. Push Notifications on a PBX 
35. コーデック関連
  1. Asterisk cli show codecs(対応コーデックチェック) 
  2. Asteriskが利用できるコーデック
  3. Asteriskに最強コーデックの「Opus」を対応させる
36. State & Hints
  1. Asterisk func device_State 
  2. Asterisk func hint
  3. Function_DEVICE_STATE
  4. Extension State and Hints
  5. RFC3856
37. Asteriskリアルタイム化(設定を外部DBに持たせる)
  1. Astersikのリアルタイム化 設定ファイルの関連付け
  2. The Asterisk RealTime Architecture
  3. Asterisk Full RealTime example
  4. Asterisk RealTime Extensions
  5. (情報取得コマンドの記載あり)Asterisk + MySQL + RealTime SIP/Extensions/Voicemail
  6. No show peers after configure realtime asterisk with odbc
38. Zoiper
  1. IP電話(VoIP)に最適なSIPクライアント「Zoiper」
39. Jitter関連設定
  1. Enable Jitter Buffer for Asterisk
  2. Capture RTP and SIP Traffic using tcpdump
40. RTP送信間隔
  1. RTPの送受信間隔を定義するptimeについて
  2. Asterisk Documentation 1.4 rtp-packetization.txt
41. Channelの解放
  1. Locked up SIP extension on your Asterisk server? Me too. Here’s how I released it.
  2. hanging up active calls in asterisk
42. レジスト有効期限関連
  1. Asterisk config sip.conf(registertimeoutなど) 
  2. Asterisk info slow to update SIP registrations

2014年5月4日日曜日

ネットワーク&セキュリティクックブック

0. 3分間ネットワーキング

0. MACアドレス
  1. macアドレス一覧
0. IPA(このサイトのセキュリティ、脆弱性対策情報は毎日チェック)

0. 理解してるつもりの SSL/TLS でも、もっと理解したら面白かった話

0. WiresharkでSSL通信の中身を覗いてみる

0. Wiresharkによるパケットトレースの収集と解析

0. 脆弱性攻撃スクリプトデータベース

0. グローバルIPをcurlで確認

0. tcpdumpでHTTPのPOSTメソッドのBodyを確認する

0. まずは「クッキー」を理解すべし

0. ASN
  1. AS番号 【 Autonomous System number 】 ASN
1. IPアドレス
  1. IPアドレス一覧【whoisサーバ一覧】
  2. IPアドレスサブネットマスク早見表
  3. SQLにおけるIPアドレスの比較 
  4. MySQL IPアドレス用カラム
  5. Check if IP is in subnet 
2. windows 「239.255.255.250」へのパケットが送信

3.ping
  1. ping
  2. 自機のNICを指定し、pingを実行する
4. whois ドメイン名検索

5. ドメイン一覧(whoisサーバ一覧)

6. Nullセッションとは

7. ゾーン転送

8. FTPデータコネクション PORTコマンドについて

9. 同一生成元ポリシー
  1. Same-Origin Policy とは何なのか。
  2. 同一生成元ポリシー - JavaScript | MDN

11. IDSとIPS

12. IPアドレスドメイン変換

13.  TCPのCLOSE_WAITとは?

14. 複数NICでのデフォルトゲートウェイ設定方法

15. 症状別ネット・トラブル解決法(後編) 

16. 外部(からの)アクセスに便利なsshポートフォワーディング

17. IPv4マルチキャストアドレス

18. WebSocketについてしらべてみた

19. Windows 8 と WebSocket プロトコル

20. RFC6455 — The WebSocket Protocol 日本語訳

21. WebSocket/WebRTCの技術紹介

22. Windows7をルーター化

23. 日本国内の IP アドレスリストを作成する

24. traceroute(tracert)

25. 怪しい機器を探す切り札はMACアドレス

26. ベーシック認証をURLに直接書く

27. TCPプロトコル

28. データ受信時の「ACK番号」はどう増える?

29. ネットワーク帯域測定
  1. TCP の性能測定指標とその計測方法について 
  2. 測定結果例と帯域の測り方 
  3. JavaScriptで回線情報を取得するAPI
  4. Network Information API
  5. 知ってると便利!おすすめスピードテスト/回線速度測定サイト8選
30. IPsec VPNとSSL VPN
  1. リモートアクセスVPNにSSL-VPNを採用する最適なケースは?
  2. “SSL-VPN or IPSecVPN”どちらが最適ですか?
  3. SSL-VPN
  4. IPsecとVPN3 
31.Wireshark
  1. Wiresharkでキャプチャしたパケットを編集し送信 - Ostinato
  2. キャプチャしたパケット群の中から、任意の文字列を検索する方法
  3. Wiresharkによるパケットトレースの収集と解析  
  4. Protocol field name: sip
32. Windows 標準機能だけでパケット キャプチャし、Microsoft Message Analyzerでログを解析してみた

33. 【実録】WordPressの怪しい挙動をlsofとstraceコマンドで調査する方法

34. LinuxでNICのリンクアップ/ダウンや速度を確認できる『mii-tool』と『ethtool』コマンド

35. ポート指定して、経路を調べる # traceroute -p

36. 意外と知られてない?AWS EC2上で169.254.169.254にアクセスして、IPやホスト名、VPC情報などを取得する方法。(GCEでも同じIPだった)

37. 不正アクセス
  1. サイトが改竄されていた件についてご報告 
  2. 侵入者の攻撃手法とその対策 
38. 不正ファイルアップロード
  1. Chromeでリファラ偽装する方法(リファラコントロールの使い方) 
  2. FireFoxで自由にリファラを制御できるアドオンRefControl
45. phpMyAdminを狙った攻撃観察(w00tw00tってどういう意味?)

46. Freeswitch
  1. 未認証ユーザーによる不正発信
  2. switch_regex.c の switch_perform_substitution 関数におけるバッファオーバーフローの脆弱
  3. libs/esl/src/esl_json.c の parse_string 関数におけるヒープベースのバッファオーバーフローの脆弱性 
47. FAQ : 重複したIPアドレスを見つけるにはどうしたら良いですか?

48. curl でレスポンスタイムを計測

49. QoS
  1. QoS - DSCP
  2. DSCP(Differentiated Services Code Point)とは
  3. DiffServ -- The Scalable End-to-End QoS Model
50. オートネゴシエーション

2014年4月28日月曜日

2014年4月23日水曜日

Windowsクックブック

0. 「コマンドプロンプトHereをWindows 7で」

0. Windowsでシンボリックリンクを作る

0. Windowsのコマンドがどこにあるか調べる:Whereで

0. Windows Update
  1. Windows Update/Microsoft Updateのトラブルを解消する(SoftwareDistributionフォルダを修復する方法)
0. エラーコード
  1. Win32エラーコード一覧 
0. 遅いマシンを速くする!Windows7高速化のポイントとコツ
1. ファイル名を指定して実行 まとめ

2. Windowsのバージョン番号一覧

3. ExcelとOSのバージョン対応表

4. WPAでの無線LAN利用方法 (Windows 7編)

5. 不要なサービスとスタートアップ プログラムの停止

6. SSH公開鍵暗号化方式-Tera Termで秘密鍵・公開鍵の作成

7. コマンド・プロンプトでレジストリを操作する

8. Windows 7でPing/UDPが通らない。ファイアーオール設定が原因

9. IE キャッシュを削除する (バージョン別の方法)

10. 大容量のダミーファイルを作成する。Windows、Mac、Linuxそれぞれの方法。

11. Windows 7でインデックスが作成されていないフォルダーにあるファイルの中身を検索する方法

12. 「MSゴシック」、「MS明朝」についてのお話(fontサイズの考え方など)

13. IEでクロスドメイン警告ダイアログが表示されるのを抑止する方法

14. Trident (トライデント)とIEのバージョン ※Internet Explorer に搭載されている HTML レンダリング エンジン

15. Windows 7 におけるネットワーク デバイスの電源管理

16. Windows 起動時の自動実行(レジストリ&スタートアップ)まとめ

17. Windows7起動時のスタートアッププログラムの場所(レジストリ内)

18. UACが有効の時、アプリケーションを管理者に昇格させて起動する

19. Windows 7/Windows Server 2008 R2のコンポーネントをdismコマンドで管理する

20. ODBC関連
  1. WindowsのODBC設定画面の起動
  2. 「ODBCドライバのセットアッププログラムが見つかりません」エラーへの対応は?
  3. ODBCのトレースログの出力はユーザ別かコンピュータ全体かに関わらず常にユーザ別
21. mailtoメール送信 use outlook

22. IE でファイルのダウンロードができないときのトラブルシューティング

23. 時刻を手動で直ちに同期させる

24. 日付と時刻設定画面でインターネット時刻タブが表示されない理由

25. 「ユーザの切り替え」メニューを無効化 (非表示あるいはグレイアウト) にする

26. グループポリシーエディタの起動方法

27. Windows 7ではIEやWindows Media Playerの無効化が可能に

28. パスワードが必要なネットワークドライブ設定

29. インターネットオプションの設定をエクスポートする方法等

30. Windows Media Playerで「準備完了」と表示され、再生できない 問題の対策法

31. オーディオまたはビデオのストリームを Windows Media サービスから Windows Media Player を使用しようとするときにエラー メッセージ:「指定されたプロトコルはサポートされていません」

32. Windows Update適用後の自動再起動を抑制する

33. IE11/IE10でダウンロードが出来ない、キャッシュが消えない時の対処方法

34. Windows 7 + Internet Explorer 11で、録画ファイルのストリーミング再生に失敗する

35. DISKクリーンアップ
  1. Cドライブを徹底的にクリーンアップする方法
  2. CBS に C ドライブの容量が消費される
  3. 「Windows Updateで発生したゴミ」を削除する 
  4. (シンボリックリンク作成コマンドのパスが誤っているので注意 d:の後に\は不要)Windows Update のダウンロード先フォルダを変更するスマートな方法 [Windows7]
  5. 意外と容量の多い「Package Cache」とはなにか調べてみた 
  6. 容量の少ないノートPCにXamarinをインストールする方法
36. IE11の初期設定で「お勧めのセキュリティと互換性の設定」と「推奨設定を使用しない」場合、の違いを確認してみた

37. IEでWindows Media Playerを使う
  1. Windows Media PlayerオブジェクトとクラスID
  2. Windows Media Player のバージョン確認方法 
  3. Windows Mediaとは?
38. Windows7のフォルダオプションに「ファイルの種類」タブがなくて困った

39. カスタム URL スキーム の 設定 と 利用

40. プロセス間通信(IPC)について
  1. プロセス間通信(IPC) Remortingについて
  2. プロセス間通信:.NETリモーティングでIPCチャネルを使用する
  3. IPC通信サービスをうまくつくれません
  4. Windowsのサービスで使用される「System」「Local Service」「Network Service」アカウントとは?
41. httpsでLiveReloadを使おうとしてちょっとはまった話(This request has been blocked; the content must be served over HTTPS)

42. ディスク管理
  1. (コマンドラインからのパーティション管理コマンドが参考になった)Windows 8.1 回復パーティションを削除してCドライブの空き領域を増やす 
  2. Windowsの「回復パーティション削除したい」問題に結論
  3. TransBook T90ChiのUSBリカバリメディアの作り方 (回復パーティションのバックアップ)
43. Windows10通知設定
  1. アプリの通知を止める
  2. 通知の表示時間を変更する
44. ノートパソコンを閉じてもスリープにしない方法

45. リモートデスクトップでWindows10をシャットダウンする方法

46. tftp
  1. [tftp]Windows7にてtftpコマンドを使えるようにするの巻 
  2. 管理者PCからTFTPで設定ファイルを送信 : SWX2300 コマンド設定  
47. Windowsで画面外に移動してしまったウィンドウを表示領域内に戻す

48. プライベートネットワークとパブリックネットワーク
  1. イーサネットが識別中で繋がらないのは「パブリックネットワーク」の所為だったべさ 
  2. Windows7でネットワークカテゴリを確認するコマンドについて  
  3. Windowsで、「識別されていないネットワーク」の種類を「パブリック ネットワーク」から「プライベート ネットワーク」に変更する 
  4. (Windows7) コマンドでネットワークIFの有効化、無効化を行う