diff --git a/include/libimobiledevice/notification_proxy.h b/include/libimobiledevice/notification_proxy.h
index 872692c..4eccf20 100644
--- a/include/libimobiledevice/notification_proxy.h
+++ b/include/libimobiledevice/notification_proxy.h
@@ -183,7 +183,7 @@
  * @param client the NP client
  * @param notify_cb pointer to a callback function or NULL to de-register a
  *        previously set callback function.
- * @param userdata Pointer that will be passed to the callback function as
+ * @param user_data Pointer that will be passed to the callback function as
  *        user data. If notify_cb is NULL, this parameter is ignored.
  *
  * @note Only one callback function can be registered at the same time;
@@ -193,7 +193,7 @@
  *         NP_E_INVALID_ARG when client is NULL, or NP_E_UNKNOWN_ERROR when
  *         the callback thread could no be created.
  */
-np_error_t np_set_notify_callback(np_client_t client, np_notify_cb_t notify_cb, void *userdata);
+np_error_t np_set_notify_callback(np_client_t client, np_notify_cb_t notify_cb, void *user_data);
 
 #ifdef __cplusplus
 }
diff --git a/src/installation_proxy.c b/src/installation_proxy.c
index ebf2d03..eedddc7 100644
--- a/src/installation_proxy.c
+++ b/src/installation_proxy.c
@@ -282,9 +282,6 @@
  *
  * @param client The connected installation_proxy client.
  * @param command The command to execute. Required.
- * @param client_options The client options to use, as PLIST_DICT, or NULL.
- * @param appid The ApplicationIdentifier to add or NULL if not required.
- * @param package_path The installation package path or NULL if not required.
  *
  * @return INSTPROXY_E_SUCCESS on success or an INSTPROXY_E_* error value if
  *     an error occurred.
@@ -986,9 +983,9 @@
 	}
 }
 
-LIBIMOBILEDEVICE_API instproxy_error_t instproxy_client_get_path_for_bundle_identifier(instproxy_client_t client, const char* appid, char** path)
+LIBIMOBILEDEVICE_API instproxy_error_t instproxy_client_get_path_for_bundle_identifier(instproxy_client_t client, const char* bundle_id, char** path)
 {
-	if (!client || !client->parent || !appid)
+	if (!client || !client->parent || !bundle_id)
 		return INSTPROXY_E_INVALID_ARG;
 
 	plist_t apps = NULL;
@@ -1001,7 +998,7 @@
 	instproxy_client_options_set_return_attributes(client_opts, "CFBundleIdentifier", "CFBundleExecutable", "Path", NULL);
 
 	// only query for specific appid
-	const char* appids[] = {appid, NULL};
+	const char* appids[] = {bundle_id, NULL};
 
 	// query device for list of apps
 	instproxy_error_t ierr = instproxy_lookup(client, appids, client_opts, &apps);
@@ -1012,7 +1009,7 @@
 		return ierr;
 	}
 
-	plist_t app_found = plist_access_path(apps, 1, appid);
+	plist_t app_found = plist_access_path(apps, 1, bundle_id);
 	if (!app_found) {
 		if (apps)
 			plist_free(apps);
