LPRng 跟 8bit jobname

長久一來,如果印中文檔名的話,jobname 是爛掉的,剛去看 LPRng source,發現他在 Clean_meta() 的時候被處理過,而理由在這邊

簡單的說,因為 RFC1179 根本就沒定義 control file 可以包含的字元集,而很多 implementation 都會假定有,於是乎 LPRng 只好把他們幹掉,以免和其他的 implementation 產生問題。

我剛看了一下 source,這個在生 control file (lpr) 的時候就會處理,所以得所有 client 都弄一弄,另外一個是 lpd 也會在收到 job 的時候處理… 所以看起來最快的方式是把 Clean_meta() 變成假的 XD 不過可能得再仔細看看 code,以免 exploitable… :o

Update: 我又想了一下,最快的就是先過 rawurlencode() 然後就沒問題了 *grin*(其實我目的只是要在 web 上面讀出來是對的…)
Update2: patch

0 Responses to “LPRng 跟 8bit jobname”


  • No Comments