ntlm message - pvv.org
TRANSCRIPT
![Page 1: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/1.jpg)
ntlm_message.hpp
bad name for an include guard
include <stdint.h>
virtual destructor
seek tool support, eg use syntax highlighting
how useful is this?
![Page 2: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/2.jpg)
type1_message.hpp
order of public/private explicit
repeat the virtual specifier
const?
do not _prefix
not needed
![Page 3: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/3.jpg)
type1_message.cpp
use initializer list
avoid magic numbers
should be a const member
does not improve readability
do not open a namespace here
use size_t
is this useful?
![Page 4: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/4.jpg)
type2_message.hpp
never do this
use const &
"checked" exceptions?
const
![Page 5: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/5.jpg)
type2_message.cpp (1/2)
...
include order is not optimal
![Page 6: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/6.jpg)
type2_message.cpp (2/2)... const ref
"checked" exceptions?
std::size_t
use robust layout
no need for parentheses here
![Page 7: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/7.jpg)
type3_message.hpp
this is fragile code layout
not needed
is it used?
use <iosfwd> instead
star wars
![Page 8: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/8.jpg)
type3_message.cpp (1/4)
...
consider alphabetical ordering
![Page 9: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/9.jpg)
type3_message.cpp (2/4)
...
...
anonymous namespace
what about initializing domain_ and workstation_?
wrong order of initialization
space after keywords new?
![Page 10: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/10.jpg)
type3_message.cpp (3/4)
...
...
use assignment syntax instead
remove parenthesis
anonymous namespace
![Page 11: ntlm message - pvv.org](https://reader031.vdocuments.us/reader031/viewer/2022012020/616888ccd394e9041f705374/html5/thumbnails/11.jpg)
type3_message.cpp (4/4)
...
do you want to flush the stream?
don't mess with borrowed things
perhaps return a string instead?