Category Archives

10 Articles

Sunshine 的許可權提升實現的坑

0   2812 轉為簡體

Sunshine 在進行許可權提升操作時,會用WTSGetActiveConsoleSessionId來獲取當前的活動會話,找到活動會話中的實際用戶,再從這個用戶來提升許可權。

但是當前會話是RDP時,Windows會分配一個nobody用戶,然後給WTSGetActiveConsoleSessionId里返回0。從而後面獲取不到用戶的token。

在這個貼子中,有人提到了遍歷所有的會話,過濾掉不活動的和獲取不到token的會話,從而一找到個實際登錄的用戶。

有了這個修復之後,只要使用物理顯示器登錄一次,或者用Sunshine 中的 Desktop 程序登錄之後,實際串流即可找到正確的用戶來提升許可權。

我把它和打包出來的二進位放到了這裡:

https://github.com/fffonion/Sunshine/releases/tag/0.21-fix

 

開源了鹹魚撿的京付的三色墨水屏驅動

0   7586 轉為簡體

35塊一個,長這樣

經過一番Google找到了對應的原廠屏,是Gooddisplay的GDEH042Z96,屏幕晶元是SSD1619A,這個晶元初始化序列比幻塔的新手教程還長。

整理了一下官方常式之後,發了一個PR:https://github.com/ZinggJM/GxEPD2/pull/47;有一些點需要注意:

  1. 三色屏(實際上是雙色)是兩種液晶分開刷新的,先刷黑色,再刷紅色。其中SSD1619A的紅色輸入值需要取反,否則屏幕整塊都是紅的。
  2. 這塊屏只支持全刷,全刷一次要20秒,要把GxEPD2的默認等待BUSY pin的時間調長。

效果如下圖所示,用的是我魔改的中文版天氣:https://github.com/fffonion/ESP32-e-Paper-Weather-Display

 

交叉編譯openresty,修復支持大文件 (LFS)

0   8005 轉為簡體

老文存檔,有時間補全

http://www.gnu.org/software/libc/manual/html_node/Feature-Test-Macros.html

http://cgit.openembedded.org/meta-openembedded/tree/meta-webserver/recipes-httpd/nginx/files/nginx-cross.patch

https://stackoverflow.com/questions/4357570/use-file-offset64-vs-file-offset-bits-64

https://digital-domain.net/largefiles.html

https://stackoverflow.com/questions/35575749/how-to-define-file-offset-bits-large-files-macro-for-solaris-and-hp-aix

http://users.suse.com/~aj/linux_lfs.html

ngx_http_geoip_module開啟utf8支持

0   7903 轉為簡體

cidr.me中使用這個模塊時,返回了類似這樣的輸出:

Canada, Quebec, Montr�al

發現有人提過PATCH。於是去喵了一眼源碼,發現有一個文檔里沒有提到的隱藏參數。

可以使用

這樣來啟用utf8。默認是iso-8859-1,或者叫latin-1。

MySQL默認也是latin-1。大概因為是單位元組的,所以大家都愛默認用它;可是除了肉眼可見的字元,別的控制符除了會在終端里用以外並沒有什麼卵用。

還有libzip里默認用的是CP437,是DOS版的單位元組編碼。因為大概只有中文版的windows自帶的壓縮功能會生成GB18030編碼的zip文件,所以還魔改過一個中國特色的libzip

 

Sphinx 2.2.11和2.3.2的mmseg分詞補丁(基於Coreseek)

0   11041 轉為簡體

English Version

補丁包括了nzinfo在coreseek中貢獻的mmseg補丁,以及我提交的日語假名補丁(詳見這篇博客)。詳細更改見這裡

打上補丁之後,可以使用mmseg來做分詞器。如果是對大篇幅的文章做索引,推薦使用mmseg處理結巴分詞的詞庫來生成一個比較靠譜的詞庫。

Sphinx 2.11.1:Github下載 本地下載

Sphinx 2.3.2:Github下載 本地下載

Read More