aboutsummaryrefslogtreecommitdiffstats
path: root/core/fs/pxe/url.h
diff options
context:
space:
mode:
Diffstat (limited to 'core/fs/pxe/url.h')
-rw-r--r--core/fs/pxe/url.h13
1 files changed, 9 insertions, 4 deletions
diff --git a/core/fs/pxe/url.h b/core/fs/pxe/url.h
index baea2b70..53984f3a 100644
--- a/core/fs/pxe/url.h
+++ b/core/fs/pxe/url.h
@@ -5,10 +5,13 @@
#ifndef CORE_PXE_URL_H
#define CORE_PXE_URL_H
+#include <stddef.h>
+#include <stdint.h>
+
enum url_type {
- URL_NORMAL,
- URL_OLD_TFTP,
- URL_PREFIX
+ URL_NORMAL, /* It is a full URL */
+ URL_OLD_TFTP, /* It's a ::-style TFTP path */
+ URL_SUFFIX /* Prepend the pathname prefix */
};
struct url_info {
@@ -16,13 +19,15 @@ struct url_info {
char *user;
char *passwd;
char *host;
+ uint32_t ip; /* Placeholder field not set by parse_url() */
unsigned int port;
char *path; /* Includes query */
enum url_type type;
};
+enum url_type url_type(const char *url);
void parse_url(struct url_info *ui, char *url);
-char *url_escape_unsafe(const char *input);
+size_t url_escape_unsafe(char *output, const char *input, size_t bufsize);
char *url_unescape(char *buffer, char terminator);
#endif /* CORE_PXE_URL_H */