diff options
author | Patricio Cano <suprnova32@gmail.com> | 2016-06-27 10:08:17 -0500 |
---|---|---|
committer | Patricio Cano <suprnova32@gmail.com> | 2016-07-05 16:54:22 -0500 |
commit | da15471bb1c862111300a9202fe06c6a531fb283 (patch) | |
tree | f7abd2a654f5e32c012a21d48aa522c42fc89bc4 | |
parent | 0f54e2ae6c6b5e1d196bf133de5ef92e907ea816 (diff) | |
download | gitlab-ce-da15471bb1c862111300a9202fe06c6a531fb283.tar.gz |
Clarify protocol access check, and make Git HTTP access call more specific.
-rw-r--r-- | app/controllers/projects/git_http_controller.rb | 12 | ||||
-rw-r--r-- | lib/gitlab/protocol_access.rb | 2 |
2 files changed, 7 insertions, 7 deletions
diff --git a/app/controllers/projects/git_http_controller.rb b/app/controllers/projects/git_http_controller.rb index 273be813435..3d0055c9be3 100644 --- a/app/controllers/projects/git_http_controller.rb +++ b/app/controllers/projects/git_http_controller.rb @@ -157,7 +157,7 @@ class Projects::GitHttpController < Projects::ApplicationController end def render_not_allowed - render plain: access.message, status: :forbidden + render plain: download_access.message, status: :forbidden end def ci? @@ -168,20 +168,20 @@ class Projects::GitHttpController < Projects::ApplicationController return false unless Gitlab.config.gitlab_shell.upload_pack if user - access.allowed? + download_access.allowed? else ci? || project.public? end end - def access - return @access if defined?(@access) + def download_access + return @download_access if defined?(@download_access) - @access = Gitlab::GitAccess.new(user, project, 'http').check('git-upload-pack') + @download_access = Gitlab::GitAccess.new(user, project, 'http').check('git-upload-pack') end def http_blocked? - access.message.include?('HTTP') + download_access.protocol_allowed? end def receive_pack_allowed? diff --git a/lib/gitlab/protocol_access.rb b/lib/gitlab/protocol_access.rb index 0498a72d4cf..836ff8a34ba 100644 --- a/lib/gitlab/protocol_access.rb +++ b/lib/gitlab/protocol_access.rb @@ -3,7 +3,7 @@ module Gitlab def self.allowed?(protocol) if protocol.to_s == 'web' true - elsif !current_application_settings.enabled_git_access_protocols.present? + elsif current_application_settings.enabled_git_access_protocols.blank? true else protocol.to_s == current_application_settings.enabled_git_access_protocols |