aboutsummaryrefslogtreecommitdiff
path: root/src/fs/fs_getopt.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/fs/fs_getopt.c')
-rw-r--r--src/fs/fs_getopt.c31
1 files changed, 24 insertions, 7 deletions
diff --git a/src/fs/fs_getopt.c b/src/fs/fs_getopt.c
index a0d232641..f985ed8d0 100644
--- a/src/fs/fs_getopt.c
+++ b/src/fs/fs_getopt.c
@@ -131,7 +131,7 @@ GNUNET_FS_getopt_set_metadata (struct GNUNET_GETOPT_CommandLineProcessorContext*
131 131
132{ 132{
133 struct GNUNET_CONTAINER_MetaData **mm = scls; 133 struct GNUNET_CONTAINER_MetaData **mm = scls;
134 EXTRACTOR_KeywordType type; 134 enum EXTRACTOR_MetaType type;
135 const char *typename; 135 const char *typename;
136 const char *typename_i18n; 136 const char *typename_i18n;
137 struct GNUNET_CONTAINER_MetaData *meta; 137 struct GNUNET_CONTAINER_MetaData *meta;
@@ -151,17 +151,23 @@ GNUNET_FS_getopt_set_metadata (struct GNUNET_GETOPT_CommandLineProcessorContext*
151 "utf-8" 151 "utf-8"
152#endif 152#endif
153 ); 153 );
154 type = EXTRACTOR_getHighestKeywordTypeNumber (); 154 type = EXTRACTOR_metatype_get_max ();
155 while (type > 0) 155 while (type > 0)
156 { 156 {
157 type--; 157 type--;
158 typename = EXTRACTOR_getKeywordTypeAsString (type); 158 typename = EXTRACTOR_metatype_to_string (type);
159 typename_i18n = dgettext (LIBEXTRACTOR_GETTEXT_DOMAIN, typename); 159 typename_i18n = dgettext (LIBEXTRACTOR_GETTEXT_DOMAIN, typename);
160 if ((strlen (tmp) >= strlen (typename) + 1) && 160 if ((strlen (tmp) >= strlen (typename) + 1) &&
161 (tmp[strlen (typename)] == ':') && 161 (tmp[strlen (typename)] == ':') &&
162 (0 == strncmp (typename, tmp, strlen (typename)))) 162 (0 == strncmp (typename, tmp, strlen (typename))))
163 { 163 {
164 GNUNET_CONTAINER_meta_data_insert (meta, type, &tmp[strlen (typename) + 1]); 164 GNUNET_CONTAINER_meta_data_insert (meta,
165 "<gnunet>",
166 type,
167 EXTRACTOR_METAFORMAT_UTF8,
168 "text/plain",
169 &tmp[strlen (typename) + 1],
170 strlen (&tmp[strlen (typename) + 1])+1);
165 GNUNET_free (tmp); 171 GNUNET_free (tmp);
166 tmp = NULL; 172 tmp = NULL;
167 break; 173 break;
@@ -170,8 +176,13 @@ GNUNET_FS_getopt_set_metadata (struct GNUNET_GETOPT_CommandLineProcessorContext*
170 (tmp[strlen (typename_i18n)] == ':') && 176 (tmp[strlen (typename_i18n)] == ':') &&
171 (0 == strncmp (typename_i18n, tmp, strlen (typename_i18n)))) 177 (0 == strncmp (typename_i18n, tmp, strlen (typename_i18n))))
172 { 178 {
173 GNUNET_CONTAINER_meta_data_insert (meta, type, 179 GNUNET_CONTAINER_meta_data_insert (meta,
174 &tmp[strlen (typename_i18n) + 1]); 180 "<gnunet>",
181 type,
182 EXTRACTOR_METAFORMAT_UTF8,
183 "text/plain",
184 &tmp[strlen (typename_i18n) + 1],
185 strlen (&tmp[strlen (typename_i18n) + 1]) + 1);
175 GNUNET_free (tmp); 186 GNUNET_free (tmp);
176 tmp = NULL; 187 tmp = NULL;
177 break; 188 break;
@@ -179,7 +190,13 @@ GNUNET_FS_getopt_set_metadata (struct GNUNET_GETOPT_CommandLineProcessorContext*
179 } 190 }
180 if (tmp != NULL) 191 if (tmp != NULL)
181 { 192 {
182 GNUNET_CONTAINER_meta_data_insert (meta, EXTRACTOR_UNKNOWN, tmp); 193 GNUNET_CONTAINER_meta_data_insert (meta,
194 "<gnunet>",
195 EXTRACTOR_METATYPE_UNKNOWN,
196 EXTRACTOR_METAFORMAT_UTF8,
197 "text/plain",
198 tmp,
199 strlen(tmp) + 1);
183 GNUNET_free (tmp); 200 GNUNET_free (tmp);
184 printf (_ 201 printf (_
185 ("Unknown metadata type in metadata option `%s'. Using metadata type `unknown' instead.\n"), 202 ("Unknown metadata type in metadata option `%s'. Using metadata type `unknown' instead.\n"),