sunos4.h
上传用户:lyxiangda
上传日期:2007-01-12
资源大小:3042k
文件大小:5k
源码类别:

CA认证

开发平台:

WINDOWS

  1. /* 
  2. # The contents of this file are subject to the Mozilla Public
  3. # License Version 1.1 (the "License"); you may not use this file
  4. # except in compliance with the License. You may obtain a copy of
  5. # the License at http://www.mozilla.org/MPL/
  6. # Software distributed under the License is distributed on an "AS
  7. # IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
  8. # implied. See the License for the specific language governing
  9. # rights and limitations under the License.
  10. # The Original Code is the Netscape security libraries.
  11. # The Initial Developer of the Original Code is Netscape
  12. # Communications Corporation.  Portions created by Netscape are 
  13. # Copyright (C) 1994-2000 Netscape Communications Corporation.  All
  14. # Rights Reserved.
  15. # Contributor(s):
  16. # Alternatively, the contents of this file may be used under the
  17. # terms of the GNU General Public License Version 2 or later (the
  18. # "GPL"), in which case the provisions of the GPL are applicable 
  19. # instead of those above.  If you wish to allow use of your 
  20. # version of this file only under the terms of the GPL and not to
  21. # allow others to use your version of this file under the MPL,
  22. # indicate your decision by deleting the provisions above and
  23. # replace them with the notice and other provisions required by
  24. # the GPL.  If you do not delete the provisions above, a recipient
  25. # may use your version of this file under either the MPL or the
  26. # GPL.
  27.  */
  28. #ifndef pr_sunos4_h___
  29. #define pr_sunos4_h___
  30. #ifndef SVR4
  31. /*
  32. ** Hodge podge of random missing prototypes for the Sunos4 system
  33. */
  34. #include <stdio.h>
  35. #include <stdarg.h>
  36. #include <time.h>
  37. #include <limits.h>
  38. #include <sys/types.h>
  39. #define PATH_MAX _POSIX_PATH_MAX
  40. struct timeval;
  41. struct timezone;
  42. struct itimerval;
  43. struct sockaddr;
  44. struct stat;
  45. struct tm;
  46. /* ctype.h */
  47. extern int tolower(int);
  48. extern int toupper(int);
  49. /* errno.h */
  50. extern char *sys_errlist[];
  51. extern int sys_nerr;
  52. #define strerror(e) sys_errlist[((unsigned)(e) < sys_nerr) ? e : 0]
  53. extern void perror(const char *);
  54. /* getopt */
  55. extern char *optarg;
  56. extern int optind;
  57. extern int getopt(int argc, char **argv, char *spec);
  58. /* math.h */
  59. extern int srandom(long val);
  60. extern long random(void);
  61. /* memory.h */
  62. #define memmove(to,from,len) bcopy((char*)(from),(char*)(to),len)
  63. extern void bcopy(const char *, char *, int);
  64. /* signal.h */
  65. /*
  66. ** SunOS4 sigaction hides interrupts by default, so we can safely define
  67. ** SA_RESTART to 0 (HP-UX is a counter-example -- its sigaction does not
  68. ** hide interrupts but lacks an SA_RESTART option; you must use sigvector
  69. ** and tweak the sigcontext from within each signal handler!).
  70. */
  71. #define SA_RESTART 0
  72. #define SA_SIGINFO 0
  73. /* stdio.h */
  74. extern int printf(const char *, ...);
  75. extern int fprintf(FILE *, const char *, ...);
  76. extern int vprintf(const char *, va_list);
  77. extern int vfprintf(FILE *, const char *, va_list);
  78. extern char *vsprintf(char *, const char *, va_list);
  79. extern int scanf(const char *, ...);
  80. extern int sscanf(const char *, const char *, ...);
  81. extern int fscanf(FILE *, const char *, ...);
  82. extern int fgetc(FILE *);
  83. extern int fputc(int, FILE *);
  84. extern int fputs(const char *, FILE *);
  85. extern int puts(const char *);
  86. extern int fread(void *, size_t, size_t, FILE *);
  87. extern int fwrite(const char *, int, int, FILE *);
  88. extern int fseek(FILE *, long, int);
  89. extern long ftell(FILE *);
  90. extern int rewind(FILE *);
  91. extern int fflush(FILE *);
  92. extern int _flsbuf(unsigned char, FILE *);
  93. extern int fclose(FILE *);
  94. extern int remove(const char *);
  95. extern int setvbuf(FILE *, char *, int, size_t);
  96. extern int system(const char *);
  97. extern FILE *popen(const char *, const char *);
  98. extern int pclose(FILE *);
  99. /* stdlib.h */
  100. #define strtoul strtol
  101. extern int isatty(int fildes);
  102. extern long strtol(const char *, char **, int);
  103. extern int putenv(const char *);
  104. extern void srand48(long);
  105. extern long lrand48(void);
  106. extern double drand48(void);
  107. /* string.h */
  108. extern int strcasecmp(const char *, const char *);
  109. extern int strncasecmp(const char *, const char *, size_t);
  110. extern int strcoll(const char *, const char *);
  111. /* time.h */
  112. extern time_t mktime(struct tm *);
  113. extern size_t strftime(char *, size_t, const char *, const struct tm *);
  114. extern int gettimeofday(struct timeval *, struct timezone *);
  115. extern int setitimer(int, struct itimerval *, struct itimerval *);
  116. extern time_t time(time_t *);
  117. extern time_t timegm(struct tm *);
  118. extern struct tm *localtime(const time_t *);
  119. extern struct tm *gmtime(const time_t *);
  120. /* unistd.h */
  121. extern int rename(const char *, const char *);
  122. extern int ioctl(int, int, int *arg);
  123. extern int connect(int, struct sockaddr *, int);
  124. extern int readlink(const char *, char *, int);
  125. extern int symlink(const char *, const char *);
  126. extern int ftruncate(int, off_t);
  127. extern int fchmod(int, mode_t);
  128. extern int fchown(int, uid_t, gid_t);
  129. extern int lstat(const char *, struct stat *);
  130. extern int fstat(int, struct stat *);
  131. extern int select(int, fd_set *, fd_set *, fd_set *, struct timeval *);
  132. extern int gethostname(char *, int);
  133. extern char *getwd(char *);
  134. extern int getpagesize(void);
  135. #endif /* SVR4 */
  136. #endif /* pr_sunos4_h___ */