comform to spec. The code is very ugly. I will never merge it
it turns out that the whole lfn is not overwritten, so skipstrcmp is useless