int setuid(uid_t uid)
1) 若进程具有超级用户权限,则setuid将实际用户ID、有效用户ID及保存的设置用户ID设置为uid
2) 若进程没有超级用户权限,但是uid等于实际用户ID或保存的设置用户ID,则setuid只将有效用户ID设置为uid
int seteuid(uid_t uid)
1) 若进程具有超级用户权限,则setuid只将有效用户ID设置为uid
2) 若进程没有超级用户权限,则setuid只将有效用户ID设置为uid, 但是uid必须等于实际用户ID或保存的设置用户ID,
int setreuid(uid_t ruid, uid_t euid)
1) 针对设置用户ID位的程序: 交换有效用户ID和保存的设置用户ID
2) 针对没有设置用户ID位的程序: 交换有效用户ID和实际用户ID
函数作用效果: