• Home
  • History
  • Annotate
  • Raw
  • Download

Lines Matching refs:packet

34 			                 cups_snmp_t *packet);
36 cups_snmp_t *packet);
65 static void snmp_set_error(cups_snmp_t *packet,
160 _cupsSNMPIsOID(cups_snmp_t *packet, /* I - Response packet */ in _cupsSNMPIsOID() argument
170 DEBUG_printf(("4_cupsSNMPIsOID(packet=%p, oid=%p)", packet, oid)); in _cupsSNMPIsOID()
172 if (!packet || !oid) in _cupsSNMPIsOID()
184 i < CUPS_SNMP_MAX_OID && oid[i] >= 0 && packet->object_name[i] >= 0; in _cupsSNMPIsOID()
186 if (oid[i] != packet->object_name[i]) in _cupsSNMPIsOID()
194 i < CUPS_SNMP_MAX_OID && oid[i] == packet->object_name[i])); in _cupsSNMPIsOID()
196 return (i < CUPS_SNMP_MAX_OID && oid[i] == packet->object_name[i]); in _cupsSNMPIsOID()
209 cups_snmp_t *packet, /* I - Response packet */ in _cupsSNMPIsOIDPrefixed() argument
219 DEBUG_printf(("4_cupsSNMPIsOIDPrefixed(packet=%p, prefix=%p)", packet, in _cupsSNMPIsOIDPrefixed()
222 if (!packet || !prefix) in _cupsSNMPIsOIDPrefixed()
234 i < CUPS_SNMP_MAX_OID && prefix[i] >= 0 && packet->object_name[i] >= 0; in _cupsSNMPIsOIDPrefixed()
236 if (prefix[i] != packet->object_name[i]) in _cupsSNMPIsOIDPrefixed()
344 cups_snmp_t *packet, /* I - SNMP packet buffer */ in _cupsSNMPRead() argument
358 DEBUG_printf(("4_cupsSNMPRead(fd=%d, packet=%p, timeout=%.1f)", fd, packet, in _cupsSNMPRead()
361 if (fd < 0 || !packet) in _cupsSNMPRead()
437 asn1_decode_snmp(buffer, (size_t)bytes, packet); in _cupsSNMPRead()
439 memcpy(&(packet->address), &address, sizeof(packet->address)); in _cupsSNMPRead()
447 return (packet); in _cupsSNMPRead()
559 cups_snmp_t packet; /* Current response packet */ in _cupsSNMPWalk() local
584 _cupsSNMPCopyOID(packet.object_name, prefix, CUPS_SNMP_MAX_OID); in _cupsSNMPWalk()
593 packet.object_name)) in _cupsSNMPWalk()
600 if (!_cupsSNMPRead(fd, &packet, timeout)) in _cupsSNMPWalk()
607 if (!_cupsSNMPIsOIDPrefixed(&packet, prefix) || in _cupsSNMPWalk()
608 _cupsSNMPIsOID(&packet, lastoid)) in _cupsSNMPWalk()
615 if (packet.error || packet.error_status) in _cupsSNMPWalk()
622 _cupsSNMPCopyOID(lastoid, packet.object_name, CUPS_SNMP_MAX_OID); in _cupsSNMPWalk()
626 (*cb)(&packet, data); in _cupsSNMPWalk()
648 cups_snmp_t packet; /* SNMP message packet */ in _cupsSNMPWrite() local
676 memset(&packet, 0, sizeof(packet)); in _cupsSNMPWrite()
678 packet.version = version; in _cupsSNMPWrite()
679 packet.request_type = request_type; in _cupsSNMPWrite()
680 packet.request_id = request_id; in _cupsSNMPWrite()
681 packet.object_type = CUPS_ASN1_NULL_VALUE; in _cupsSNMPWrite()
683 strlcpy(packet.community, community, sizeof(packet.community)); in _cupsSNMPWrite()
686 packet.object_name[i] = oid[i]; in _cupsSNMPWrite()
687 packet.object_name[i] = -1; in _cupsSNMPWrite()
697 bytes = asn1_encode_snmp(buffer, sizeof(buffer), &packet); in _cupsSNMPWrite()
925 cups_snmp_t *packet) /* I - SNMP packet */ in asn1_decode_snmp() argument
936 memset(packet, 0, sizeof(cups_snmp_t)); in asn1_decode_snmp()
937 packet->object_name[0] = -1; in asn1_decode_snmp()
943 snmp_set_error(packet, _("Packet does not start with SEQUENCE")); in asn1_decode_snmp()
945 snmp_set_error(packet, _("SEQUENCE uses indefinite length")); in asn1_decode_snmp()
947 snmp_set_error(packet, _("No version number")); in asn1_decode_snmp()
949 snmp_set_error(packet, _("Version uses indefinite length")); in asn1_decode_snmp()
950 else if ((packet->version = asn1_get_integer(&bufptr, bufend, length)) in asn1_decode_snmp()
952 snmp_set_error(packet, _("Bad SNMP version number")); in asn1_decode_snmp()
954 snmp_set_error(packet, _("No community name")); in asn1_decode_snmp()
956 snmp_set_error(packet, _("Community name uses indefinite length")); in asn1_decode_snmp()
959 asn1_get_string(&bufptr, bufend, length, packet->community, in asn1_decode_snmp()
960 sizeof(packet->community)); in asn1_decode_snmp()
962 if ((packet->request_type = (cups_asn1_t)asn1_get_type(&bufptr, bufend)) in asn1_decode_snmp()
964 snmp_set_error(packet, _("Packet does not contain a Get-Response-PDU")); in asn1_decode_snmp()
966 snmp_set_error(packet, _("Get-Response-PDU uses indefinite length")); in asn1_decode_snmp()
968 snmp_set_error(packet, _("No request-id")); in asn1_decode_snmp()
970 snmp_set_error(packet, _("request-id uses indefinite length")); in asn1_decode_snmp()
973 packet->request_id = (unsigned)asn1_get_integer(&bufptr, bufend, length); in asn1_decode_snmp()
976 snmp_set_error(packet, _("No error-status")); in asn1_decode_snmp()
978 snmp_set_error(packet, _("error-status uses indefinite length")); in asn1_decode_snmp()
981 packet->error_status = asn1_get_integer(&bufptr, bufend, length); in asn1_decode_snmp()
984 snmp_set_error(packet, _("No error-index")); in asn1_decode_snmp()
986 snmp_set_error(packet, _("error-index uses indefinite length")); in asn1_decode_snmp()
989 packet->error_index = asn1_get_integer(&bufptr, bufend, length); in asn1_decode_snmp()
992 snmp_set_error(packet, _("No variable-bindings SEQUENCE")); in asn1_decode_snmp()
994 snmp_set_error(packet, in asn1_decode_snmp()
997 snmp_set_error(packet, _("No VarBind SEQUENCE")); in asn1_decode_snmp()
999 snmp_set_error(packet, _("VarBind uses indefinite length")); in asn1_decode_snmp()
1001 snmp_set_error(packet, _("No name OID")); in asn1_decode_snmp()
1003 snmp_set_error(packet, _("Name OID uses indefinite length")); in asn1_decode_snmp()
1006 asn1_get_oid(&bufptr, bufend, length, packet->object_name, in asn1_decode_snmp()
1009 packet->object_type = (cups_asn1_t)asn1_get_type(&bufptr, bufend); in asn1_decode_snmp()
1012 packet->object_type != CUPS_ASN1_NULL_VALUE && in asn1_decode_snmp()
1013 packet->object_type != CUPS_ASN1_OCTET_STRING) in asn1_decode_snmp()
1014 snmp_set_error(packet, _("Value uses indefinite length")); in asn1_decode_snmp()
1017 switch (packet->object_type) in asn1_decode_snmp()
1020 packet->object_value.boolean = in asn1_decode_snmp()
1025 packet->object_value.integer = in asn1_decode_snmp()
1035 packet->object_value.string.num_bytes = length; in asn1_decode_snmp()
1037 (char *)packet->object_value.string.bytes, in asn1_decode_snmp()
1038 sizeof(packet->object_value.string.bytes)); in asn1_decode_snmp()
1043 packet->object_value.oid, CUPS_SNMP_MAX_OID); in asn1_decode_snmp()
1047 packet->object_value.counter = in asn1_decode_snmp()
1052 packet->object_value.gauge = in asn1_decode_snmp()
1057 packet->object_value.timeticks = in asn1_decode_snmp()
1062 snmp_set_error(packet, _("Unsupported value type")); in asn1_decode_snmp()
1072 return (packet->error ? -1 : 0); in asn1_decode_snmp()
1083 cups_snmp_t *packet) /* I - SNMP packet */ in asn1_encode_snmp() argument
1101 namelen = asn1_size_oid(packet->object_name); in asn1_encode_snmp()
1103 switch (packet->object_type) in asn1_encode_snmp()
1110 valuelen = asn1_size_integer(packet->object_value.boolean); in asn1_encode_snmp()
1114 valuelen = asn1_size_integer(packet->object_value.integer); in asn1_encode_snmp()
1118 valuelen = packet->object_value.string.num_bytes; in asn1_encode_snmp()
1122 valuelen = asn1_size_oid(packet->object_value.oid); in asn1_encode_snmp()
1126 packet->error = "Unknown object type"; in asn1_encode_snmp()
1133 reqlen = 2 + asn1_size_integer((int)packet->request_id) + in asn1_encode_snmp()
1134 2 + asn1_size_integer(packet->error_status) + in asn1_encode_snmp()
1135 2 + asn1_size_integer(packet->error_index) + in asn1_encode_snmp()
1137 commlen = (unsigned)strlen(packet->community); in asn1_encode_snmp()
1138 msglen = 2 + asn1_size_integer(packet->version) + in asn1_encode_snmp()
1145 packet->error = "Message too large for buffer"; in asn1_encode_snmp()
1158 asn1_set_integer(&bufptr, packet->version); in asn1_encode_snmp()
1163 memcpy(bufptr, packet->community, commlen); in asn1_encode_snmp()
1166 *bufptr++ = packet->request_type; /* Get-Request-PDU/Get-Next-Request-PDU */ in asn1_encode_snmp()
1169 asn1_set_integer(&bufptr, (int)packet->request_id); in asn1_encode_snmp()
1171 asn1_set_integer(&bufptr, packet->error_status); in asn1_encode_snmp()
1173 asn1_set_integer(&bufptr, packet->error_index); in asn1_encode_snmp()
1181 asn1_set_oid(&bufptr, packet->object_name); in asn1_encode_snmp()
1184 switch (packet->object_type) in asn1_encode_snmp()
1193 asn1_set_integer(&bufptr, packet->object_value.boolean); in asn1_encode_snmp()
1197 asn1_set_integer(&bufptr, packet->object_value.integer); in asn1_encode_snmp()
1203 memcpy(bufptr, packet->object_value.string.bytes, valuelen); in asn1_encode_snmp()
1208 asn1_set_oid(&bufptr, packet->object_value.oid); in asn1_encode_snmp()
1664 snmp_set_error(cups_snmp_t *packet, /* I - Packet */ in snmp_set_error() argument
1673 packet->error = _cupsLangString(cg->lang_default, message); in snmp_set_error()