プログラミング
マルチバイト文字の扱いに関するメモ。UTF-8として保存されたファイルがあったとする。 % file /tmp/hoge.txt /tmp/hoge.txt: UTF-8 Unicode textこれをpythonのコードで読み込む。 with codecs.open('/tmp/hoge.txt', 'r', encoding='utf-8') as f: lines =…
OpenSSL APIを使うクライアントプログラムで「SSL_ERROR_SYSCALL」が返ってきた。エラーを返している部分はSSL_connect()通信内容を確認してみると、アクセスしようとしているサイトはHTTP/2対応だった。 (WEBサーバはNginx)段階的に修正してみる。HTTP/2…
C++14機能の「std::make_unique」を使おうとしたらコンパイルエラーが出た。 error: ‘make_unique’ is not a member of ‘std’使っているGCCのバージョンは「4.8.4」サイトを確認すると、 GCC 4.9 Release Series — Changes, New Features, and Fixes - GNU P…
OpenSSL APIを使うクライアントプログラムを書いて、あるサイトにアクセスした時にエラーが出た。 ハマったのでメモしておく。 error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failureTLSを指定している(↓)のに何故SSLv3? ctx = SSL_C…
まずは、GitHubからCoreのソースを落とす(他の言語による代替実装もあるらしい)。Git リポジトリのコピー。 git clone https://github.com/bitcoin/bitcoin.gitリモートブランチを一覧表示。最新バージョンは「0.15」。 git branch -r origin/0.10 origin/…
ブラウザ上で閲覧する1つのWEBページは、HTML、JavaScript、CSS等、複数のファイルから構成されることがほとんど。 ソケットプログラムを書くとなると、1ファイル=1要求として関数を書くことになると思われるが、 ソケットの作成は、毎回、行わなければなら…
fgets(3)はwhileループの中でどう使えばいいのか、検証してみた。以下、ソース全文。 whileの部分を変えてみる。 #include <stdio.h> #include <string.h> void testfunc(char *buf){ printf("%s\n", buf); } /* end of testfunc */ void main(int argc, char *argv[]){ if(argc</string.h></stdio.h>…
以下のdeveloperworks記事を参考にOpenSSL APIを試してみた。www.ibm.com今回は"SSL_CTX_load_verify_locations"(証明書の検証)に関する部分のメモVerisignのサイトで試してみた。以下のコードに、エクスポートした各階層の証明書を入力して、 /* Load the t…
GitHubを更新しようとしたらワーニングが出た。 Please note that GitHub no longer supports old versions of Firefox. この時のUser-Agentは User-Agent Mozilla/5.0 (X11; Ubuntu; Linux i686; rv:44.0) Gecko/20100101 Firefox/44.0 2017年8月8日にバー…
純音(一つの正弦波だけで作られる音)を作る 1.ソース ピアノ鍵盤でいうところの「ラ」の音(周波数 880Hz) サンプリング周波数 : 16k(1秒間にいくつ区切るか、電話だと8k、今回は毎秒16000回サンプル) 1秒間鳴らす 値の範囲は「1〜255」(後ほどodコマン…