パスワードを忘れた? アカウント作成
10474811 story
ソフトウェア

SoftEther VPNのソースコードがGPLv2で公開される 44

ストーリー by hylom
普及は進むか 部門より

VPNソフトウェア「SoftEther VPN」のソースコードがGPLv2で公開された(SoftEther VPNプロジェクトのお知らせ)。

SoftEtherは登大遊氏によって開発され、その後「PacketiX VPN」という名称で商用化された。その後、PacketiX VPNの一部機能を制限したものがフリーウェアとして提供されていたが、このたびそのソースコードも公開され、GPLv2のフリーソフトウェアとなった。WindowsおよびMac OS X、Linuxなどで動作する。また、クライアントとしてはiOSやAndroidデバイスにも対応する。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by annoymouse coward (11178) on 2014年01月06日 16時11分 (#2522684) 日記

    ソースコードをざっと眺めました.第一印象としては
    - ソースコードが冗長.長い!
    - コメントが英語で書かれているが文法の誤りが多い
    点が気になりました

    たとえば
    http://ja.softether.org/@api/deki/files/679/=sourcecode.png [softether.org]
    に例示されているたった20行のソースコードでも
    IPV4_GET_FLAGS(ip) & 0x01 を直接評価する行もあれば,その後 last_packet 変数に代入する行もあったりで
    全体的に冗長です

    プロトコルやパケットは実装側のことも考えてデザインされているので,
    そのデザインを正しく理解できれば,多分ソースコードは今の半分ぐらいの行数で簡潔に実装出来ると思います

    • by Egtra (38265) on 2014年01月06日 23時32分 (#2522931)

      - コメントが英語で書かれているが文法の誤りが多い

      これについては、今回の公開に当たり英訳したそうなので、ある程度は仕方ないことだと思います。

      親コメント
    • by Anonymous Coward

      評論家は偉大なり。自分で作れずとも批評ができるから。

      • by Anonymous Coward on 2014年01月06日 16時28分 (#2522704)

        匿名の臆病者は偉大なり。自分でソースが読めずとも批判ができるから。

        公表されてから今までの短時間で冗長な大規模コードを「ざっと見て」
        ある程度の判断ができる時点でプログラムのできる人だと推測できるのですが。
        少なくとも自分には(読むのも書くのも)無理です。

        親コメント
      • by Anonymous Coward on 2014年01月06日 17時49分 (#2522767)
        改善案を出したら批評家以上になれますかね。

        例えば、IPV4_GET_OFFSET(ip)が0でなくて、IPV4_GET_FLAGS(ip)の1ビット目のフラグが立ってる場合、
        「フラグメントが起こっていない」にもかかわらず「フラグメント中のどこか途中」という
        矛盾のあるパケットを意味しそうですが、そのエラーチェックはありませんね。
        IPは詳しくないので、そういう不正な(?)パケットの処理をどうすべきか正確には分かりませんが、もやもやします。
        他の部分との兼ね合いで絶対に起こらないのであれば、両方をチェックする必要はありませんし。

        あとは、0x01を何かの定数にしておいて欲しいな、とかも。

        とにもかくにも動作するすごい者を作れる人はすごいんですが、
        作ったあとのメンテナンス性やらなにやらと、プログラミング坂はそこからもまだまだ長いので。
        親コメント
      • by Anonymous Coward

        評論家は偉大なり。自分で作れずとも批評ができるから。

        よく見なきゃダメだろ?
        あなたは「Anonymous Coward」。対して、元コメントは「anonymous coward」というID持ち。

        ※私もAnonymous Coward

        なんで、ソースをざっくり変えてくれるんですよ……期待しています > anonymous coward

        • by Anonymous Coward

          よく見なきゃダメだよ。
          揚げ足とってすまんけど、わざわざ名前を間違えるのは失礼だよ
          > by annoymouse coward

      • by Anonymous Coward

        ソースレビュー全否定?

        • by Anonymous Coward

          「ボクなら半分で書けるもん」をソースレビューとは言わない。

          • by Anonymous Coward

            そもそも、SoftEtherくらい大きなソフトウェアをコードレビューして
            コード汚いだとか冗長だとか細部の体裁の指摘に走るあたりがピント外れというか…。

    • by Anonymous Coward

      この人の書いたコードって、短いけど読みにくそう。

      • by Anonymous Coward

        半分とか大きく出たよなと思うわ。流石にじゃあやってみなと言いたいレベル。
        コメント削ってほら半分とかじゃないこと願うよ。

        • by Anonymous Coward

          >半分とか大きく出たよなと思うわ。流石にじゃあやってみなと言いたいレベル。

          当然、ソースコードを読んだ上で発言してるのですよね。

          # 出る杭を叩くだけのACの多さに辟易する今日このごろ。

          • by Anonymous Coward

            ソースコードにケチをつけるだけの人を「出る杭」とは褒め過ぎだと思う。

      • by Anonymous Coward

        少なくとも例に出ていた20行のコードを見ても、#2522684で書かれている通り、
        『同一のものを複数(この場合は2つ)の表現で記述』していますから、『冗長だ』
        『分かり辛い』と思われても仕方がないかと。
        # それ以外にも、直値を出している時点で危険な気がしますけど…。

        #2522684のannoymouse cowardさんがどのようなコードを書かれるか知らない
        のですが、該当箇所については、より読みやすい事が期待できる気がします。
        # ソースをまだ見てませんので、半分になるかどうかは不明ですが。

        # 短くすると読みづらいと言う妄想を捨てると幸せになれるかも知れませんよ。
        # もちろん長ければ良いと言うものでもありません。
        # 何にせよ『分かりやすくて読みやすいのが一番』です。

    • by Anonymous Coward

      期待してます。
      来週くらいにはできますよね?

      • by Anonymous Coward

        現時点で来週ぐらいに出来ると見積もれるのであれば、あなたの方が適任では?

    • by Anonymous Coward

      gitなんで、Forkして普通に修正してPull Req送ってもいいのですよ?

    • by Anonymous Coward

      案の定ツリー荒れてますね…。

      僕にもわかった!ここ冗長!みたいなコーディングの指摘1箇所でもって
      「多分ソースコードは今の半分ぐらいの行数で簡潔に実装出来ると思います」
      と豪語されたら、経験的にアチャーと感じる人たちは多いでしょうな。

      • by Anonymous Coward

        そうですね。
        でも、もし高い確度で「出来ると思います」と言えるだけのソースに目を通していても、
        ここに例としてあげるのは、外からよく目立つ部分だけになるのでは。

        だから、「指摘1箇所でもって(中略)豪語されたら」ではないかも。

        ・・・と考えましょうよ。

        • by Anonymous Coward

          このツリー大本のIDはなんでも煽っていくスタイルの困った方なんで、そこも吟味しなさいな。

          • by Anonymous Coward

            >このツリー大本のIDはなんでも煽っていくスタイルの困った方なんで、そこも吟味しなさいな。

            結構大きくなったこのツリーだが、
            実際にコードを読んだうえで発言したのは、
            その大本のIDだけなのだが、
            このことをどう思うか?

            • by Anonymous Coward

              × 実際にコードを読んだうえで発言したのは、その大本のIDだけ
              ○ 実際にコードを読んだと言い張っているのは、その大本のIDだけ

      • by Anonymous Coward

        同感です。
        アイデアをもとに具体的なコードを書いたのですから、
        はじめに具体化したことへの敬意があってもいいかな、と思います。

    • by Anonymous Coward

      文法の誤りなんかいちいち気にしてたら英語のOSSプロジェクトにcontributeなんかできねえよ! (血涙
      どうせ読む方だって英語ネイティブとは限らないからいいんだよ! (開き直り

  • by Anonymous Coward on 2014年01月06日 16時27分 (#2522703)

    公開してくださったことはありがたいし
    心強いことだけど、なんでGPL v2?

    検閲に対抗すると言う意図もある様だけど、それならv3のほうがより安心なんじゃないかな

  • by Anonymous Coward on 2014年01月06日 16時36分 (#2522710)

    OpenVPNではなく、わざわざこれを選択する利点って何?

    • by Anonymous Coward

      OpenVPNもサポートしてるし、本家より早いらしい。
      同時に他のVPNもサポートしてるのもいいとこじゃないかな。
      あと、どうしてもGUIじゃなきゃやだ、って人もいいかも。

      とはいえ、RSA 証明書認証なんかない(商用のみ)みたいだから、やはり自分でOpenVPN立てた方がいいかも。

    • by Anonymous Coward

      GUIがカッチリ作ってあるから設定が楽。

      • by Anonymous Coward

        じゃあ、OpenVPNにGUIをつければいいだけの話では……

        • by Anonymous Coward

          君が作ってくれるのかい?

        • by Anonymous Coward

          設定が楽といえば、OpenVPN Access Serverという商用版がありますが、無償ライセンスで同時に2接続まで使えるのがありますね。

    • by Anonymous Coward

      How different compared with OpenVPN?
      http://www.softether.org/@api/deki/files/680/=comparison3.png [softether.org]

    • by Anonymous Coward

      ほぼ上位互換な気がするので、逆にわざわざOpenVPNを選択する理由が知りたいかな?
      枯れてるからといった理由であれば、今後置き換わっていくでしょうね。

      • by Anonymous Coward

        正当な後継ではないので、上位互換とは言わないのではないか。
        別物だけど、OpenVPNをサポートしててさらにパフォーマンスも機能も充実してる、ってだけかと。
        OpenVPNで十分な人もいるはず。
        すでに稼働済みの環境があれば、aptなどのパッケージ管理でOpenVPNをインストールした後、設定ファイルとキーをコピーするだけですぐに使えるのは楽。
        GUIが逆に煩わしかったり。

    • by Anonymous Coward

      OpenVPN互換プロトコル使ってもOpenVPNより速度速いんだぜ

    • by Anonymous Coward

      個人ユースだと、PacketiX.NETが便利ですね。
      仮想HUBをASP上におけます。
      単一障害点の信頼性は大事。

typodupeerror

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

読み込み中...