summaryrefslogtreecommitdiff
path: root/goo/vms_unlink.c
diff options
context:
space:
mode:
Diffstat (limited to 'goo/vms_unlink.c')
-rw-r--r--goo/vms_unlink.c22
1 files changed, 22 insertions, 0 deletions
diff --git a/goo/vms_unlink.c b/goo/vms_unlink.c
new file mode 100644
index 0000000..e2cf687
--- /dev/null
+++ b/goo/vms_unlink.c
@@ -0,0 +1,22 @@
+/*
+ * vms_unlink.c
+ *
+ * A UNIX-style unlink() function for VMS.
+ *
+ * Thanks to Patrick Moreau (pmoreau@cena.dgac.fr).
+ */
+
+#include <descrip.h>
+#include <string.h>
+#include <lib$routines.h>
+
+int unlink(char *filename) {
+ static struct dsc$descriptor_s file_desc;
+
+ file_desc.dsc$w_length = strlen(filename);
+ file_desc.dsc$b_dtype = DSC$K_DTYPE_T;
+ file_desc.dsc$b_class = DSC$K_CLASS_S;
+ file_desc.dsc$a_pointer= filename;
+
+ return (lib$delete_file(&file_desc));
+}