path: root/community/gsoc/project_ideas/file_locking.mdwn
diff options
Diffstat (limited to 'community/gsoc/project_ideas/file_locking.mdwn')
1 files changed, 47 insertions, 0 deletions
diff --git a/community/gsoc/project_ideas/file_locking.mdwn b/community/gsoc/project_ideas/file_locking.mdwn
new file mode 100644
index 00000000..a368a7a8
--- /dev/null
+++ b/community/gsoc/project_ideas/file_locking.mdwn
@@ -0,0 +1,47 @@
+[[!meta copyright="Copyright © 2008, 2009, 2012, 2014, 2018 Free Software
+Foundation, Inc."]]
+[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable
+id="license" text="Permission is granted to copy, distribute and/or modify this
+document under the terms of the GNU Free Documentation License, Version 1.2 or
+any later version published by the Free Software Foundation; with no Invariant
+Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license
+is included in the section entitled [[GNU Free Documentation
+[[!meta title="Fix and Complete File Locking Support"]]
+[[!template id=highlight text="""/!\ Obsolete /!\
+This is no longer valid as a Google Summer of Code project."""]]
+Over the years, [[UNIX]] has acquired a host of different file locking mechanisms.
+Some of them work on the Hurd, while others are buggy or only partially
+implemented. This breaks many applications.
+The goal is to make all file locking mechanisms work properly. This requires
+finding all existing shortcomings (through systematic testing and/or checking
+for known issues in the bug tracker and mailing list archives), and fixing
+them. The biggest missing feature is record locking, i.e. the lockf variant,
+which needs a complete implementation.
+This task will require digging into parts of the code to understand how file
+locking works on the Hurd. Only general programming skills are required.
+A preliminary patch is [[!GNU_Savannah_patch 332 desc="available"]].
+Exercise: Find one of the existing issues, either by looking at the task/bug
+filed on [[open_issues/file_locking]], on
+trackers on savannah, or by trying things out yourself; and take a go at it.
+Note though that most of these issues are probably not trivial -- it's quite
+likely that you won't be able to actually fix any of them in the time available
+during the application process. However, you might be able to spot something
+else that could be improved while looking into this.
+If after trying for a while you haven't found anything easy enough to improve
+in the locking-related code, talk to us about some alternative exercise task.
+Perhaps you actually find something you could do while looking through the bug
+tracker or trying stuff yourself in search of locking issues :-)