]> diplodocus.org Git - nmh/blobdiff - h/icalendar.h
lock_file.c: close(2) file descriptor on failure, avoiding leak.
[nmh] / h / icalendar.h
index a1a012286dcbe0848f10be70c017b2a8853a9899..0bedfdedcc19a8f5e9ca98e4472d84f5986e8a20 100644 (file)
@@ -1,5 +1,4 @@
-/*
- * icalendar.h -- data structures and common code for icalendar scanner,
+/* icalendar.h -- data structures and common code for icalendar scanner,
  *                parser, and application code
  *
  * This code is Copyright (c) 2014, by the authors of nmh.  See the
@@ -40,6 +39,7 @@ typedef struct contentline {
     char *input_line;          /* The (unfolded) input line. */
     size_t input_line_len;     /* Amount of text stored in input_line. */
     size_t input_line_size;    /* Size of allocated input_line. */
+    charstring_t unexpected;   /* Accumulate unexpected characters in input. */
 
     cr_indicator cr_before_lf; /* To support CR before LF.  If the first
                                   line of the input has a CR before its LF,
@@ -71,7 +71,7 @@ void add_param_name (contentline *, char *);
 void add_param_value (contentline *, char *);
 void remove_value (value_list *);
 struct contentline *find_contentline (contentline *, const char *,
-                                      const char *);
+                                      const char *) PURE;
 void free_contentlines (contentline *);
 
 typedef struct tzdesc *tzdesc_t;
@@ -93,12 +93,13 @@ extern int icaldebug;
 int icalparse (void);
 extern vevent vevents;
 int icallex (void);
+extern int parser_status;
 
 /* And this is for the icalendar scanner. */
 extern YYSTYPE icallval;
 
 /*
- * For directing the scanner to use files other than stdin/stdout.
+ * For directing the scanner to use files other than stdin/stdout.
  * These don't use the accessors provided by modern flex because
  * flex 2.5.4 doesn't supply them.
  */