Diff for /libaitpelco/src/aitpelco.c between versions 1.1.1.1.2.3 and 1.1.1.1.2.5

version 1.1.1.1.2.3, 2010/03/12 15:30:46 version 1.1.1.1.2.5, 2010/03/23 01:25:43
Line 60  inline void *pelcoOpen(u_char pelcoVer, u_char camNo) Line 60  inline void *pelcoOpen(u_char pelcoVer, u_char camNo)
                 case 'D':                  case 'D':
                 case 'd':                  case 'd':
                         if (camNo < FIRST_CAM_D) {                          if (camNo < FIRST_CAM_D) {
                                pelcoSetErr(ENOEXEC, "Error:: unsupported camera number %d!\n", camNo);                                pelcoSetErr(ENOEXEC, "unsupported camera number %d!\n", camNo);
                                 return NULL;                                  return NULL;
                         }                          }
   
Line 92  inline void *pelcoOpen(u_char pelcoVer, u_char camNo) Line 92  inline void *pelcoOpen(u_char pelcoVer, u_char camNo)
                         p = pp;                          p = pp;
                         break;                          break;
                 default:                  default:
                        pelcoSetErr(ENOEXEC, "Error:: unsupported Pelco protocol version!\n");                        pelcoSetErr(ENOEXEC, "unsupported Pelco protocol version!\n");
         }          }
   
         return p;          return p;
Line 119  inline void *pelcoLoad(u_char *buffer) Line 119  inline void *pelcoLoad(u_char *buffer)
         pelco_p_t *pp;          pelco_p_t *pp;
         void *p = NULL;          void *p = NULL;
   
           if (!buffer || !*buffer) {
                   pelcoSetErr(EINVAL, "invalid argument!\n");
                   return NULL;
           }
   
         switch (pelco_GetVersion(buffer)) {          switch (pelco_GetVersion(buffer)) {
                 case 'd':                  case 'd':
                         if (pelco_GetCamNo(buffer) < FIRST_CAM_D) {                          if (pelco_GetCamNo(buffer) < FIRST_CAM_D) {
                                pelcoSetErr(ENOEXEC, "Error:: unsupported camera number %d!\n",                                 pelcoSetErr(ENOEXEC, "unsupported camera number %d!\n", 
                                                 pelco_GetCamNo(buffer));                                                  pelco_GetCamNo(buffer));
                                 return NULL;                                  return NULL;
                         }                          }
Line 147  inline void *pelcoLoad(u_char *buffer) Line 152  inline void *pelcoLoad(u_char *buffer)
                         p = pp;                          p = pp;
                         break;                          break;
                 default:                  default:
                        pelcoSetErr(ENOEXEC, "Error:: unsupported Pelco protocol version!\n");                        pelcoSetErr(ENOEXEC, "unsupported Pelco protocol version!\n");
         }          }
   
         return p;          return p;
Line 167  inline u_char pelcoAddCmdData(void * __restrict p, u_c Line 172  inline u_char pelcoAddCmdData(void * __restrict p, u_c
         pelco_p_t *pp = (pelco_p_t *) p;          pelco_p_t *pp = (pelco_p_t *) p;
         u_char *ptr = p;          u_char *ptr = p;
   
        if (!p) {        if (!p || !*ptr) {
                pelcoSetErr(EINVAL, "Error:: invalid argument!\n");                pelcoSetErr(EINVAL, "invalid argument!\n");
                 return 0xFF;                  return 0xFF;
         }          }
   
         switch (ptr[0]) {          switch (ptr[0]) {
                 case VER_D_SYNC:                  case VER_D_SYNC:
                         if (ptr[1] < FIRST_CAM_D) {                          if (ptr[1] < FIRST_CAM_D) {
                                pelcoSetErr(ENOEXEC, "Error:: unsupported camera number %d!\n", ptr[1]);                                pelcoSetErr(ENOEXEC, "unsupported camera number %d!\n", ptr[1]);
                                 return 0xFF;                                  return 0xFF;
                         }                          }
   
Line 187  inline u_char pelcoAddCmdData(void * __restrict p, u_c Line 192  inline u_char pelcoAddCmdData(void * __restrict p, u_c
                         break;                          break;
                 case VER_P_STX:                  case VER_P_STX:
                         if (VER_P_ETX != ptr[6]) {                          if (VER_P_ETX != ptr[6]) {
                                pelcoSetErr(ENOEXEC, "Error:: Broken Pelco P packet!\n");                                pelcoSetErr(ENOEXEC, "Broken Pelco P packet!\n");
                                 return 0xFF;                                  return 0xFF;
                         }                          }
   
Line 198  inline u_char pelcoAddCmdData(void * __restrict p, u_c Line 203  inline u_char pelcoAddCmdData(void * __restrict p, u_c
                         pp->p_crc = crcPelco('p', p);                          pp->p_crc = crcPelco('p', p);
                         break;                          break;
                 default:                  default:
                        pelcoSetErr(ENOEXEC, "Error:: Invalid protocol!\n");                        pelcoSetErr(ENOEXEC, "Invalid protocol!\n");
                         return 0xFF;                          return 0xFF;
         }          }
   
Line 229  inline u_char pelcoChkSum(void * __restrict p, u_char  Line 234  inline u_char pelcoChkSum(void * __restrict p, u_char 
         pelco_d_t *pd = (pelco_d_t *) p;          pelco_d_t *pd = (pelco_d_t *) p;
         pelco_p_t *pp = (pelco_p_t *) p;          pelco_p_t *pp = (pelco_p_t *) p;
   
        if (!p) {        if (!p || !*ptr) {
                pelcoSetErr(EINVAL, "Error:: invalid argument!\n");                pelcoSetErr(EINVAL, "invalid argument!\n");
                 return 0xFF;                  return 0xFF;
         }          }
   
         switch (ptr[0]) {          switch (ptr[0]) {
                 case VER_D_SYNC:                  case VER_D_SYNC:
                         if (ptr[1] < FIRST_CAM_D) {                          if (ptr[1] < FIRST_CAM_D) {
                                pelcoSetErr(ENOEXEC, "Error:: unsupported camera number %d!\n", ptr[1]);                                pelcoSetErr(ENOEXEC, "unsupported camera number %d!\n", ptr[1]);
                                 return 0xFF;                                  return 0xFF;
                         }                          }
   
Line 247  inline u_char pelcoChkSum(void * __restrict p, u_char  Line 252  inline u_char pelcoChkSum(void * __restrict p, u_char 
                         break;                          break;
                 case VER_P_STX:                  case VER_P_STX:
                         if (VER_P_ETX != ptr[6]) {                          if (VER_P_ETX != ptr[6]) {
                                pelcoSetErr(ENOEXEC, "Error:: Broken Pelco P packet!\n");                                pelcoSetErr(ENOEXEC, "Broken Pelco P packet!\n");
                                 return 0xFF;                                  return 0xFF;
                         }                          }
   
Line 256  inline u_char pelcoChkSum(void * __restrict p, u_char  Line 261  inline u_char pelcoChkSum(void * __restrict p, u_char 
                                 pp->p_crc = sum;                                  pp->p_crc = sum;
                         break;                          break;
                 default:                  default:
                        pelcoSetErr(ENOEXEC, "Error:: Invalid protocol!\n");                        pelcoSetErr(ENOEXEC, "Invalid protocol!\n");
                         return 0xFF;                          return 0xFF;
         }          }
   

Removed from v.1.1.1.1.2.3  
changed lines
  Added in v.1.1.1.1.2.5


FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>