def pack_attributes(self):
		"""
			Information Code Value  Note
			?context	0x01	Not currently implemented
			?servlet_path   0x02	Not currently implemented
			?remote_user	0x03	
			?auth_type  0x04	
			?query_string   0x05	
			?route  0x06	
			?ssl_cert   0x07	
			?ssl_cipher 0x08	
			?ssl_session	0x09	
			?req_attribute  0x0A	Name (the name of the attribut follows)
			?ssl_key_size   0x0B	
			?secret 0x0C	
			?stored_method  0x0D	
			are_done	0xFF	request_terminator
		"""

		res = b""

		for attr in self.attributes:
			a_name = attr['name']
			code = AjpForwardRequest.ATTRIBUTES.index(a_name) + 1
			res += struct.pack("b", code)
			if a_name == "req_attribute":
				aa_name, a_value = attr['value']
				res += pack_string(aa_name)
				res += pack_string(a_value)
			else:
				res += pack_string(attr['value'])

		res += struct.pack("B", 0xFF)
		return res

			Information Code Value  Note
			?context	0x01	Not currently implemented
			?servlet_path   0x02	Not currently implemented
			?remote_user	0x03	
			?auth_type  0x04	
			?query_string   0x05	
			?route  0x06	
			?ssl_cert   0x07	
			?ssl_cipher 0x08	
			?ssl_session	0x09	
			?req_attribute  0x0A	Name (the name of the attribut follows)
			?ssl_key_size   0x0B	
			?secret 0x0C	
			?stored_method  0x0D	
			are_done	0xFF	request_terminator
		
ajpy/ajp.py