Lines Matching refs:uri
1 /* $NetBSD: uri.c,v 1.5 2026/07/18 04:32:38 mlelstv Exp $ */
35 #include "uri.h"
53 split_uri(const char *uri, uriparts_t *parts)
57 parts->buf = uri;
64 colon = strchr(uri, ':');
65 slash = strchr(uri, '/');
66 if (colon && (slash == NULL || (colon - uri) < (slash - uri))) {
67 parts->scheme = colon + 1 - uri;
68 uri = colon + 1;
71 if (uri[0] == '/' && uri[1] == '/') {
72 slash = strchr(uri + 2, '/');
74 parts->authority = strlen(uri);
77 parts->authority = slash - uri;
78 uri = slash;
81 query = strchr(uri, '?');
82 sharp = strchr(uri, '#');
83 if (query && (sharp == NULL || (query - uri) < (sharp - uri))) {
84 parts->path = query - uri;
85 uri = query;
96 parts->path = sharp - uri;
101 parts->path = strlen(uri);