對於 Samba 專案這套針對 Windows 用戶端的開放源碼檔案、列印、認證伺服器軟體套件來說,收到外界貢獻用以增加功能或修正現有臭蟲的程式碼,並非罕見之事。就在不久前,該專案打開了企業貢獻程式碼的大門,因此 Samba 開發者收到來自大小組織的程式碼也不令人訝異。但是,如果貢獻程式碼的是 Microsoft 呢?
正如 Samba 團隊成員 Chris Hertel 指出的,有在看 Samba 技術郵件列表的人,或許會注意到一份 2011 年 10 月 10 日提交的修補。企業內有許多開發者經常會發現改善核心 Samba 程式碼的方法,當能夠以自有著作權與 GPL 條款進行提交時,他們會送出這些修補。
Hertel 表示,他們很感激這些人,然而這份修補特別引人注意的,是這些開發者任職的公司:Microsoft。Microsoft 雖曾為其他專案貢獻過程式碼。然而該公司與 Samba 之間,一直以來都算不上關係友好。
Samba 專案以開放源碼程式碼重新建立了 Microsoft 的伺服器訊息區塊 (Server Message Block, SMB) 協定,讓 Windows 桌面能夠與 Linux 檔案伺服器溝通。從各種角度看來,該專案是典型的反 Microsoft 軟體。多年來 Microsoft 與開放源碼爭鬥,就是因為該公司不希望 Linux 與其他專案和自家私有軟體競爭。
Hertel 和其他 Samba 貢獻者提到,如果回到數年前,實在無法想像會有來自 Microsoft 程式開發者的修補提交,但是情況已經有所不同,雙方的煙硝味也不再那麼濃厚。雖然他們依然不認同軟體專利對軟體創意的阻擋,但在為 SMB 圈子建立強大社群並改善相互操作性的努力上,Microsoft 已經站在最前線。
這份修補來自 Microsoft 開放源碼技術中心 (Open Source Technology Centre) 的 Stephen Zarkos。他寫到,今年稍早他們來了一位實習生,和他們一起針對 Firefox 與 Samba 的延伸保護,實作概念性驗證。
為了在用戶端達成此一功能,他們在 Windows 上使用程式庫並提交程式碼給 Mozilla。然而在 Linux 這邊,由於 Firefox 在 NTLM 認證上運用了 Samba,因此他也為 Samba 做了修補檔案。
Slashdot 部落客 Gerhard Mack 表示,Samba 是封閉協定轉為開放的絕佳範例。在 Samba 之前,SMB 只用於讓電腦間分享檔案,開放後,卻擴展出所有人未曾夢想過的嶄新可能。例如家用的 NAS 備份裝置,以及對電視的媒體串流。他說,現在 Microsoft 反而必須參與其中,潛在的利益足以讓該公司想要擴展這項專案。
Barbara Hudson、Chris Travers 等 Slashdot 部落客對 Microsoft 此舉都表示歡迎。Hudson 說,樂見 Microsoft 員工獲得官方同意提交修補給 Samba。Travers 則認為,這表示 Microsoft 贊成其用戶使用 Samba,同時也意味著 Microsoft 認定協助確保 Samba 的運作有助減少其支援成本。
Hertel 指出, 儘管該團隊許多人認為這代表一個里程碑,且對這個修補和其背後蘊含的改變表達感激。然而,他也警告不應該太過樂觀。他認為,Microsoft 是一家大公司,多年前做出決策的許多人依舊待在該公司裡,在很多情況下,該公司內的資訊傳達並不清楚。
同時,Samba 專案領導人之一的 Jeremy Allison 指出,隨著多數應用軟體被放到網路上,Samba 的影響力也不如以往。由於戰場已經不同,Microsoft 的 Samba 修補也就不再那麼的事關重大了。
如今在 Google 工作的 Allison 也指出,Microsoft 的 Samba 貢獻之所以獲得讚賞,只是因為該公司多年來對開放源碼社群的冷淡態度。就像他的上司 Chris DiBona 對他說的:你要知道,你為他們喝采,只因為他們做了你每天都要做的事。