Click here to Skip to main content
15,900,973 members

Survey Results

Who should take responsibility for library function calls?   [Edit]

Survey period: 17 Feb 2003 to 23 Feb 2003

When a library function is called, who is responsible for ensuring that the input data will not cause a program to crash, or worse - be susceptible to a security hole?

OptionVotes% 
The programmer calling the function should ensure the supplied input data is valid.11210.82
The programmer who wrote the library function should ensure that all input data is valid.43341.84
Both library function writer and caller should validate all input data independently.44042.51
Neither - just use try...catch blocks to handle any problems.504.83



 
GeneralRe: Data validation Pin
Tim Smith17-Feb-03 8:08
Tim Smith17-Feb-03 8:08 
GeneralOpen Source Pin
Anders Dalvander17-Feb-03 8:51
Anders Dalvander17-Feb-03 8:51 
GeneralRe: Open Source Pin
Anders Dalvander17-Feb-03 9:07
Anders Dalvander17-Feb-03 9:07 
GeneralRe: Open Source Pin
#realJSOP18-Feb-03 2:21
professional#realJSOP18-Feb-03 2:21 
GeneralRe: Open Source Pin
Anders Dalvander18-Feb-03 2:39
Anders Dalvander18-Feb-03 2:39 
GeneralRe: Open Source Pin
#realJSOP18-Feb-03 3:42
professional#realJSOP18-Feb-03 3:42 
GeneralRe: Open Source Pin
Anders Dalvander18-Feb-03 5:16
Anders Dalvander18-Feb-03 5:16 
GeneralRe: Open Source Pin
Anonymous18-Feb-03 5:18
Anonymous18-Feb-03 5:18 
an ASSERT in a library function is a BAD DESIGN IDEA

An assert in the surface layer, yes. That is, any assert that checks inputs from the outside. Internal asserts are fine, even in a library.

Your debug version should work the same way as your release version.

Then why have a debug version?

Why are you hung up on the memory access functions?

Probably because, in the end, it's the only way to really validate a pointer (and even that's not foolproof) and it's slow. In the end, if someone passes you a pointer to the wrong thing, you can't really tell unless you put a signature on everything.
GeneralRe: Open Source Pin
Anders Dalvander18-Feb-03 7:19
Anders Dalvander18-Feb-03 7:19 
GeneralRe: Open Source Pin
Anders Dalvander18-Feb-03 5:34
Anders Dalvander18-Feb-03 5:34 
GeneralIt depends... Pin
Paul M Watt16-Feb-03 18:29
mentorPaul M Watt16-Feb-03 18:29 
GeneralRe: It depends... Pin
Jeff J16-Feb-03 21:39
Jeff J16-Feb-03 21:39 
GeneralRe: It depends... Pin
Navin17-Feb-03 7:56
Navin17-Feb-03 7:56 
GeneralAnd then...? Pin
Shog916-Feb-03 18:10
sitebuilderShog916-Feb-03 18:10 
GeneralRe: And then...? Pin
NormDroid17-Feb-03 3:07
professionalNormDroid17-Feb-03 3:07 
GeneralRe: And then...? Pin
Tim Smith17-Feb-03 8:06
Tim Smith17-Feb-03 8:06 
GeneralRe: And then...? Pin
#realJSOP18-Feb-03 2:18
professional#realJSOP18-Feb-03 2:18 
GeneralRe: And then...? Pin
bgiraya18-Feb-03 4:28
bgiraya18-Feb-03 4:28 
GeneralRe: And then...? Pin
Lunchy17-Feb-03 4:09
Lunchy17-Feb-03 4:09 
GeneralRe: And then...? Pin
Jon Taylor17-Feb-03 22:34
Jon Taylor17-Feb-03 22:34 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.