| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Reject user logins while BMC_READY state has not been reached yet,
and report the reason in response.
Resolves: openbmc/openbmc#2974
This behavior may be enabled by appending `--with-bmc-check` to
command line arguments.
When it is enabled it maybe temporary disabled by sending `force`
flag with the login request:
```
{
"data": [ "username", "password" ],
"force": true
}
```
Tested: When trying to login in REST receiving response with code 503
while BMC is booting.
Change-Id: I04fce09de2b7a3074b5253346a87773641fd57d0
Signed-off-by: Alexander Filippov <a.filippov@yadro.com>
|
|
|
|
|
| |
Change-Id: Id31467c7d4a0432550f98686af6723b25feaf2c2
Signed-off-by: Andrew Jeffery <andrew@aj.id.au>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
On the DELETE HTTP request, don't immediately fail if
the specified bus does't provide the delete interface on
the specified path, just skip it instead.
Only return the 403 error if nothing at all ended up being
deleted on the request.
This allows multiple services to host the same object path while
only requiring one to support the delete interface. The others
will just listen for the interfaces removed signal to remove
their objects.
Resolves openbmc/openbmc#3181
Tested:
* Issue a -X DELETE with curl on a path provided by multiple
services where only 1 provides the delete interface.
* Issue a -X POST .../action/delete with curl with the same
test setup.
* Issue a -X DELETE with curl on a path without a
delete interface and get a 403 back.
Change-Id: Ib76c80081361160e617ddfe8b48e3e4588abce67
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The web server should not be checking for credentials on the login
API. This allows the GUI to check the old password on a password
change.
Resolves openbmc/openbmc#3190
Tested: Verfied login still works and tested changing the user
password from the GUI.
Change-Id: I7c3570d50c011a0327a34f09b447dec5ca42cb9f
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
|
|
|
|
|
|
|
| |
Expose host serial console over a "/console" route, using a
websocket. An authenticated client can access the host serial console
via reads/writes to this websocket.
Change-Id: I0f63a3844e777d4f4c45194c85a63c9f10a91744
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
If there was no D-Bus object created, it means that either the version
already existed, or there was a failure extracting the file. Ideally the
REST server would query to see if the version already exists, but it
doesn't know the version id to look for, so adding a single error msg
for all error cases. It still makes sense to have a 400 (client) error
for tar errors since a failure to untar is most likely an invalid or
corrupted file that the user would need to address.
Tested:
Uploading a regular file (that triggers a tar failure) or a
version that already exists on the system:
Before:
{
"data": null,
"message": "200 OK",
"status": "ok"
}
After:
{
"data": {
"description": "Version already exists or failed to be extracted"
},
"message": "400 Bad Request",
"status": "error"
}
Fixes openbmc/openbmc#2939
Change-Id: Ia4be5fe1dac3c2c7ebb5eb2aa28e4d58f9222c7f
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
In the put/post upload handler, subscribe to the signal for InterfacesAdded to
the software path and return the version id which is the last item of the path,
wait up to 10 seconds for the new software D-Bus object to be created.
Tested: https://${bmc}/upload/image method returns the version id:
Before:
{
"data": null,
"message": "200 OK",
"status": "ok"
}
After:
{
"data": "84fb16be",
"message": "200 OK",
"status": "ok"
}
Change-Id: I307079f9a3b8f05bc42bc77c89e7976920c668a5
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This server can be started in two different ways:
1. Via systemd socket, which can itself come in two different paths:
a. Direct bind to external HTTPS port 443
b. Reverse proxy to local port like 8081
2. Via command line call
This commit keeps backward compatibility and allows this new --no-ssl
option to be passed in when using a proxy.
Change-Id: I713b53e492862684eb6db45c602ce3c9e8e2f453
Signed-off-by: Andrew Geissler <geissonator@yahoo.com>
|
|
|
|
|
|
|
|
|
| |
Spelling errors found using github.com/lucasdemarchi/codespell
A tool to fix common misspellings.
This tool is licensed under GNU General Public License, version 2.
Change-Id: Ia286ebed549741e15a9661f5797d71e9f93ae83d
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
|
|
|
|
|
|
|
| |
This class was broken with pyphosphor aea38c65. Drop use of the
class altogether and just use a lambda.
Change-Id: I6f36487c1d6fe2003aa007c2a174fe97abf0267a
Tested: Enumerated HTTP root and verified content
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
|
| |
Port code to python 3 yet remain backward compatible to python 2.
This port is in preparation for yocto 2.4 upgrade.
Partially resolves openbmc/openbmc#2920
Change-Id: I418395fc7fbda247d702551af69cbedbbdc3a7aa
Signed-off-by: CamVan Nguyen <ctnguyen@us.ibm.com>
|
|
|
|
|
|
|
|
| |
Commit 91ff110 broke the event notification feature, by creating a
duplicate App object, that's not passed the input keywords.
Change-Id: If92ea10c11aade3a846dfae718f2d5e11e3e34eb
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Route the calls that a browser will request when
it's pointed at https://<bmc> to the specified
files in /usr/share/www, which come from the
phosphor-webui repository.
This takes over the '/' REST endpoint, but that provides
no functionality to the customer anyway.
The long term vision is to use a more advanced server
like nginx, but this is needed until something else is ready.
Tested: Served the phosphor-webui GUI from the BMC with
the script.
Resolves openbmc/openbmc#2821
Change-Id: Id491f9e0865a445160b91897082eb1c69695f562
Signed-off-by: Matt Spinler <spinler@us.ibm.com>
|
|
|
|
|
|
|
| |
It was missed in earlier commit
Change-Id: Ib1ee9610e7e2a31e9247cab212eddf8b84af1011
Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
|
|
|
|
|
|
|
|
| |
This reverts commit 9e2a211304d667756bc4136ec4bd1be27a2b5457, which
breaks code update for non-UBIFS bmcs.
Change-Id: Iecdad70f4ca9d2b4852addac3c2550e081253366
Signed-off-by: Lei YU <mine260309@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Added a plug-in which runs on each request and checks if the requested
URL consists of /org/openbmc, if so, fails with an error message. So as
to ensure the external interfaces are in the /xyz/openbmc_project
namespace, and to disallow the old /org/openbmc namespace.
Resolves openbmc/openbmc#2378
Change-Id: I4aab5ab716c40a460d7b3c28249e7047d3302a0a
Signed-off-by: Nagaraju Goruganti <ngorugan@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
| |
As the web server certificate got expired so configuring the
new one.
I would come up with proposal for certificate management.
Partially Resolves openbmc/openbmc#2423
Change-Id: I69642cb324b8030c7cd21f5efbbadbf2ce459e18
Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
|
|
|
|
|
|
|
|
|
| |
Configure the strong ciphers while web server starts.
Partially Resolves openbmc/openbmc#2423
Change-Id: I6aad0b292d3755a879e407784dce6a57fd217948
Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
| |
This commit fixes the Cross Site scripting attack
by adding security headers in response packet.
Partially Resolves openbmc/openbmc#2423
Change-Id: Ie0ea05408af3d841a54f528863ed1bf65a8c3ed7
Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
|
|
|
|
|
|
|
| |
A couple pep8 errors found their way in.
Change-Id: I31c1de3b2bc92b20a809b9c2638df0d83c2b2ea3
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
-When args are in correct format, but are not in accepted
range, in this case the current abort message not seems
meaningful.
-Updated abort message to suite for both cases when the arg
type is not correct or arg value is not in accepted range.
Fixes openbmc/openbmc#2576
Change-Id: Id35241b05cd193172e2b7b1c905c396d0f9a9b4b
Signed-off-by: Nagaraju Goruganti <ngorugan@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The string "org.freedesktop.UnknownInterface" is not an
existing dbus error string, all errors are of format
*.DBus.Error.* so remove it.
Also check the dbus name instead of message for this error.
The dbus message is the description of the error, like
"Unknown interface 'foo'". The dbus name is the actual
error string, like "org.freedesktop.DBus.Error.UnknownInterface",
Change-Id: Ib54adef852713bc30f3eefc6598e28fcf5be3d29
Signed-off-by: Adriana Kobylak <anoo@us.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For failure in do-put method call REST server computes
the argument types based on the signature and makes a
recursive call with the modified argument types.
Without proper exit clause recursive call is falling into an
infinite loop, modified to retry only once.
Also fixed do_post which has similar retry logic.
Fixes openbmc/openbmc#2653
Change-Id: I150464de5585ebdfab4ae2da2083a62bd63caca1
Signed-off-by: Marri Devender Rao <devenrao@in.ibm.com>
|
|
|
|
|
| |
Change-Id: Iff44de21e71508d81f7c5bfbe24b5f317fff000d
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
- For example user-initiated dump REST request has to respond with dump ID.
This is not happening, the dump-manager is returning the ID, but rest-bus
is not passing the ID to caller.
- These changes will fix the issue.
Fixes openbmc/openbmc#2592
Change-Id: I7ff3f24236249a4ca58ac6ce90cc9dec6fbe0341
Signed-off-by: Nagaraju Goruganti <ngorugan@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Return error if the Image directory is not present.
The Upload code should not create the image dir, instead the
code update or the inotify code should create it.
Even if the Upload code creates the directory,
the inotify is not looking for a file in that dir and won't
untar it. We saw this with 2544. Although not the root cause of
2544 this change would have let the user know sooner (on upload),
that there was a problem.
Change-Id: I9f161354e1c3243567efb73b6974e8f52ff4c5db
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
| |
- For example "DeleteAll" exists in both bmc updater and host updater.
Therefore when a user executes DeleteAll using REST, both the two
instances should be called upon.
Resolves openbmc/openbmc#2490
Change-Id: Ic38b00de137593bc344ff9d743d3144a48bd5f13
Signed-off-by: Saqib Khan <khansa@us.ibm.com>
|
|
|
|
|
| |
Change-Id: If4902b7c900f4108f4563a49ee8aca18294b32f7
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
|
|
|
|
|
|
| |
Add an example client html/js to denote subscription to BMC events via
websockets.
Change-Id: I9d07c7f720965de0272af31fc1a84faa49e901f5
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
| |
Import gobject for running the d-bus event loop, and gevent for
a greenlets support.
Resolves openbmc/openbmc#2318.
Change-Id: Ieaf2e6badcc22159f7470e3fdf949b358fc3e3fe
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
Add a route, '/subscribe', to be able to receive notifications from the
REST server over a websocket.
A client is supposed to create a new websocket by pointing to this route
in the URL. In this commit, the implementation of the route is to just
write a "Connected" message on the websocket.
Change-Id: I38a40b2c17eac3ecdccb131d267baefe20b36572
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
| |
Fix under-indented lines.
Change-Id: Ic1df92e0699107dd2eafb097ebf74b9f5835eb84
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
| |
Set 'WebSocketHandler' as the handler_class.
Websockets are being supported to allow the REST server to be able to
"push" events to clients.
Change-Id: I4c5536ae9070635c00330bb59fc93d3b4382b461
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
| |
This base class member is unused and appears to be dead code. Remove.
Change-Id: Iafdab0e28fdf15bb38f9713ae098d654d05c5b4e
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
|
|
| |
When uploading an image via REST without a file name,
the image upload code closes the file twice, triggering
the inotify twice.
Resolves openbmc/openbmc#2174
Change-Id: I24ff920c745b865bb4e25468e1895b38abf4a592
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
|
|
|
|
|
|
| |
Changed the dump storage location from /tmp/dumps to
/var/lib/phosphor-debug-collector/dumps
Change-Id: I792f7661d377cb8fc5d77441a61b640fd5c2daf4
Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This fix converts the values passed as the method
arguments to the expected type during REST POST method
Invalid args exception handling.
if Invalid args exception occurs,this commit does the
following set of operations.
=>Get the method signature.
=>Convert the value to the expected type.
=>re-execute the post method.
Resolves openbmc/openbmc#1889
Change-Id: I3fe9feda40187e4b72adf800b6bc4eb46f05a27c
Signed-off-by: Ratan Gupta <ratagupt@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
| |
This reverts commit 0dc67226dd38d5e603c9abc9f443809010ae85ee.
No longer needed after 944cd04.
Resolves: openbmc/openbmc#1932
Change-Id: I0f0a3fe2462cfd287ea7d7692fa47de685d595ea
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
| |
This reverts commit 1444fd8c9e9b0807b4f3682236bec7cb3eedeebf.
No longer needed after 944cd04.
Change-Id: I8b19d6506e8ffb6c51b145e8306498621dd53be0
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
|
|
| |
Add a static class member suppress_json_resp that when
set to True will prevent the JsonApiResp plugin from
responding with a json wrapper.
Change-Id: I43aadb6b59bb21ef53e5252e4878157c8e13935e
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
| |
Change-Id: I253b1f23f266a6604e2392d19de25d2d7e7a1ec8
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
|
|
|
|
|
|
|
| |
Resolves openbmc/openbmc#1927.
Change-Id: I05f0a1e37d8ebc83ebe1ff1d9aecba72ebc3aa39
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows user to download dump file from BMC using dump id.
'curl -O -J -c cjar -b cjar -k -X GET https://<bmc_IP>/download/dump/1'
- This will download the dump file on to the Host machine.
Resolves openbmc/openbmc#1508
Change-Id: I2821bfe8d68f80340512161c062503b92a7a7466
Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com>
|
|
|
|
|
|
|
|
| |
Run JSON response format verification plug-in only if the content-type
is 'application/json'.
Change-Id: I032b32193f05a68bf695a6c6c51fccfaba9b197a
Signed-off-by: Jayanth Othayoth <ojayanth@in.ibm.com>
|
|
|
|
|
|
|
| |
Resolves openbmc/openbmc#1718
Change-Id: Ie3020e38682cd0195202f6b3eedbb0f4907fa666
Signed-off-by: Leonel Gonzalez <lgonzalez@us.ibm.com>
|
|
|
|
|
|
|
| |
Fixes openbmc/openbmc#1160
Change-Id: I5c36f5bc065a0b2fdac56c2ee92b0ed54258f238
Signed-off-by: Leonel Gonzalez <lgonzalez@us.ibm.com>
|
|
|
|
|
|
|
| |
Fixes openbmc/openbmc#1563
Change-Id: I73ce61e0416318917902ffdf4969b600236772d9
Signed-off-by: Leonel Gonzalez <lgonzalez@us.ibm.com>
|
|
|
|
|
|
|
|
|
| |
Check content-type only for PUT, POST and PATCH.
Resolves openbmc/openbmc#1525.
Change-Id: I8ddddb344ecec13e1c07a7dba2ccac56c80302f7
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
| |
This allows the user to provide a filename for the uploaded image.
'curl <options> -X PUT -T foo https://<bmc_IP>/upload/image/bar'
- This will save the file foo with the name bar on the BMC.
Resolves openbmc/openbmc#1332.
Change-Id: Ie3d04617114ec574c573ae0ac9ecf65769800062
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Implement a route named '/upload/image' to be able to upload software upgrade
images to the BMC.
A typical upload via cURL would look like this :
'curl <options> -X POST -T <file_to_upload> https://<bmc_IP>/upload/image'.
The uploaded files are stored at /tmp/images/. The filename of the
uploaded file would be 'imageN', with N starting at 0.
Change-Id: I183f50a108791ef8e70b50fd5e331310240d7a78
Signed-off-by: Deepak Kodihalli <dkodihal@in.ibm.com>
|