Skip to content

Instantly share code, notes, and snippets.

@Vudentz
Created June 21, 2017 19:31
Show Gist options
  • Save Vudentz/1736d6af9608b9332b93858d92a3feff to your computer and use it in GitHub Desktop.
Save Vudentz/1736d6af9608b9332b93858d92a3feff to your computer and use it in GitHub Desktop.
diff --git a/obexd/src/obex.c b/obexd/src/obex.c
index 788bffc..be79a77 100644
--- a/obexd/src/obex.c
+++ b/obexd/src/obex.c
@@ -864,6 +864,17 @@ static void cmd_put(GObex *obex, GObexPacket *req, gpointer user_data)
return;
}
+ /* OPP session don't require CONNECT, in which case just call connect
+ * callback to register the transfer.
+ */
+ if (!os->service_data && os->service->service == OBEX_OPP) {
+ os->service_data = os->service->connect(os, &err);
+ if (err < 0) {
+ os_set_response(os, err);
+ return;
+ }
+ }
+
parse_type(os, req);
if (os->driver == NULL) {
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment