1 #ifndef CLIENT_MY_READLINE_INCLUDED 2 #define CLIENT_MY_READLINE_INCLUDED 3 4 /* 5 Copyright (c) 2000, 2011, Oracle and/or its affiliates 6 7 This program is free software; you can redistribute it and/or modify 8 it under the terms of the GNU General Public License as published by 9 the Free Software Foundation; version 2 of the License. 10 11 This program is distributed in the hope that it will be useful, 12 but WITHOUT ANY WARRANTY; without even the implied warranty of 13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14 GNU General Public License for more details. 15 16 You should have received a copy of the GNU General Public License 17 along with this program; if not, write to the Free Software 18 Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1335 USA 19 */ 20 21 /* readline for batch mode */ 22 23 typedef struct st_line_buffer 24 { 25 File file; 26 char *buffer; /* The buffer itself, grown as needed. */ 27 char *end; /* Pointer at buffer end */ 28 char *start_of_line,*end_of_line; 29 uint bufread; /* Number of bytes to get with each read(). */ 30 uint eof; 31 ulong max_size; 32 ulong read_length; /* Length of last read string */ 33 int error; 34 bool truncated; 35 } LINE_BUFFER; 36 37 extern LINE_BUFFER *batch_readline_init(ulong max_size,FILE *file); 38 extern LINE_BUFFER *batch_readline_command(LINE_BUFFER *buffer, char * str); 39 extern char *batch_readline(LINE_BUFFER *buffer, bool binary_mode); 40 extern void batch_readline_end(LINE_BUFFER *buffer); 41 42 #endif /* CLIENT_MY_READLINE_INCLUDED */ 43