Add definitions for symbolic constants LOCK_{EX,NB,SH,UN}.
diff --git a/Modules/fcntlmodule.c b/Modules/fcntlmodule.c
index e7c91b1..e951bc4 100644
--- a/Modules/fcntlmodule.c
+++ b/Modules/fcntlmodule.c
@@ -257,6 +257,30 @@
 
 /* Module initialisation */
 
+static int
+ins(d, symbol, value)
+        PyObject* d;
+        char* symbol;
+        long value;
+{
+        PyObject* v = PyInt_FromLong(value);
+        if (!v || PyDict_SetItemString(d, symbol, v) < 0)
+                return -1;
+
+        Py_DECREF(v);
+        return 0;
+}
+
+static int
+all_ins(d)
+        PyObject* d;
+{
+        if (ins(d, "LOCK_SH", (long)LOCK_SH)) return -1;
+        if (ins(d, "LOCK_EX", (long)LOCK_EX)) return -1;
+        if (ins(d, "LOCK_NB", (long)LOCK_NB)) return -1;
+        if (ins(d, "LOCK_UN", (long)LOCK_UN)) return -1;
+}
+
 void
 initfcntl()
 {
@@ -267,6 +291,7 @@
 
 	/* Add some symbolic constants to the module */
 	d = PyModule_GetDict(m);
+	all_ins(d);
 
 	/* Check for errors */
 	if (PyErr_Occurred())