Giter VIP home page Giter VIP logo

dropbear-debian-noroot-fix's Introduction

Debian noroot 環境において dropbear の動作に不具合が生じる問題を修正するための差分ファイル

概要

この差分ファイルは、軽量な SSH サーバである dropbear のうち、安定版の dropbear 及び github 上の dropbear において、一部 bug fix を行い、 Debian noroot 環境において正常に動作させる為の差分ファイルです。

これらの差分ファイルでは、 Android OS 5.0 以降 における Debian noroot 環境において、擬似端末デバイスファイルである /dev/pts/* の所有権及び権限の変更が出来ない制約を回避し、また、システムコール link(2) の実行を回避しています。

差分ファイルの適用とコンパイル

dropbear のソースコードに差分ファイルを適用するには、安定版の dropbear には、差分ファイル dropbear-x.y-fix.diff (ここに、 x.y は安定版のバージョン番号) を、github 上の dropbear には、差分ファイル dropbear-HEAD-xxxxxxxx-fix.diff (ここに、 xxxxxxxx は、リビジョン番号) をそれぞれ適用して下さい。

例えば、安定版の dropbear のソースコードに dropbear-x.y-fix.diff を適用するには、安定版の dropbear のソースコードが置かれているディレクトリより、以下のようにして差分ファイル dropbear-x.y-fix.diff を適用します。

 $ patch -p1 < /path/to/dropbear-x.y-fix.diff
 (ここに、/path/to/diff は、 dropbear-x.y-fix.diff が置かれたディレクトリのパス名)

そして、 github 上の dropbear のソースコードに dropbear-HEAD-xxxxxxxx.diff を適用するには、 github 上の dropbear のソースコードが置かれているディレクトリより、以下のようにして差分ファイル dropbear-HEAD-xxxxxxxx.diff を適用します。

 $ patch -p1 < /path/to/dropbear-HEAD-xxxxxxxx.diff
 (ここに、/path/to/diff は、 dropbear-HEAD-xxxxxxxx.diff が置かれたディレクトリのパス名)

なお、これらの差分ファイルを適用した dropbear のソースコードを Debian noroot 環境においてコンパイルするには、./configure コマンドの実行時に以下のようにして、環境変数 CFLAGS-DDEBIAN_NOROOT を設定する必要があります。

 $ CFLAGS="-DDEBIAN_NOROOT" ./configure --prefix=...  # (以下、適宜オプションを設定すること。)

謝辞

なお、これらの差分ファイルの作成に当たっては、 termux の開発コミュニティ による差分ファイルを参考にしました。 termux の開発コミュニティの皆様には心より感謝致します。

最後に、 Matt Johnston 氏を始めとした dropbear の開発コミュニティの関係各位及び dropbear に関わった方々の全てに心より感謝致します。

使用条件

本差分ファイルは軽量な SSH サーバである dropbear に適用する差分ファイルであり、 Z.OOL. (mailto:[email protected]) が著作権を有します。

従って、本差分ファイルは dropbear のライセンスと同様である MIT License に基づいて配布されるものとします。詳細については、本リポジトリに同梱する LICENSE を参照して下さい。

dropbear-debian-noroot-fix's People

Contributors

z80oolong avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.