better way to deal with effective_uid