v_change_sys_ip_owner 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #!/bin/bash
  2. # info: changing ip owner
  3. #----------------------------------------------------------#
  4. # Variable&Function #
  5. #----------------------------------------------------------#
  6. # Argument defenition
  7. user="$1"
  8. ip="$2"
  9. # Importing variables
  10. source $VESTA/conf/vars.conf
  11. source $V_FUNC/shared_func.sh
  12. source $V_FUNC/ip_func.sh
  13. #----------------------------------------------------------#
  14. # Verifications #
  15. #----------------------------------------------------------#
  16. # Checking arg number
  17. check_args '2' "$#" 'user ip'
  18. # Checking argument format
  19. format_validation 'user' 'ip'
  20. # Checking user
  21. is_user_valid
  22. # Checking user is active
  23. is_user_suspended
  24. # Checking system ip
  25. is_sys_ip_valid
  26. # Checking webdomains on ip
  27. is_ip_key_empty '$U_WEB_DOMAINS'
  28. # Checking users on ip
  29. is_ip_key_empty '$U_SYS_USERS'
  30. #----------------------------------------------------------#
  31. # Action #
  32. #----------------------------------------------------------#
  33. # Get ip and user owner
  34. ip_owner=$(get_sys_ip_value '$OWNER')
  35. user_owner=$(get_user_value '$OWNER')
  36. owner_role=$(get_user_value '$ROLE')
  37. # Checking permissions
  38. if [ "$owner_role" != 'admin' ] || [ "$ip_owner" != "$user_owner" ]; then
  39. echo "Error: ip owner is not admin"
  40. log_event 'debug' "$E_PERMS_REQUEIURED $V_EVENT"
  41. exit $E_PERMS_REQUEIURED
  42. fi
  43. # Changing ip owner
  44. update_sys_ip_value '$OWNER' "$user"
  45. #----------------------------------------------------------#
  46. # Vesta #
  47. #----------------------------------------------------------#
  48. # Logging
  49. log_event 'system' "$V_EVENT"
  50. exit $OK