+int sidtab_clone(struct sidtab *s, struct sidtab *d)
+{
+       int i, rc = 0;
If s or d are NULL (see if() below), why would we want rc, the return value, to be 0?  How about defaulting rc to an error value (-EINVAL)?
+       struct sidtab_node *cur;
+
+       if (!s || !d)
+               goto errout;
+
+       read_lock(&s->lock);
+       for (i = 0; i < SIDTAB_SIZE; i++) {
+               cur = s->htable[i];
+               while (cur) {
+                       if (cur->sid > SECINITSID_NUM)
+                               rc =  sidtab_insert(d, cur->sid, &cur->context);
+                       if (rc)
+                               goto out;
+                       cur = cur->next;
+               }
+       }
+out:
+       read_unlock(&s->lock);
+errout:
+       return rc;
+}

Thanks,
Jay


_______________________________________________
Selinux mailing list
Selinux@tycho.nsa.gov
To unsubscribe, send email to selinux-le...@tycho.nsa.gov.
To get help, send an email containing "help" to selinux-requ...@tycho.nsa.gov.

Reply via email to