C problems and solutions validating
Because we assume that you are a C or C programmer, we won't insult your intelligence by explaining buffer overflows to you.If you do not already understand the concept, you can consult many other software security books, including . You need to detect if the text contained in each of the lines represents an (a)IPv4 address (b)IPv6 address or (c)None of these. IPv6, with 128 bits was developed to permit the expansion of the address space.IPv4 was the first publicly used Internet Protocol which used 4 byte addresses which permitted for 2 addresses. To quote from the linked article: The 128 bits of an IPv6 address are represented in 8 groups of 16 bits each.The risks increase even more dramatically when user-controlled data is on the program stack (i.e., is a local variable).There are many solutions to this problem, but none that are satisfying in every situation.Instead, we'll focus on state of the art strategies for mitigating these problems.
Other resources can help you understand that if you're insatiably curious.
More importantly, can any untrusted data be used to manipulate the application or the underlying system in a way that has security implications?
" C and C do not perform array-bounds checking, which turns out to be a security-critical issue, particularly in handling strings.
The address 2001:0db00:ff29 is an example of this representation.
Consecutive sections of zeros will be left as they are.