Lines Matching refs:uc
78 URLContext *uc;
95 uc = av_mallocz(sizeof(URLContext) + strlen(filename) + 1);
96 if (!uc) {
100 uc->av_class = &ffurl_context_class;
101 uc->filename = (char *)&uc[1];
102 strcpy(uc->filename, filename);
103 uc->prot = up;
104 uc->flags = flags;
105 uc->is_streamed = 0; /* default = not streamed */
106 uc->max_packet_size = 0; /* default: stream file */
108 uc->priv_data = av_mallocz(up->priv_data_size);
109 if (!uc->priv_data) {
115 *(const AVClass **)uc->priv_data = up->priv_data_class;
116 av_opt_set_defaults(uc->priv_data);
117 if (av_strstart(uc->filename, up->name, (const char**)&start) && *start == ',') {
132 ret= av_opt_set(uc->priv_data, p, key+1, 0);
134 av_log(uc, AV_LOG_ERROR, "Key '%s' not found.\n", p);
139 av_log(uc, AV_LOG_ERROR, "Error parsing options string %s\n", start);
140 av_freep(&uc->priv_data);
141 av_freep(&uc);
150 uc->interrupt_callback = *int_cb;
152 *puc = uc;
156 if (uc)
157 av_freep(&uc->priv_data);
158 av_freep(&uc);
166 int ffurl_connect(URLContext *uc, AVDictionary **options)
177 (uc->protocol_whitelist && !strcmp(uc->protocol_whitelist, e->value)));
179 (uc->protocol_blacklist && !strcmp(uc->protocol_blacklist, e->value)));
181 if (uc->protocol_whitelist && av_match_list(uc->prot->name, uc->protocol_whitelist, ',') <= 0) {
182 av_log(uc, AV_LOG_ERROR, "Protocol '%s' not on whitelist '%s'!\n", uc->prot->name, uc->protocol_whitelist);
186 if (uc->protocol_blacklist && av_match_list(uc->prot->name, uc->protocol_blacklist, ',') > 0) {
187 av_log(uc, AV_LOG_ERROR, "Protocol '%s' on blacklist '%s'!\n", uc->prot->name, uc->protocol_blacklist);
191 if (!uc->protocol_whitelist && uc->prot->default_whitelist) {
192 av_log(uc, AV_LOG_DEBUG, "Setting default whitelist '%s'\n", uc->prot->default_whitelist);
193 uc->protocol_whitelist = av_strdup(uc->prot->default_whitelist);
194 if (!uc->protocol_whitelist) {
197 } else if (!uc->protocol_whitelist)
198 av_log(uc, AV_LOG_DEBUG, "No default whitelist set\n"); // This should be an error once all declare a default whitelist
200 if ((err = av_dict_set(options, "protocol_whitelist", uc->protocol_whitelist, 0)) < 0)
202 if ((err = av_dict_set(options, "protocol_blacklist", uc->protocol_blacklist, 0)) < 0)
206 uc->prot->url_open2 ? uc->prot->url_open2(uc,
207 uc->filename,
208 uc->flags,
210 uc->prot->url_open(uc, uc->filename, uc->flags);
217 uc->is_connected = 1;
220 if ((uc->flags & AVIO_FLAG_WRITE) || !strcmp(uc->prot->name, "file"))
221 if (!uc->is_streamed && ffurl_seek(uc, 0, SEEK_SET) < 0)
222 uc->is_streamed = 1;