+
+/*
+ * Code for locking/unlocking the serial device.
+ */
+
+static char *devlocked = (char *) 0;
+
+int lock(char *device)
+{
+ char *devname;
+ int rc;
+
+ if (devname = strrchr(device,'/'))
+ ++devname;
+ else
+ devname = device;
+
+ if ((rc = ttylock(devname)) == 0) {
+ devlocked = (char *) malloc(strlen(devname) + 1);
+ sprintf(devlocked,"%s",devname);
+ } else
+ devlocked = (char *) 0;
+
+ return(rc);
+}
+
+int unlock()
+{
+ int rc = 0;
+
+ if (devlocked) {
+ rc = ttyunlock(devlocked);
+ free(devlocked);
+ devlocked = (char *) 0;
+ }
+ return(rc);
+}
+