Commit c613b135 authored by Poul-Henning Kamp's avatar Poul-Henning Kamp

Try to make the sandboxing work on omnitios

parent 12a475d9
...@@ -102,13 +102,15 @@ mgt_sandbox_solaris_add_inheritable(priv_set_t *pset, enum sandbox_e who) ...@@ -102,13 +102,15 @@ mgt_sandbox_solaris_add_inheritable(priv_set_t *pset, enum sandbox_e who)
{ {
switch (who) { switch (who) {
case SANDBOX_VCC: case SANDBOX_VCC:
/* for /etc/resolv.conf and /etc/hosts */
AZ(priv_addset(pset, "file_read"));
break; break;
case SANDBOX_CC: case SANDBOX_CC:
priv_addset(pset, "proc_exec"); AZ(priv_addset(pset, "proc_exec"));
priv_addset(pset, "proc_fork"); AZ(priv_addset(pset, "proc_fork"));
/* PSARC/2009/378 - 63678502e95e - onnv_140 */ /* PSARC/2009/378 - 63678502e95e - onnv_140 */
priv_addset(pset, "file_read"); AZ(priv_addset(pset, "file_read"));
priv_addset(pset, "file_write"); AZ(priv_addset(pset, "file_write"));
break; break;
case SANDBOX_VCLLOAD: case SANDBOX_VCLLOAD:
break; break;
...@@ -131,19 +133,19 @@ mgt_sandbox_solaris_add_effective(priv_set_t *pset, enum sandbox_e who) ...@@ -131,19 +133,19 @@ mgt_sandbox_solaris_add_effective(priv_set_t *pset, enum sandbox_e who)
switch (who) { switch (who) {
case SANDBOX_VCC: case SANDBOX_VCC:
/* PSARC/2009/378 - 63678502e95e - onnv_140 */ /* PSARC/2009/378 - 63678502e95e - onnv_140 */
priv_addset(pset, "file_write"); AZ(priv_addset(pset, "file_write"));
break; break;
case SANDBOX_CC: case SANDBOX_CC:
break; break;
case SANDBOX_VCLLOAD: case SANDBOX_VCLLOAD:
/* PSARC/2009/378 - 63678502e95e - onnv_140 */ /* PSARC/2009/378 - 63678502e95e - onnv_140 */
priv_addset(pset, "file_read"); AZ(priv_addset(pset, "file_read"));
case SANDBOX_WORKER: case SANDBOX_WORKER:
/* PSARC/2009/685 - 8eca52188202 - onnv_132 */ /* PSARC/2009/685 - 8eca52188202 - onnv_132 */
priv_addset(pset, "net_access"); AZ(priv_addset(pset, "net_access"));
/* PSARC/2009/378 - 63678502e95e - onnv_140 */ /* PSARC/2009/378 - 63678502e95e - onnv_140 */
priv_addset(pset, "file_read"); AZ(priv_addset(pset, "file_read"));
priv_addset(pset, "file_write"); AZ(priv_addset(pset, "file_write"));
break; break;
default: default:
REPORT(LOG_ERR, "INCOMPLETE AT: %s(%d)\n", __func__, __LINE__); REPORT(LOG_ERR, "INCOMPLETE AT: %s(%d)\n", __func__, __LINE__);
...@@ -166,7 +168,7 @@ mgt_sandbox_solaris_add_permitted(priv_set_t *pset, enum sandbox_e who) ...@@ -166,7 +168,7 @@ mgt_sandbox_solaris_add_permitted(priv_set_t *pset, enum sandbox_e who)
break; break;
case SANDBOX_WORKER: case SANDBOX_WORKER:
/* for raising limits in cache_waiter_ports.c */ /* for raising limits in cache_waiter_ports.c */
priv_addset(pset, PRIV_SYS_RESOURCE); AZ(priv_addset(pset, PRIV_SYS_RESOURCE));
break; break;
default: default:
REPORT(LOG_ERR, "INCOMPLETE AT: %s(%d)\n", __func__, __LINE__); REPORT(LOG_ERR, "INCOMPLETE AT: %s(%d)\n", __func__, __LINE__);
...@@ -184,7 +186,7 @@ mgt_sandbox_solaris_add_initial(priv_set_t *pset, enum sandbox_e who) ...@@ -184,7 +186,7 @@ mgt_sandbox_solaris_add_initial(priv_set_t *pset, enum sandbox_e who)
(void)who; (void)who;
/* for setgid/setuid */ /* for setgid/setuid */
priv_addset(pset, PRIV_PROC_SETID); AZ(priv_addset(pset, PRIV_PROC_SETID));
} }
/* /*
......
...@@ -154,7 +154,8 @@ vws_thread(void *priv) ...@@ -154,7 +154,8 @@ vws_thread(void *priv)
while (1) { while (1) {
port_event_t ev[MAX_EVENTS]; port_event_t ev[MAX_EVENTS];
int nevents, ei, ret; u_int nevents;
int ei, ret;
double now, deadline; double now, deadline;
/* /*
...@@ -239,6 +240,7 @@ vws_thread(void *priv) ...@@ -239,6 +240,7 @@ vws_thread(void *priv)
timeout = &max_ts; timeout = &max_ts;
} }
} }
return(0);
} }
/*--------------------------------------------------------------------*/ /*--------------------------------------------------------------------*/
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment