pkgman: Perform URL format validation Bug #13786
* Tests for validity of supplied URL before attempting to add it BUrl's isValid() is used to test the URL Change-Id: I49bfc266177f16052a46ca3dbc1fd6e8dd1ab6ae Reviewed-on: https://review.haiku-os.org/c/1020 Reviewed-by: Jérôme Duval <[email protected]>
This commit is contained in:
@@ -10,6 +10,7 @@
|
|||||||
|
|
||||||
#include <Errors.h>
|
#include <Errors.h>
|
||||||
#include <SupportDefs.h>
|
#include <SupportDefs.h>
|
||||||
|
#include <Url.h>
|
||||||
|
|
||||||
#include <package/AddRepositoryRequest.h>
|
#include <package/AddRepositoryRequest.h>
|
||||||
#include <package/Context.h>
|
#include <package/Context.h>
|
||||||
@@ -87,6 +88,13 @@ AddRepoCommand::Execute(int argc, const char* const* argv)
|
|||||||
|
|
||||||
status_t result;
|
status_t result;
|
||||||
for (int i = 0; i < urlCount; ++i) {
|
for (int i = 0; i < urlCount; ++i) {
|
||||||
|
// Test if a valid URL has been supplied before attempting to add
|
||||||
|
BUrl repoURL(repoURLs[i]);
|
||||||
|
if (!repoURL.IsValid()) {
|
||||||
|
result = B_BAD_VALUE;
|
||||||
|
DIE(result, "request for adding repository \"%s\" failed",
|
||||||
|
repoURLs[i]);
|
||||||
|
}
|
||||||
AddRepositoryRequest addRequest(context, repoURLs[i], asUserRepository);
|
AddRepositoryRequest addRequest(context, repoURLs[i], asUserRepository);
|
||||||
result = addRequest.Process(true);
|
result = addRequest.Process(true);
|
||||||
if (result != B_OK) {
|
if (result != B_OK) {
|
||||||
|
|||||||
Reference in New Issue
Block a user