Message ID | 20230315100435.5424-1-aarongt.shen@gmail.com (mailing list archive) |
---|---|
State | Accepted |
Commit | 338ba4352b6cadafe61808c21302c0abe2168e02 |
Headers | show |
Series | [BlueZ] obexd: reject to accept file when replying reject message | expand |
Context | Check | Description |
---|---|---|
tedd_an/pre-ci_am | success | Success |
tedd_an/CheckPatch | success | CheckPatch PASS |
tedd_an/GitLint | success | Gitlint PASS |
tedd_an/BuildEll | success | Build ELL PASS |
tedd_an/BluezMake | success | Bluez Make PASS |
tedd_an/MakeCheck | success | Bluez Make Check PASS |
tedd_an/MakeDistcheck | success | Make Distcheck PASS |
tedd_an/CheckValgrind | success | Check Valgrind PASS |
tedd_an/CheckSmatch | success | CheckSparse PASS |
tedd_an/bluezmakeextell | success | Make External ELL PASS |
tedd_an/IncrementalBuild | success | Incremental Build PASS |
tedd_an/ScanBuild | success | Scan Build PASS |
This is automated email and please do not reply to this email! Dear submitter, Thank you for submitting the patches to the linux bluetooth mailing list. This is a CI test results with your patch series: PW Link:https://patchwork.kernel.org/project/bluetooth/list/?series=730253 ---Test result--- Test Summary: CheckPatch PASS 0.51 seconds GitLint PASS 0.33 seconds BuildEll PASS 26.74 seconds BluezMake PASS 755.96 seconds MakeCheck PASS 10.87 seconds MakeDistcheck PASS 151.05 seconds CheckValgrind PASS 243.76 seconds CheckSmatch PASS 326.15 seconds bluezmakeextell PASS 98.46 seconds IncrementalBuild PASS 612.42 seconds ScanBuild PASS 975.66 seconds --- Regards, Linux Bluetooth
Hello: This patch was applied to bluetooth/bluez.git (master) by Luiz Augusto von Dentz <luiz.von.dentz@intel.com>: On Wed, 15 Mar 2023 18:04:35 +0800 you wrote: > It will accept file when obex agent replied any message > event though the message is org.bluez.obex.Error.Rejected. > The patch helps to reject a Bluetooth object push request if > user replied "org.bluez.obex.Error.Rejected" message according > to the doc/obex-agent-api.txt. > --- > obexd/src/manager.c | 8 +++++++- > 1 file changed, 7 insertions(+), 1 deletion(-) Here is the summary with links: - [BlueZ] obexd: reject to accept file when replying reject message https://git.kernel.org/pub/scm/bluetooth/bluez.git/?id=338ba4352b6c You are awesome, thank you!
diff --git a/obexd/src/manager.c b/obexd/src/manager.c index 01741fe62..849928603 100644 --- a/obexd/src/manager.c +++ b/obexd/src/manager.c @@ -38,6 +38,7 @@ #define TRANSFER_INTERFACE OBEXD_SERVICE ".Transfer1" #define SESSION_INTERFACE OBEXD_SERVICE ".Session1" #define AGENT_INTERFACE OBEXD_SERVICE ".Agent1" +#define OBEX_ERROR_REJECT "org.bluez.obex.Error.Rejected" #define TIMEOUT 60*1000 /* Timeout for user response (miliseconds) */ @@ -45,6 +46,7 @@ struct agent { char *bus_name; char *path; gboolean auth_pending; + gboolean auth_reject; char *new_name; char *new_folder; unsigned int watch_id; @@ -631,6 +633,9 @@ static void agent_reply(DBusPendingCall *call, void *user_data) if (dbus_error_has_name(&derr, DBUS_ERROR_NO_REPLY)) agent_cancel(); + if (dbus_error_has_name(&derr, OBEX_ERROR_REJECT)) + agent->auth_reject = TRUE; + dbus_error_free(&derr); dbus_message_unref(reply); return; @@ -694,6 +699,7 @@ int manager_request_authorization(struct obex_transfer *transfer, dbus_message_unref(msg); agent->auth_pending = TRUE; + agent->auth_reject = FALSE; got_reply = FALSE; /* Catches errors before authorization response comes */ @@ -716,7 +722,7 @@ int manager_request_authorization(struct obex_transfer *transfer, dbus_pending_call_unref(call); - if (!agent || !agent->new_name) + if (!agent || !agent->new_name || agent->auth_reject) return -EPERM; *new_folder = agent->new_folder;