Skip to content

Commit ee1b469

Browse files
eivindj-nordicanhmolt
authored andcommitted
net: lib: downloader: Formatting and code restructuring
Cleanup formatting and some code restructuring. Co-authored-by: Andreas Moltumyr <[email protected]> Signed-off-by: Eivind Jølsgard <[email protected]>
1 parent 8bc2caa commit ee1b469

File tree

1 file changed

+19
-20
lines changed
  • subsys/net/lib/downloader/src/transports

1 file changed

+19
-20
lines changed

subsys/net/lib/downloader/src/transports/http.c

Lines changed: 19 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -151,22 +151,21 @@ static int http_get_request_send(struct downloader *dl)
151151
/* nRF91 series has a limitation of decoding ~2k of data at once when using TLS */
152152
tls_force_range = (http->sock.proto == IPPROTO_TLS_1_2 && !dl->host_cfg.set_native_tls &&
153153
IS_ENABLED(CONFIG_SOC_SERIES_NRF91X));
154-
155-
if (dl->host_cfg.range_override) {
156-
if (tls_force_range && dl->host_cfg.range_override > (TLS_RANGE_MAX)) {
154+
if (tls_force_range) {
155+
if (dl->host_cfg.range_override > TLS_RANGE_MAX) {
157156
LOG_WRN("Range override > TLS max range, setting to TLS max range");
158-
dl->host_cfg.range_override = (TLS_RANGE_MAX);
157+
dl->host_cfg.range_override = TLS_RANGE_MAX;
158+
} else if (dl->host_cfg.range_override == 0) {
159+
dl->host_cfg.range_override = TLS_RANGE_MAX;
159160
}
160-
} else if (tls_force_range) {
161-
dl->host_cfg.range_override = TLS_RANGE_MAX;
162161
}
163162

164163
if (dl->host_cfg.range_override) {
165164
off = dl->progress + dl->host_cfg.range_override - 1;
166165

167-
if (dl->file_size && (off > dl->file_size - 1)) {
166+
if (dl->file_size) {
168167
/* Don't request bytes past the end of file */
169-
off = dl->file_size - 1;
168+
off = MIN(off, dl->file_size - 1);
170169
}
171170

172171
len = snprintf(dl->cfg.buf, dl->cfg.buf_size, HTTP_GET_RANGE, dl->file,
@@ -440,22 +439,22 @@ static int http_parse(struct downloader *dl, size_t len)
440439
}
441440
}
442441

443-
/* Have we received a whole fragment or the whole file? */
444-
if (dl->progress + len != dl->file_size) {
445-
if (http->ranged) {
446-
http->ranged_progress += len;
447-
if (http->ranged_progress < dl->host_cfg.range_override) {
448-
/* Ranged query: read until a full fragment */
449-
return len;
450-
}
442+
if (dl->progress + len == dl->file_size) {
443+
/* A full file has been received */
444+
http->new_data_req = true;
445+
return len;
446+
}
447+
448+
if (http->ranged) {
449+
http->ranged_progress += len;
450+
if (http->ranged_progress < dl->host_cfg.range_override) {
451+
/* Ranged query: read until a full fragment is received */
451452
} else {
452-
/* Non-ranged query: just keep on reading, ignore fragment size */
453-
return len;
453+
/* Ranged query: request next fragment */
454+
http->new_data_req = true;
454455
}
455456
}
456457

457-
/* Either we have a full file, or we need to request a next fragment */
458-
http->new_data_req = true;
459458
return len;
460459
}
461460

0 commit comments

Comments
 (0)