Click here to Skip to main content
15,915,600 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



 
GeneralBoth library function writer and caller should validate all input data independently Pin
ed welch17-Feb-03 1:58
ed welch17-Feb-03 1:58 
GeneralRe: Both library function writer and caller should validate all input data independently Pin
fantastic_mr_fox17-Feb-03 2:12
fantastic_mr_fox17-Feb-03 2:12 
GeneralRe: Both library function writer and caller should validate all input data independently Pin
ed welch17-Feb-03 2:56
ed welch17-Feb-03 2:56 
GeneralRe: Both library function writer and caller should validate all input data independently Pin
Pit M.20-Feb-03 20:33
Pit M.20-Feb-03 20:33 
GeneralRe: Both library function writer and caller should validate all input data independently Pin
chifor20-Feb-03 21:54
chifor20-Feb-03 21:54 
GeneralData validation Pin
Anders Dalvander16-Feb-03 20:14
Anders Dalvander16-Feb-03 20:14 
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 
True, robustness doesn't come hand in hand with the assumption that the caller will always be passing good data.

Robustness is not always what you are looking for. In operating systems, yes. In games, not always, especially if it hurts the FPS and the rendering quality.

If the caller will send erronious data to a function, it will be the callers fault if the program crashes. The callee could do anything in its power to prevent it, but still, it would be the caller's fault that the program crashed. Ever called delete on a pointer that you already have deleted, what happend then?

Open Source software could help this by doing asserts (and similar things in debug builds) to notify the programmer that he/she did something wrong. But in release builds of a game, these checks would hurt the FPS.

It all depends on what you are developing.
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 
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 

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.