tftp: do not show progress bar if we get error right away. +13 bytes
Signed-off-by: Denys Vlasenko <vda.linux@googlemail.com>
This commit is contained in:
parent
4b1100edd8
commit
cbcc1236f8
@ -1490,6 +1490,7 @@ typedef struct bb_progress_t {
|
|||||||
off_t lastsize;
|
off_t lastsize;
|
||||||
unsigned lastupdate_sec;
|
unsigned lastupdate_sec;
|
||||||
unsigned start_sec;
|
unsigned start_sec;
|
||||||
|
smallint inited;
|
||||||
} bb_progress_t;
|
} bb_progress_t;
|
||||||
|
|
||||||
void bb_progress_init(bb_progress_t *p) FAST_FUNC;
|
void bb_progress_init(bb_progress_t *p) FAST_FUNC;
|
||||||
|
@ -57,6 +57,7 @@ void FAST_FUNC bb_progress_init(bb_progress_t *p)
|
|||||||
p->start_sec = monotonic_sec();
|
p->start_sec = monotonic_sec();
|
||||||
p->lastupdate_sec = p->start_sec;
|
p->lastupdate_sec = p->start_sec;
|
||||||
p->lastsize = 0;
|
p->lastsize = 0;
|
||||||
|
p->inited = 1;
|
||||||
}
|
}
|
||||||
|
|
||||||
void FAST_FUNC bb_progress_update(bb_progress_t *p,
|
void FAST_FUNC bb_progress_update(bb_progress_t *p,
|
||||||
|
@ -860,7 +860,7 @@ config TFTPD
|
|||||||
or from udpsvd. Example: "udpsvd -E 0 69 tftpd DIR"
|
or from udpsvd. Example: "udpsvd -E 0 69 tftpd DIR"
|
||||||
|
|
||||||
config FEATURE_TFTP_GET
|
config FEATURE_TFTP_GET
|
||||||
bool "Enable \"get\" command"
|
bool "Enable 'tftp get' and/or tftpd upload code"
|
||||||
default y
|
default y
|
||||||
depends on TFTP || TFTPD
|
depends on TFTP || TFTPD
|
||||||
help
|
help
|
||||||
@ -868,8 +868,11 @@ config FEATURE_TFTP_GET
|
|||||||
a client to retrieve a file from a TFTP server.
|
a client to retrieve a file from a TFTP server.
|
||||||
Also enable upload support in tftpd, if tftpd is selected.
|
Also enable upload support in tftpd, if tftpd is selected.
|
||||||
|
|
||||||
|
Note: this option does _not_ make tftpd capable of download
|
||||||
|
(the usual operation people need from it)!
|
||||||
|
|
||||||
config FEATURE_TFTP_PUT
|
config FEATURE_TFTP_PUT
|
||||||
bool "Enable \"put\" command"
|
bool "Enable 'tftp put' and/or tftpd download code"
|
||||||
default y
|
default y
|
||||||
depends on TFTP || TFTPD
|
depends on TFTP || TFTPD
|
||||||
help
|
help
|
||||||
|
@ -376,11 +376,6 @@ static int process_packet(struct dns_entry *conf_data,
|
|||||||
/* QR = 1 "response", RCODE = 4 "Not Implemented" */
|
/* QR = 1 "response", RCODE = 4 "Not Implemented" */
|
||||||
outr_flags = htons(0x8000 | 4);
|
outr_flags = htons(0x8000 | 4);
|
||||||
err_msg = NULL;
|
err_msg = NULL;
|
||||||
/* OPCODE != 0 "standard query" ? */
|
|
||||||
if ((head->flags & htons(0x7800)) != 0) {
|
|
||||||
err_msg = "opcode != 0";
|
|
||||||
goto empty_packet;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* start of query string */
|
/* start of query string */
|
||||||
query_string = (void *)(head + 1);
|
query_string = (void *)(head + 1);
|
||||||
@ -392,6 +387,11 @@ static int process_packet(struct dns_entry *conf_data,
|
|||||||
/* where to append answer block */
|
/* where to append answer block */
|
||||||
answb = (void *)(unaligned_type_class + 1);
|
answb = (void *)(unaligned_type_class + 1);
|
||||||
|
|
||||||
|
/* OPCODE != 0 "standard query"? */
|
||||||
|
if ((head->flags & htons(0x7800)) != 0) {
|
||||||
|
err_msg = "opcode != 0";
|
||||||
|
goto empty_packet;
|
||||||
|
}
|
||||||
move_from_unaligned16(class, &unaligned_type_class->class);
|
move_from_unaligned16(class, &unaligned_type_class->class);
|
||||||
if (class != htons(1)) { /* not class INET? */
|
if (class != htons(1)) { /* not class INET? */
|
||||||
err_msg = "class != 1";
|
err_msg = "class != 1";
|
||||||
|
@ -135,7 +135,8 @@ static void tftp_progress_init(void)
|
|||||||
}
|
}
|
||||||
static void tftp_progress_done(void)
|
static void tftp_progress_done(void)
|
||||||
{
|
{
|
||||||
progress_meter(0);
|
if (G.pmt.inited)
|
||||||
|
progress_meter(0);
|
||||||
}
|
}
|
||||||
#else
|
#else
|
||||||
# define tftp_progress_init() ((void)0)
|
# define tftp_progress_init() ((void)0)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user