Commit message (Collapse) | Author | Age | Files | Lines | |
---|---|---|---|---|---|
* | <unstable> 重新規劃整個程式的架構HEADmaster | LAN-TW | 2013-02-20 | 23 | -1345/+2879 |
| | | | | | 關於程式架構,請參考 README 檔案。 目前仍許多功能在舊版已實作,但此版本尚未加入。 | ||||
* | 修正 --disable-procmon 時導致的編譯失敗問題sctjudge-1.0 | LAN-TW | 2013-01-27 | 2 | -4/+9 |
| | |||||
* | 重新規劃 configure.ac,加入自動猜測的功能 (版本號進入 1.0) | LAN-TW | 2013-01-27 | 10 | -164/+334 |
| | | | | | | | | | | 現在可以偵測 Linux 和 FreeBSD,並提供不同的預設選項了! 預設的東西失敗了不會結束 configure,但使用者自己指定的就會。 待解決問題: (1) 程序監視器目前只實做了 Linux 版本,FreeBSD 尚未實作。 (但已進行相關準備工作) (2) 0.000 秒 訊息可能不會被洗掉的問題,這大概要下一版才能解決。 | ||||
* | 修正時間限制很短時的 TLE 誤判情形 | lantw44 | 2013-01-26 | 1 | -0/+1 |
| | |||||
* | 修改檢查函式庫的部份,同時 l4basic 更新至 1.1 版 | lantw44 | 2013-01-26 | 11 | -35/+95 |
| | |||||
* | 清除所有 pthread_cancel() | lantw44 | 2013-01-26 | 6 | -42/+30 |
| | | | | 已使用 sem_timedwait 和 sem_post 取代所有以往需要 pthread_cancel 的地方 | ||||
* | 版本編號進入 1.0-rc3sctjudge-1.0-rc3 | LAN-TW | 2012-11-18 | 1 | -2/+2 |
| | | | | | | | 待解決的問題清單: 1. FreeBSD i386 上透過 linprocfs,程序監視器仍無法正常執行。 2. 所有 pthread_cancel 必須替換掉。 3. 更改 verbose 和 debug 的訊息,如果可以的話 force 的功能還要再加強。 | ||||
* | 更改 sctjudge_makechild_cleanup_p1() 中 sem_post() 的位置 | LAN-TW | 2012-11-15 | 1 | -4/+4 |
| | | | | 基本上 sem_post() 目前來說是可以去掉,不過先暫時保留。 | ||||
* | 去除所有 PTHREAD_CANCEL_ASYNCHRONOUS ↵ | LAN-TW | 2012-11-14 | 4 | -7/+18 |
| | | | | | | | | 以避免中斷位置不正確造成問題 解決此已知問題:在 FreeBSD 上如果受測程式太快結束,有機會導致本程式無法結束。 目前的做法事都先改成 PTHREAD_CANCEL_DEFERRED 並加入 cancel point,但我在想之 後應該要想辦法把所有 pthread_cancel() 都去掉。 | ||||
* | 版本編號進入 1.0-rc2 (仍有一個未解決的問題)sctjudge-1.0-rc2 | LAN-TW | 2012-11-13 | 1 | -2/+2 |
| | | | | | 目前測試在 FreeBSD i386 上,如果用 gcc 編譯,則程序監視器無法正常使用。 但若使用 llvm+clang 來編譯,卻又一切正常,不知道是為什麼...... | ||||
* | Typo - sctjudge_dispaytime -> sctjudge_displaytime | LAN-TW | 2012-11-13 | 3 | -3/+3 |
| | | | | 雖然說無關緊要,而且過了這麼久才發現,但還是改一下吧。 | ||||
* | 修改程序監視器的顯示部分 | LAN-TW | 2012-11-12 | 1 | -0/+2 |
| | | | | 既然為了避免除以 0 引入了「?」符號,那就通通加上吧! | ||||
* | 再次修正 UID 相關變數 | LAN-TW | 2012-11-12 | 1 | -2/+0 |
| | | | | | 抱歉,上次沒改完整,有個地方沒改到。 (請參考 commit dd395f346b69a124608e22b64322c1f1d94e0df3) | ||||
* | 修正程序監視器可能發生除以 0 錯誤的問題 | LAN-TW | 2012-11-12 | 1 | -6/+11 |
| | | | | | 因為某些特殊狀況下,相鄰兩次取樣時 CPU 時間是相同的 (也許是發生在虛擬機反應遲 鈍時),因此在除之前要判斷是否為 0。 | ||||
* | 修正 save_uids() 和 UID 相關變數的宣告 | LAN-TE | 2012-11-12 | 3 | -9/+7 |
| | | | | | 由於要避免使用 getuid(),相關宣告不再是僅限 --disable-cap 的狀況才需要,現在不 論是哪種情況,因為都要檢查 UID,所以一定需要這些東西。 | ||||
* | 修正在 #undef _POSIX_SAVED_IDS 的環境下發生的問題 | LAN-TW | 2012-11-12 | 4 | -13/+19 |
| | | | | | 原先使用 getuid() 判斷 UID 會導致在 disable_setuid() 後 real UID 有誤,導致只 有 root 可以強制執行這支程式。 | ||||
* | 各項參數由 int 改為 unsigned int | LAN-TW | 2012-11-12 | 2 | -10/+12 |
| | | | | | 因為 setrlimit 的參數其實是用 unsigned int,因此改成 unsigned int。 同時命令列解析的部分,也將 atoi 改成 sscanf 了。 | ||||
* | 套件製作者可利用 configure 的 --disable-check 略過所有檢測sctjudge-1.0-rc1 | LAN-TW | 2012-10-27 | 1 | -8/+20 |
| | | | | | make dist 或是 rpmbuild 這些動作沒有進行檢測的必要,這個參數可讓 configure 提早結束並產生 Makefile 和 RPM spec 檔案。 | ||||
* | Add .gitignore - ignore files should not be committed | LAN-TW | 2012-10-27 | 1 | -0/+27 |
| | |||||
* | 修改 RPM spec 檔案,現在一些簡單的文件會一併安裝了 | LAN-TW | 2012-10-27 | 2 | -2/+3 |
| | |||||
* | 使用者可利用 configure 設定用於捨棄資料的裝置檔案 | LAN-TW | 2012-10-27 | 3 | -9/+20 |
| | | | | 其實就是 /dev/null 或 /dev/zero 之類的東西!預設是 /dev/null | ||||
* | 現在可以藉由 configure 來修改 Linux proc 檔案系統位置了 | LAN-TW | 2012-10-27 | 4 | -7/+32 |
| | | | | | | | 這個修改主要是為了配合 FreeBSD 的 linprocfs 而做的,因為一般來說 FreeBSD 的 linprocfs 會掛載在 /compat/linux/proc 而不在 /proc。 同時也修改了 RPM spec 檔案,現在可以在版本號裡加上 rc 標記了! | ||||
* | 修改 CFLAGS - 加入 -D_REENTRANT -D_THREAD_SAFE | LAN-TW | 2012-10-27 | 1 | -1/+2 |
| | | | | 因為這個程式有使用 pthread,加入這個以確保 thread-safe | ||||
* | Add license info - use 3-clause BSD license | LAN-TW | 2012-10-19 | 2 | -2/+27 |
| | |||||
* | 配合命令列參數改變而做的修正 | LAN-TW | 2012-10-15 | 1 | -4/+4 |
| | |||||
* | 加入顯示「編譯時啟用功能列表」的功能 (-version 會顯示) | LAN-TW | 2012-10-15 | 2 | -6/+40 |
| | |||||
* | Typo - 程序監視器部分無法啟用 Linux proc 擴充功能 | LAN-TW | 2012-10-15 | 1 | -1/+1 |
| | |||||
* | Rename - 將 core.h 改名為 sctcore.h | LAN-TW | 2012-10-15 | 6 | -5/+5 |
| | | | | 避免程式 core dump 時將檔案蓋掉。 | ||||
* | 修改檢查 UID/GID 是否合理的部分 - 第二次修改 | LAN-TW | 2012-10-11 | 1 | -7/+16 |
| | | | | 預設將不允許 root 在無變更 UID 的狀況下執行。(-f 仍可強制執行) | ||||
* | Typo - 命令列解析部份出錯 | LAN-TW | 2012-10-11 | 1 | -1/+1 |
| | | | | 選項「-r」應為設定 chroot 目錄,不小心打成設定可執行擋名稱,現已修正。 | ||||
* | proc 檔案系統不一定要掛載在 /proc(預備動作,尚未完成) | LAN-TW | 2012-10-11 | 2 | -3/+6 |
| | |||||
* | 延伸 UID/GID 與名稱轉換的功能 | LAN-TW | 2012-10-11 | 1 | -10/+17 |
| | | | | | | 修改 configure.ac,使用者可以很容易的從 configure 的結果看出是否啟用這項功能。 同時也加入將 configure 結束訊息寫入 config.msg 的功能。 (問題:tee 在各個系統都有嗎?會不會造成可攜性問題?) | ||||
* | 加入 UID/GID 與名稱轉換的功能 | LAN-TW | 2012-09-21 | 2 | -3/+35 |
| | | | | 這樣以後就可以只輸入使用者或群組名稱,而不需要手動去把 UID/GID 找出。 | ||||
* | 修改檢查 UID/GID 是否合理的部分 | LAN-TW | 2012-09-20 | 4 | -32/+44 |
| | |||||
* | 修改命令列參數格式,並加入 l4basic 作為輔助用函式庫 | LAN-TW | 2012-09-19 | 20 | -156/+989 |
| | | | | 目前有許多部份尚未配合此次命令列變更,因此程式運作可能不正常! | ||||
* | Add autogen.sh - create `configure' script | LAN-TW | 2012-09-14 | 1 | -0/+9 |
| | |||||
* | Second commit - copy files from working tree | LAN-TW | 2012-09-14 | 5 | -57/+49 |
| | | | | | | (1) Modify configure.ac to handle more situations. (2) ChangeLog is temporarily deleted. (3) An RPM spec file is added. | ||||
* | Initial commit - copy project filessctjudge-0.9.1 | LAN-TW | 2012-09-14 | 15 | -0/+1796 |
All files is copied from sctjudge version 0.9.1. |