Tor源碼檔案分析 — Control

來源:互聯網
上載者:User

傳統上我們所指的系統訊號,就是系統傳遞給進程的控制訊號。例如,SIGINT,SIGTERM等等。這些訊號的傳遞,通常都是指示相關進程完成相應的操作,或暫停或終止,或其他一些操作。在Tor系統中,訊號分為兩種:傳統訊號,控制器訊號。下面程式碼片段是這些訊號的簡單羅列:

/* These signals are defined to help handle_control_signal work. */#ifndef SIGHUP#define SIGHUP 1#endif#ifndef SIGINT#define SIGINT 2#endif#ifndef SIGUSR1#define SIGUSR1 10#endif#ifndef SIGUSR2#define SIGUSR2 12#endif#ifndef SIGTERM#define SIGTERM 15#endif/* Controller signals start at a high number so we don't * conflict with system-defined signals. */#define SIGNEWNYM 129#define SIGCLEARDNSCACHE 130

  這些訊號,是程式最主要關心的訊號。他們都有相應的響應處理,其處理函數均為訊號回呼函數中調用的process_signal函數。在前面的小節中,我們已經提到過了關於訊號事件的處理機制,這裡就不再多說。但是,值得注意的是,當時的訊號事件註冊,並沒有註冊SIGNEWNYM訊號和SIGCLEARDNSCACHE訊號。也就是說,這兩個訊號並非由訊號處理事件啟用的。那他們是出現在何處的呢?答案是控制串連訊號傳遞。

  我們暫且將這個部分的內容擱置在這裡,標題改成Control。在後期分析完成控制串連之後,將這個系統控制串連的主要作用和用法在這裡進行詳細描述。

未完待續......

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.