ECS 36b Homework #7 (programming/final, 20%)
Forthishomework,youwillbuildthreeC++programs,h w7update,hw7search,andhw7validate.Thesethreeare all client programs, based on the following JSON RPC specification: http://cyrus.cs.ucdavis.edu/sfelixwu/ecs36b/s2020/ecs36b_hw7.json, which includes three RPC calls,
1. update(std::string post_json_str)
2. search(std::string keyword)
3. validate(std::string post_json_str)
update and search are similar to those two in hw#6 except for the handling of history records, while the new function validate is only for the purpose of validating whether the Post has satisfied the required criteria.
The http url to access the RPC server is http://169.237.6.102:55407 The format of the history records and examples are provided in –
http://cyrus.cs.ucdavis.edu/sfelixwu/ecs36b/s2020/ecs36b_s2020_L016.ppt
Please note that it is your responsibility to update posts, with chosen keywords, to the RPC server. In order to allow other students to know how to search, you should leverage Facebook, Discord, or any other platform to inform others regarding what keywords to use.
Bonus points: (Blackbox testing) 1% for each first identified vulnerability or bug of the server implementation, by June 15t h.
Please follow the steps on CSIF:
● Create a subdirectory ecs36b_s2020, and then cd ecs36b_s2020.
● Create a subdirectory hw6, and then cd hw7.
● Copy all your files (*.cpp, *.h, Makefile, and 10 validated Post JSONs) into the hw7 directory
● cd..
● tar zcvf hw7_submission.tar.gz hw7
● handincs36bhw7hw7_submission.tar.gz