Fork us on GitHub Follow us on Facebook Follow us on Twitter

Changes between Version 11 and Version 12 of DiffFromUnix


Ignore:
Timestamp:
2013-03-28T14:31:20Z (6 years ago)
Author:
Jakub Jermář
Comment:

On legacy interfaces.

Legend:

Unmodified
Added
Removed
Modified
  • DiffFromUnix

    v11 v12  
    5555
    5656Linux is already moving away from X and no, HelenOS won't have X. We have our own compositing display server, just as Linux will probably have in the near future.
     57
     58== No legacy interfaces burden ==
     59
     60POSIX still contains a lot of old interfaces that are sometimes known to be broken in certain ways. Many interfaces such as `ctime()` are not thread-safe so the standard defines a fixed thread-safe interface suffixed with `_r()`. Other interfaces are dangerous to use because they make potentially space-unconstrained modifications to a buffer, for example `gets()` or `strcpy()`. There are interfaces intended to fix some of these issues, for example `strncpy()`, but unfortunately they turn out to be dangerous or at least problematic to use just as the original interface was. Even though it comes with a limited compatibility library, HelenOS does not have to be compatible with all this brain-damaged and insecure stuff. The HelenOS native `libc` does not provide any of these (or it is a bug). Instead, it attempts to learn from the mistakes of others and provides new clean interfaces where applicable.