{"schema":"libjg2-1",
"vpath":"/git/",
"avatar":"/git/avatar/",
"alang":"",
"gen_ut":1752652748,
"reponame":"libwebsockets",
"desc":"libwebsockets lightweight C networking library",
"owner": { "name": "Andy Green", "email": "andy@warmcat.com", "md5": "c50933ca2aa61e0fe2c43d46bb6b59cb" },"url":"https://libwebsockets.org/repo/libwebsockets",
"f":3,
"items": [
{"schema":"libjg2-1",
"cid":"f201d55fcc4b6264195801c1eb70078f",
"commit": {"type":"commit",
"time": 1522982283,
"time_ofs": 480,
"oid_tree": { "oid": "827a19fbec0a27683d5c28d58edc68bd18b02336", "alias": []},
"oid":{ "oid": "3a020c1eabb34922d370d1f2e66bf302584163c9", "alias": []},
"msg": "lws_filename_purify_inplace",
"sig_commit": { "git_time": { "time": 1522982283, "offset": 480 }, "name": "Andy Green", "email": "andy@warmcat.com", "md5": "c50933ca2aa61e0fe2c43d46bb6b59cb" },
"sig_author": { "git_time": { "time": 1522286921, "offset": 480 }, "name": "Andy Green", "email": "andy@warmcat.com", "md5": "c50933ca2aa61e0fe2c43d46bb6b59cb" }},
"body": "lws_filename_purify_inplace"
,
"diff": "diff --git a/lib/libwebsockets.c b/lib/libwebsockets.c\nindex e420eec..f7b9906 100644\n--- a/lib/libwebsockets.c\n+++ b/lib/libwebsockets.c\n@@ -2850,6 +2850,27 @@ lws_json_purify(char *escaped, const char *string, int len)\n \treturn escaped;\n }\n \n+LWS_VISIBLE LWS_EXTERN void\n+lws_filename_purify_inplace(char *filename)\n+{\n+\twhile (*filename) {\n+\n+\t\tif (*filename \u003d\u003d '.' \u0026\u0026 filename[1] \u003d\u003d '.') {\n+\t\t\t*filename \u003d '_';\n+\t\t\tfilename[1] \u003d '_';\n+\t\t}\n+\n+\t\tif (*filename \u003d\u003d ':' ||\n+\t\t *filename \u003d\u003d '/' ||\n+\t\t *filename \u003d\u003d '\u005c\u005c' ||\n+\t\t *filename \u003d\u003d '$' ||\n+\t\t *filename \u003d\u003d '%')\n+\t\t\t*filename \u003d '_';\n+\n+\t\tfilename++;\n+\t}\n+}\n+\n LWS_VISIBLE LWS_EXTERN const char *\n lws_urlencode(char *escaped, const char *string, int len)\n {\ndiff --git a/lib/libwebsockets.h b/lib/libwebsockets.h\nindex befbe15..a488a15 100644\n--- a/lib/libwebsockets.h\n+++ b/lib/libwebsockets.h\n@@ -4426,6 +4426,17 @@ lws_sql_purify(char *escaped, const char *string, int len);\n LWS_VISIBLE LWS_EXTERN const char *\n lws_json_purify(char *escaped, const char *string, int len);\n \n+/**\n+ * lws_filename_purify_inplace() - replace scary filename chars with underscore\n+ *\n+ * \u005cparam filename: filename to be purified\n+ *\n+ * Replace scary characters in the filename (it should not be a path)\n+ * with underscore, so it's safe to use.\n+ */\n+LWS_VISIBLE LWS_EXTERN void\n+lws_filename_purify_inplace(char *filename);\n+\n LWS_VISIBLE LWS_EXTERN int\n lws_plat_write_cert(struct lws_vhost *vhost, int is_key, int fd, void *buf,\n \t\t\tint len);\n","s":{"c":1752652748,"u": 7138}}
],"g": 8028,"chitpc": 0,"ehitpc": 0,"indexed":0
,
"ab": 0, "si": 0, "db":0, "di":0, "sat":0, "lfc": "0000"}