comparison dbutil.c @ 753:d63ef1e211ea

Take transmit and receive keys into use separately
author Matt Johnston <matt@ucc.asn.au>
date Thu, 04 Apr 2013 00:18:50 +0800
parents 9a5438271556
children 7dcb46da72d9 a625f9e135a4
comparison
equal deleted inserted replaced
752:24172f555f9c 753:d63ef1e211ea
136 } 136 }
137 137
138 138
139 #ifdef DEBUG_TRACE 139 #ifdef DEBUG_TRACE
140 void dropbear_trace(const char* format, ...) { 140 void dropbear_trace(const char* format, ...) {
141
142 va_list param; 141 va_list param;
142 struct timeval tv;
143 143
144 if (!debug_trace) { 144 if (!debug_trace) {
145 return; 145 return;
146 } 146 }
147 147
148 gettimeofday(&tv, NULL);
149
148 va_start(param, format); 150 va_start(param, format);
149 fprintf(stderr, "TRACE (%d): ", getpid()); 151 fprintf(stderr, "TRACE (%d) %d.%d: ", getpid(), tv.tv_sec, tv.tv_usec);
150 vfprintf(stderr, format, param); 152 vfprintf(stderr, format, param);
151 fprintf(stderr, "\n"); 153 fprintf(stderr, "\n");
152 va_end(param); 154 va_end(param);
153 } 155 }
156
154 void dropbear_trace2(const char* format, ...) { 157 void dropbear_trace2(const char* format, ...) {
155 158 static int trace_env = -1;
156 va_list param; 159 va_list param;
157 160 struct timeval tv;
158 if (!(debug_trace && getenv("DROPBEAR_TRACE2"))) { 161
162 if (trace_env == -1) {
163 trace_env = getenv("DROPBEAR_TRACE2") ? 1 : 0;
164 }
165
166 if (!(debug_trace && trace_env)) {
159 return; 167 return;
160 } 168 }
161 169
170 gettimeofday(&tv, NULL);
171
162 va_start(param, format); 172 va_start(param, format);
163 fprintf(stderr, "TRACE2 (%d): ", getpid()); 173 fprintf(stderr, "TRACE2 (%d) %d.%d: ", getpid(), tv.tv_sec, tv.tv_usec);
164 vfprintf(stderr, format, param); 174 vfprintf(stderr, format, param);
165 fprintf(stderr, "\n"); 175 fprintf(stderr, "\n");
166 va_end(param); 176 va_end(param);
167 } 177 }
168 #endif /* DEBUG_TRACE */ 178 #endif /* DEBUG_TRACE */
737 #if defined(DROPBEAR_CLIENT) || defined(ENABLE_SVR_PUBKEY_AUTH) 747 #if defined(DROPBEAR_CLIENT) || defined(ENABLE_SVR_PUBKEY_AUTH)
738 int buf_getline(buffer * line, FILE * authfile) { 748 int buf_getline(buffer * line, FILE * authfile) {
739 749
740 int c = EOF; 750 int c = EOF;
741 751
742 TRACE2(("enter buf_getline"))
743
744 buf_setpos(line, 0); 752 buf_setpos(line, 0);
745 buf_setlen(line, 0); 753 buf_setlen(line, 0);
746 754
747 while (line->pos < line->size) { 755 while (line->pos < line->size) {
748 756
762 out: 770 out:
763 771
764 772
765 /* if we didn't read anything before EOF or error, exit */ 773 /* if we didn't read anything before EOF or error, exit */
766 if (c == EOF && line->pos == 0) { 774 if (c == EOF && line->pos == 0) {
767 TRACE2(("leave buf_getline: failure"))
768 return DROPBEAR_FAILURE; 775 return DROPBEAR_FAILURE;
769 } else { 776 } else {
770 TRACE2(("leave buf_getline: success"))
771 buf_setpos(line, 0); 777 buf_setpos(line, 0);
772 return DROPBEAR_SUCCESS; 778 return DROPBEAR_SUCCESS;
773 } 779 }
774 780
775 } 781 }