if(webkitpdf.opt_cookies != null) {
print("setting cookie %s\n",webkitpdf.opt_cookies);
- var cookie_jar = new Soup.CookieJar();
-
var uri = new Soup.URI (blog);
string[] cookies = webkitpdf.opt_cookies.split ("=", 2);
if(cookies.length >=2 ) {
#if GTK3
var context = WebKit.WebContext.get_default();
- var cookie_manager = context.get_cookie_manager();
+ var cookie_manager = context.get_cookie_manager();
+ cookie_manager.set_accept_policy(WebKit.CookieAcceptPolicy.ALWAYS);
+ string scheme = uri.get_scheme ();
+ var ssl = "FALSE";
+ if (scheme=="https") {
+ ssl="TRUE";
+ }
+ try {
+ File file = File.new_for_path(GLib.Environment.get_user_cache_dir() + "/cookie.txt" );
+ print("setting cookie file%s\n",file.get_path());
+ FileOutputStream ostream = file.replace (null, false, FileCreateFlags.NONE);
+ DataOutputStream dostream = new DataOutputStream (ostream);
+
+ dostream.put_string (uri.get_host() + "\tTRUE\t/\t"+ssl+"\t2147483647\t" + cookies[0] + "\t" + cookies[1] );
+ cookie_manager.set_persistent_storage(file.get_path(), WebKit.CookiePersistentStorage.TEXT);
+ } catch (Error e) {
+ stdout.printf ("Error: %s\n", e.message);
+ }
#else
- var sess = WebKit.get_default_session();
+ var sess = WebKit.get_default_session();
+ var cookie_jar = new Soup.CookieJar();
cookie_jar.set_accept_policy(Soup.CookieJarAcceptPolicy.ALWAYS);
cookie_jar.add_cookie(new Soup.Cookie (cookies[0], cookies[1], uri.get_host(), "/", -1));
sess.add_feature(cookie_jar);