diff options
author | Slawomir Bochenski <lkslawek@gmail.com> | 2012-03-14 23:54:30 +0100 |
---|---|---|
committer | Johan Hedberg <johan.hedberg@intel.com> | 2012-03-27 13:36:29 +0300 |
commit | 3f1d549f23b520a165951053cc63adeadf043fdb (patch) | |
tree | 68aa96b821129927a2458e4c3b653ad5c8712875 /plugins | |
parent | 07ca5cba22ebaa2a5310997dee502446475dd0f8 (diff) | |
download | obexd-3f1d549f23b520a165951053cc63adeadf043fdb.tar.gz |
MAP: Use input parameters for folder listing
Diffstat (limited to 'plugins')
-rw-r--r-- | plugins/mas.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/plugins/mas.c b/plugins/mas.c index 8eefe5f..f6d4799 100644 --- a/plugins/mas.c +++ b/plugins/mas.c @@ -478,6 +478,9 @@ static void *folder_listing_open(const char *name, int oflag, mode_t mode, void *driver_data, size_t *size, int *err) { struct mas_session *mas = driver_data; + /* 1024 is the default when there was no MaxListCount sent */ + uint16_t max = 1024; + uint16_t offset = 0; if (oflag != O_RDONLY) { *err = -EBADR; @@ -486,9 +489,11 @@ static void *folder_listing_open(const char *name, int oflag, mode_t mode, DBG("name = %s", name); - /* 1024 is the default when there was no MaxListCount sent */ - *err = messages_get_folder_listing(mas->backend_data, name, 1024, 0, - get_folder_listing_cb, mas); + map_ap_get_u16(mas->inparams, MAP_AP_MAXLISTCOUNT, &max); + map_ap_get_u16(mas->inparams, MAP_AP_STARTOFFSET, &offset); + + *err = messages_get_folder_listing(mas->backend_data, name, max, + offset, get_folder_listing_cb, mas); mas->buffer = g_string_new(""); |