When I run ./server, it seems all working good. All files in root been opend correctly. But when I checking my code with Check50, it show me errors "TODO". It can be seen in the screenshot. What does that errors can mean?
"TODO" is not an error, it is the feedback from check50; it's the final message whether the test passes or fails. It is green for pass and red for fail. The more important information is the fact that the tests for cat.jpg and cat.html failed. Depending on how many other errors you received from check50/server2, these errors would indicate:
- abs_path is not built correctly in your parse function
- lookup is not returning the proper MIME type
- content/length are not built correctly in load
- some combination of the above
Since multiple tests fail, it's time to use gdb to help you narrow down the problem (find tips here). I suggest you set breaks at the function calls and evaluate the returned values, especially since pointers are the point. You values can look fine inside a function, but if the wrong value is returned to the caller, failures like this will occur.
If you get stuck on a particular function, post a new question about the specific function and specific problem. Good luck!