Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

These are rules and recommendations This appendix contains guidelines for functions that are defined as part of the POSIX family of standards but are not included in ISO/IEC 9899-1999the C Standard. These rules and recommendations are not part of the core standard because they do not apply in all C language applications and because they represent an incomplete listset. The intent of providing these rules guidelines is to demonstrate how rules and recommendations for other standards or specific implementations may be integrated with the core C99 C recommendations.

Recommendations

POS00-A. Avoid race conditions with multiple threads

POS01-A. Check for the existence of links

POS02-A. Limit access to the filesystem by creating a jail

Rules

POS30-C. Use the readlink() function properly

POS31-C. Do not unlock or destroy another thread's mutex

POS32-C. Include a mutex when using bit-fields in a multi-threaded environment

POS33-C. Do not use vfork()

POS34-C. Do not call putenv() with a pointer to an automatic variable as the argument

POS35-C. Avoid race conditions while checking for the existence of a symbolic link

Risk Assessment

Recommendation

Severity

Likelihood

Remediation Cost

Priority

Level

POS00-A

2 (medium)

2 (probable)

1 (high)

P4

L3

POS01-A

2 (medium)

3 (likely)

1 (high)

P6

L2

POS02-A

1 (low)

1 (unlikely)

1 (high)

P1

L3

Content by Label
showLabelsfalse
maxResults99
label+pos,+rule,-void
showSpacefalse
sorttitle
spacecom.atlassian.confluence.content.render.xhtml.model.resource.identifiers.SpaceResourceIdentifier@3bbaf8c
cqllabel = "rule" and label = "pos" and label != "void" and space = currentSpace()

Info

Information for Editors
In order to have a new guideline automatically listed above be sure to label it pos and rule.

Risk Assessment Summary

Rule

Severity

Likelihood

Detectable

Repairable

Priority

Level

POS30-CHighProbableYesYes

P18

L1

POS34-CHighUnlikelyYesNo

P6

L2

POS35-CHighLikelyNoNo

P9

L2

POS36-CHighProbableYesYes

P18

L1

POS37-CHighProbableYesYes

P18

L1

POS38-CMediumUnlikelyNoNo

P2

L3

POS39-CMediumLikelyYesNo

P12

L1

POS44-CLowProbableNoNo

P2

L3

POS47-CMediumProbableNoNo

P4

L3

POS48-CMediumProbableNoNo

P4

L3

POS49-CMediumProbableNoNo

P4

L3

POS50-CMediumProbableNoNo

P4

L3

POS51-CLowProbableNoNo

P2

L3

POS52-CLowProbableNoNo

P2

L3

POS53-CMediumProbableYesNo

P8

L2

POS54-CHighLikelyYesYes

P27

Rule

Severity

Likelihood

Remediation Cost

Priority

Level

POS30-C

1 (low)

2 (probable)

2 (medium)

P4

L3

POS31-C

2 (medium)

2 (probable)

1 (high)

P4

L3

POS32-C

2 (medium)

2 (probable)

2 (medium)

P8

L2

POS33-C

1 (low)

2 (probable)

3 (low)

P6

L2

POS34-C

3 (high)

1 (unlikely)

2 (medium)

P6

L2

POS35-C

3 (high)

3 (likely)

2 (medium)

P18

L1

Related Rules and Recommendations

Navigation Map
posix
posix
cellWidth700
wrapAfter1
cellHeight15

...

MSC31-C. Ensure that return values are compared against the proper type      13. Miscellaneous (MSC)       POS00-A. Avoid race conditions with multiple threadsImage Added Image Added Image Added