Secure Coding in C and C++
, by Seacord, Robert C.- ISBN: 9780321335722 | 0321335724
- Cover: Paperback
- Copyright: 9/9/2005
Robert Seacord began programming (professionally) for IBM in 1982 and has been programming in C since 1985, and in C++ since 1992. Robert is currently a Senior Vulnerability Analyst with the CERT/Coordination Center at the Software Engineering Institute (SEI). He is coauthor of Building Systems from Commercial Components (Addison-Wesley, 2002) and Modernizing Legacy Systems (Addison-Wesley, 2003). The CERT/CC, among other security-related activities, regularly analyzes software vulnerability reports and assesses the risk to the Internet and other critical infrastructure.
Foreword | xiii | ||||
Preface | xvii | ||||
About the Author | xxiii | ||||
Chapter 1 Running with Scissors | 1 | (24) | |||
|
4 | (6) | |||
|
5 | (1) | |||
|
6 | (3) | |||
|
9 | (1) | |||
|
10 | (6) | |||
|
12 | (1) | |||
|
12 | (1) | |||
|
13 | (1) | |||
|
14 | (1) | |||
|
15 | (1) | |||
|
16 | (3) | |||
|
16 | (1) | |||
|
17 | (1) | |||
|
18 | (1) | |||
|
19 | (1) | |||
|
19 | (4) | |||
|
20 | (1) | |||
|
21 | (2) | |||
|
23 | (1) | |||
|
24 | (1) | |||
Chapter 2 Strings | 25 | (52) | |||
|
25 | (2) | |||
|
26 | (1) | |||
|
27 | (6) | |||
|
27 | (2) | |||
|
29 | (2) | |||
|
31 | (1) | |||
|
32 | (1) | |||
|
32 | (1) | |||
|
33 | (3) | |||
|
34 | (1) | |||
|
35 | (1) | |||
|
36 | (4) | |||
|
37 | (3) | |||
|
40 | (4) | |||
|
44 | (4) | |||
|
48 | (3) | |||
|
51 | (21) | |||
|
51 | (13) | |||
|
64 | (3) | |||
|
67 | (5) | |||
|
72 | (2) | |||
|
72 | (1) | |||
|
72 | (1) | |||
|
73 | (1) | |||
|
74 | (1) | |||
|
75 | (2) | |||
Chapter 3 Pointer Subterfuge | 77 | (20) | |||
|
78 | (1) | |||
|
78 | (2) | |||
|
80 | (1) | |||
|
81 | (2) | |||
|
83 | (1) | |||
|
84 | (3) | |||
|
87 | (1) | |||
|
88 | (2) | |||
|
90 | (2) | |||
|
92 | (3) | |||
|
92 | (2) | |||
|
94 | (1) | |||
|
95 | (1) | |||
|
95 | (1) | |||
|
95 | (1) | |||
|
96 | (1) | |||
|
96 | (1) | |||
Chapter 4 Dynamic Memory Management | 97 | (54) | |||
|
98 | (2) | |||
|
100 | (7) | |||
|
100 | (2) | |||
|
102 | (2) | |||
|
104 | (1) | |||
|
104 | (2) | |||
|
106 | (1) | |||
|
106 | (1) | |||
|
107 | (1) | |||
|
107 | (13) | |||
|
108 | (3) | |||
|
111 | (6) | |||
|
117 | (3) | |||
|
120 | (1) | |||
|
120 | (18) | |||
|
120 | (3) | |||
|
123 | (3) | |||
|
126 | (3) | |||
|
129 | (4) | |||
|
133 | (1) | |||
|
134 | (3) | |||
|
137 | (1) | |||
|
138 | (8) | |||
|
138 | (1) | |||
|
138 | (1) | |||
|
139 | (1) | |||
|
140 | (1) | |||
|
141 | (1) | |||
|
142 | (1) | |||
|
142 | (1) | |||
|
143 | (2) | |||
|
145 | (1) | |||
|
146 | (3) | |||
|
147 | (1) | |||
|
147 | (1) | |||
|
148 | (1) | |||
|
149 | (1) | |||
|
149 | (1) | |||
|
149 | (2) | |||
Chapter 5 Integer Security | 151 | (52) | |||
|
152 | (7) | |||
|
152 | (1) | |||
|
153 | (4) | |||
|
157 | (2) | |||
|
159 | (5) | |||
|
159 | (1) | |||
|
160 | (1) | |||
|
161 | (1) | |||
|
161 | (1) | |||
|
162 | (2) | |||
|
164 | (1) | |||
|
164 | (3) | |||
|
164 | (2) | |||
|
166 | (1) | |||
|
167 | (1) | |||
|
167 | (14) | |||
|
169 | (3) | |||
|
172 | (2) | |||
|
174 | (3) | |||
|
177 | (4) | |||
|
181 | (5) | |||
|
182 | (1) | |||
|
183 | (1) | |||
|
184 | (2) | |||
|
186 | (1) | |||
|
187 | (10) | |||
|
188 | (1) | |||
|
189 | (1) | |||
|
190 | (1) | |||
|
191 | (5) | |||
|
196 | (1) | |||
|
196 | (1) | |||
|
197 | (1) | |||
|
197 | (3) | |||
|
197 | (1) | |||
|
198 | (1) | |||
|
199 | (1) | |||
|
200 | (1) | |||
|
201 | (2) | |||
Chapter 6 Formatted Output | 203 | (44) | |||
|
204 | (4) | |||
|
205 | (3) | |||
|
208 | (1) | |||
|
208 | (5) | |||
|
209 | (2) | |||
|
211 | (1) | |||
|
212 | (1) | |||
|
213 | (12) | |||
|
214 | (1) | |||
|
215 | (1) | |||
|
216 | (1) | |||
|
216 | (2) | |||
|
218 | (2) | |||
|
220 | (4) | |||
|
224 | (1) | |||
|
225 | (6) | |||
|
226 | (1) | |||
|
227 | (1) | |||
|
227 | (4) | |||
|
231 | (11) | |||
|
231 | (1) | |||
|
232 | (1) | |||
|
233 | (1) | |||
|
234 | (1) | |||
|
234 | (2) | |||
|
236 | (1) | |||
|
236 | (1) | |||
|
237 | (1) | |||
|
237 | (2) | |||
|
239 | (1) | |||
|
240 | (1) | |||
|
241 | (1) | |||
|
241 | (1) | |||
|
242 | (1) | |||
|
242 | (1) | |||
|
243 | (1) | |||
|
243 | (2) | |||
|
245 | (2) | |||
Chapter 7 File I/O | 247 | (28) | |||
|
247 | (3) | |||
|
248 | (1) | |||
|
248 | (2) | |||
|
250 | (2) | |||
|
252 | (2) | |||
|
254 | (8) | |||
|
255 | (2) | |||
|
257 | (3) | |||
|
260 | (1) | |||
|
261 | (1) | |||
|
261 | (1) | |||
|
262 | (10) | |||
|
262 | (4) | |||
|
266 | (3) | |||
|
269 | (2) | |||
|
271 | (1) | |||
|
272 | (3) | |||
Chapter 8 Recommended Practices | 275 | (34) | |||
|
277 | (5) | |||
|
278 | (1) | |||
|
278 | (1) | |||
|
278 | (1) | |||
|
279 | (1) | |||
|
279 | (1) | |||
|
279 | (2) | |||
|
281 | (1) | |||
|
281 | (1) | |||
|
282 | (1) | |||
|
283 | (1) | |||
|
284 | (2) | |||
|
286 | (2) | |||
|
288 | (2) | |||
|
288 | (1) | |||
|
289 | (1) | |||
|
290 | (1) | |||
|
291 | (1) | |||
|
292 | (3) | |||
|
293 | (1) | |||
|
294 | (1) | |||
|
294 | (1) | |||
|
295 | (3) | |||
|
296 | (1) | |||
|
297 | (1) | |||
|
297 | (1) | |||
|
298 | (1) | |||
|
298 | (4) | |||
|
299 | (1) | |||
|
299 | (1) | |||
|
300 | (1) | |||
|
300 | (1) | |||
|
301 | (1) | |||
|
302 | (2) | |||
|
302 | (1) | |||
|
303 | (1) | |||
|
303 | (1) | |||
|
304 | (1) | |||
|
304 | (3) | |||
|
305 | (1) | |||
|
306 | (1) | |||
|
307 | (1) | |||
|
308 | (1) | |||
References | 309 | (14) | |||
Acronyms | 323 | (6) | |||
Index | 329 |
The New copy of this book will include any supplemental materials advertised. Please check the title of the book to determine if it should include any access cards, study guides, lab manuals, CDs, etc.
The Used, Rental and eBook copies of this book are not guaranteed to include any supplemental materials. Typically, only the book itself is included. This is true even if the title states it includes any access cards, study guides, lab manuals, CDs, etc.
Digital License
You are licensing a digital product for a set duration. Durations are set forth in the product description, with "Lifetime" typically meaning five (5) years of online access and permanent download to a supported device. All licenses are non-transferable.
More details can be found here.