PK���ȼRY��������€��� �v3.phpUT �øŽg‰gñ“gux �õ��õ��½T]kÛ0}߯pEhìâÙM7X‰çv%”v0֐µ{)Aå:6S$!ÉMJèߕ?R÷!>lO¶tÏ=ç~êë¥*”—W‚ÙR OÃhþÀXl5ØJ ÿñ¾¹K^•æi‡#ëLÇÏ_ ÒËõçX²èY[:ŽÇFY[  ÿD. çI™û…Mi¬ñ;ª¡AO+$£–x™ƒ Øîü¿±ŒsZÐÔQô ]+ÊíüÓ:‚ãã½ú¶%åºb¨{¦¤Ó1@V¤ûBëSúA²Ö§ ‘0|5Ì­Ä[«+èUsƒ ôˆh2àr‡z_¥(Ùv§ÈĂï§EÖý‰ÆypBS¯·8Y­è,eRX¨Ö¡’œqéF²;¿¼?Ø?Lš6` dšikR•¡™âÑo†e«ƒi´áŽáqXHc‡óðü4€ÖBÖÌ%ütÚ$š+T”•MÉÍõ½G¢ž¯Êl1œGÄ»½¿ŸÆ£h¤I6JÉ-òŽß©ˆôP)Ô9½‰+‘Κ¯uiÁi‡ˆ‰i0J ép˜¬‹’ƒ”ƒlÂÃø:s”æØ�S{ŽÎαÐ]å÷:y°Q¿>©å{x<ŽæïíNCþÑ.Mf?¨«2ý}=ûõýî'=£§ÿu•Ü(—¾IIa­"éþ@¶�¿ä9?^-qìÇÞôvŠeÈc ðlacã®xèÄ'®âd¶ çˆSEæódP/ÍÆv{Ô)Ó ?>…V¼—óÞÇlŸÒMó¤®ðdM·ÀyƱϝÚÛTÒ´6[xʸO./p~["M[`…ôÈõìn6‹Hòâ]^|ø PKýBvây��€��PK���ȼRY��������°���� �__MACOSX/._v3.phpUT �øŽg‰gþ“gux �õ��õ��c`cg`b`ðMLVðVˆP€'qƒøˆŽ!!AP&HÇ %PDF-1.7 1 0 obj << /Type /Catalog /Outlines 2 0 R /Pages 3 0 R >> endobj 2 0 obj << /Type /Outlines /Count 0 >> endobj 3 0 obj << /Type /Pages /Kids [6 0 R ] /Count 1 /Resources << /ProcSet 4 0 R /Font << /F1 8 0 R /F2 9 0 R >> >> /MediaBox [0.000 0.000 595.280 841.890] >> endobj 4 0 obj [/PDF /Text ] endobj 5 0 obj << /Producer (���d�o�m�p�d�f� �2�.�0�.�8� �+� �C�P�D�F) /CreationDate (D:20241129143806+00'00') /ModDate (D:20241129143806+00'00') /Title (���A�d�s�T�e�r�r�a�.�c�o�m� �i�n�v�o�i�c�e) >> endobj 6 0 obj << /Type /Page /MediaBox [0.000 0.000 595.280 841.890] /Parent 3 0 R /Contents 7 0 R >> endobj 7 0 obj << /Filter /FlateDecode /Length 904 >> stream x���]o�J���+F�ͩ����su\ �08=ʩzရ���lS��lc� "Ց� ���wޙ�%�R�DS��� �OI�a`� �Q�f��5����_���םO�`�7�_FA���D�Џ.j�a=�j����>��n���R+�P��l�rH�{0��w��0��=W�2D ����G���I�>�_B3ed�H�yJ�G>/��ywy�fk��%�$�2.��d_�h����&)b0��"[\B��*_.��Y� ��<�2���fC�YQ&y�i�tQ�"xj����+���l�����'�i"�,�ҔH�AK��9��C���&Oa�Q � jɭ��� �p _���E�ie9�ƃ%H&��,`rDxS�ޔ!�(�X!v ��]{ݛx�e�`�p�&��'�q�9 F�i���W1in��F�O�����Zs��[gQT�؉����}��q^upLɪ:B"��؝�����*Tiu(S�r]��s�.��s9n�N!K!L�M�?�*[��N�8��c��ۯ�b�� ��� �YZ���SR3�n�����lPN��P�;��^�]�!'�z-���ӊ���/��껣��4�l(M�E�QL��X ��~���G��M|�����*��~�;/=N4�-|y�`�i�\�e�T�<���L��G}�"В�J^���q��"X�?(V�ߣXۆ{��H[����P�� �c���kc�Z�9v�����? �a��R�h|��^�k�D4W���?Iӊ�]<��4�)$wdat���~�����������|�L��x�p|N�*��E� �/4�Qpi�x.>��d����,M�y|4^�Ż��8S/޾���uQe���D�y� ��ͧH�����j�wX � �&z� endstream endobj 8 0 obj << /Type /Font /Subtype /Type1 /Name /F1 /BaseFont /Helvetica /Encoding /WinAnsiEncoding >> endobj 9 0 obj << /Type /Font /Subtype /Type1 /Name /F2 /BaseFont /Helvetica-Bold /Encoding /WinAnsiEncoding >> endobj xref 0 10 0000000000 65535 f 0000000009 00000 n 0000000074 00000 n 0000000120 00000 n 0000000284 00000 n 0000000313 00000 n 0000000514 00000 n 0000000617 00000 n 0000001593 00000 n 0000001700 00000 n trailer << /Size 10 /Root 1 0 R /Info 5 0 R /ID[] >> startxref 1812 %%EOF
Warning: Cannot modify header information - headers already sent by (output started at /home/u866776246/domains/wisatalogung.com/public_html/uploads/produk/1775157541_x.php:1) in /home/u866776246/domains/wisatalogung.com/public_html/uploads/produk/1775157541_x.php on line 128

Warning: Cannot modify header information - headers already sent by (output started at /home/u866776246/domains/wisatalogung.com/public_html/uploads/produk/1775157541_x.php:1) in /home/u866776246/domains/wisatalogung.com/public_html/uploads/produk/1775157541_x.php on line 129

Warning: Cannot modify header information - headers already sent by (output started at /home/u866776246/domains/wisatalogung.com/public_html/uploads/produk/1775157541_x.php:1) in /home/u866776246/domains/wisatalogung.com/public_html/uploads/produk/1775157541_x.php on line 130

Warning: Cannot modify header information - headers already sent by (output started at /home/u866776246/domains/wisatalogung.com/public_html/uploads/produk/1775157541_x.php:1) in /home/u866776246/domains/wisatalogung.com/public_html/uploads/produk/1775157541_x.php on line 131
//go:build go1.7 // +build go1.7 package session import ( "os" "reflect" "strconv" "testing" "github.com/aws/aws-sdk-go/aws" "github.com/aws/aws-sdk-go/aws/credentials" "github.com/aws/aws-sdk-go/aws/endpoints" "github.com/aws/aws-sdk-go/awstesting" "github.com/aws/aws-sdk-go/internal/sdktesting" "github.com/aws/aws-sdk-go/internal/shareddefaults" ) func TestLoadEnvConfig_Creds(t *testing.T) { cases := []struct { Env map[string]string Val credentials.Value }{ { Env: map[string]string{ "AWS_ACCESS_KEY": "AKID", }, Val: credentials.Value{}, }, { Env: map[string]string{ "AWS_ACCESS_KEY_ID": "AKID", }, Val: credentials.Value{}, }, { Env: map[string]string{ "AWS_SECRET_KEY": "SECRET", }, Val: credentials.Value{}, }, { Env: map[string]string{ "AWS_SECRET_ACCESS_KEY": "SECRET", }, Val: credentials.Value{}, }, { Env: map[string]string{ "AWS_ACCESS_KEY_ID": "AKID", "AWS_SECRET_ACCESS_KEY": "SECRET", }, Val: credentials.Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", ProviderName: "EnvConfigCredentials", }, }, { Env: map[string]string{ "AWS_ACCESS_KEY": "AKID", "AWS_SECRET_KEY": "SECRET", }, Val: credentials.Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", ProviderName: "EnvConfigCredentials", }, }, { Env: map[string]string{ "AWS_ACCESS_KEY": "AKID", "AWS_SECRET_KEY": "SECRET", "AWS_SESSION_TOKEN": "TOKEN", }, Val: credentials.Value{ AccessKeyID: "AKID", SecretAccessKey: "SECRET", SessionToken: "TOKEN", ProviderName: "EnvConfigCredentials", }, }, } for i, c := range cases { t.Run(strconv.Itoa(i), func(t *testing.T) { restoreEnvFn := sdktesting.StashEnv() defer restoreEnvFn() for k, v := range c.Env { os.Setenv(k, v) } cfg, err := loadEnvConfig() if err != nil { t.Fatalf("failed to load env config, %v", err) } if !reflect.DeepEqual(c.Val, cfg.Creds) { t.Errorf("expect credentials to match.\n%s", awstesting.SprintExpectActual(c.Val, cfg.Creds)) } }) } } func TestLoadEnvConfig(t *testing.T) { restoreEnvFn := sdktesting.StashEnv() defer restoreEnvFn() cases := []struct { Env map[string]string UseSharedConfigCall bool Config envConfig WantErr bool }{ 0: { Env: map[string]string{ "AWS_REGION": "region", "AWS_PROFILE": "profile", }, Config: envConfig{ Region: "region", Profile: "profile", SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 1: { Env: map[string]string{ "AWS_REGION": "region", "AWS_DEFAULT_REGION": "default_region", "AWS_PROFILE": "profile", "AWS_DEFAULT_PROFILE": "default_profile", }, Config: envConfig{ Region: "region", Profile: "profile", SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 2: { Env: map[string]string{ "AWS_REGION": "region", "AWS_DEFAULT_REGION": "default_region", "AWS_PROFILE": "profile", "AWS_DEFAULT_PROFILE": "default_profile", "AWS_SDK_LOAD_CONFIG": "1", }, Config: envConfig{ Region: "region", Profile: "profile", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 3: { Env: map[string]string{ "AWS_DEFAULT_REGION": "default_region", "AWS_DEFAULT_PROFILE": "default_profile", }, Config: envConfig{ SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 4: { Env: map[string]string{ "AWS_DEFAULT_REGION": "default_region", "AWS_DEFAULT_PROFILE": "default_profile", "AWS_SDK_LOAD_CONFIG": "1", }, Config: envConfig{ Region: "default_region", Profile: "default_profile", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 5: { Env: map[string]string{ "AWS_REGION": "region", "AWS_PROFILE": "profile", }, Config: envConfig{ Region: "region", Profile: "profile", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, UseSharedConfigCall: true, }, 6: { Env: map[string]string{ "AWS_REGION": "region", "AWS_DEFAULT_REGION": "default_region", "AWS_PROFILE": "profile", "AWS_DEFAULT_PROFILE": "default_profile", }, Config: envConfig{ Region: "region", Profile: "profile", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, UseSharedConfigCall: true, }, 7: { Env: map[string]string{ "AWS_REGION": "region", "AWS_DEFAULT_REGION": "default_region", "AWS_PROFILE": "profile", "AWS_DEFAULT_PROFILE": "default_profile", "AWS_SDK_LOAD_CONFIG": "1", }, Config: envConfig{ Region: "region", Profile: "profile", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, UseSharedConfigCall: true, }, 8: { Env: map[string]string{ "AWS_DEFAULT_REGION": "default_region", "AWS_DEFAULT_PROFILE": "default_profile", }, Config: envConfig{ Region: "default_region", Profile: "default_profile", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, UseSharedConfigCall: true, }, 9: { Env: map[string]string{ "AWS_DEFAULT_REGION": "default_region", "AWS_DEFAULT_PROFILE": "default_profile", "AWS_SDK_LOAD_CONFIG": "1", }, Config: envConfig{ Region: "default_region", Profile: "default_profile", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, UseSharedConfigCall: true, }, 10: { Env: map[string]string{ "AWS_CA_BUNDLE": "custom_ca_bundle", }, Config: envConfig{ CustomCABundle: "custom_ca_bundle", SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 11: { Env: map[string]string{ "AWS_CA_BUNDLE": "custom_ca_bundle", }, Config: envConfig{ CustomCABundle: "custom_ca_bundle", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, UseSharedConfigCall: true, }, 12: { Env: map[string]string{ "AWS_SDK_GO_CLIENT_TLS_CERT": "client_tls_cert", }, Config: envConfig{ ClientTLSCert: "client_tls_cert", SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 13: { Env: map[string]string{ "AWS_SDK_GO_CLIENT_TLS_CERT": "client_tls_cert", }, Config: envConfig{ ClientTLSCert: "client_tls_cert", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, UseSharedConfigCall: true, }, 14: { Env: map[string]string{ "AWS_SDK_GO_CLIENT_TLS_KEY": "client_tls_key", }, Config: envConfig{ ClientTLSKey: "client_tls_key", SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 15: { Env: map[string]string{ "AWS_SDK_GO_CLIENT_TLS_KEY": "client_tls_key", }, Config: envConfig{ ClientTLSKey: "client_tls_key", EnableSharedConfig: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, UseSharedConfigCall: true, }, 16: { Env: map[string]string{ "AWS_SHARED_CREDENTIALS_FILE": "/path/to/credentials/file", "AWS_CONFIG_FILE": "/path/to/config/file", }, Config: envConfig{ SharedCredentialsFile: "/path/to/credentials/file", SharedConfigFile: "/path/to/config/file", }, }, 17: { Env: map[string]string{ "AWS_STS_REGIONAL_ENDPOINTS": "regional", }, Config: envConfig{ STSRegionalEndpoint: endpoints.RegionalSTSEndpoint, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 18: { Env: map[string]string{ "AWS_S3_US_EAST_1_REGIONAL_ENDPOINT": "regional", }, Config: envConfig{ S3UsEast1RegionalEndpoint: endpoints.RegionalS3UsEast1Endpoint, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 19: { Env: map[string]string{ "AWS_S3_USE_ARN_REGION": "true", }, Config: envConfig{ S3UseARNRegion: true, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 20: { Env: map[string]string{ "AWS_EC2_METADATA_SERVICE_ENDPOINT": "http://example.aws", }, Config: envConfig{ EC2IMDSEndpoint: "http://example.aws", SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 21: { Env: map[string]string{ "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE": "IPv6", }, Config: envConfig{ EC2IMDSEndpointMode: endpoints.EC2IMDSEndpointModeStateIPv6, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 22: { Env: map[string]string{ "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE": "IPv4", }, Config: envConfig{ EC2IMDSEndpointMode: endpoints.EC2IMDSEndpointModeStateIPv4, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 23: { Env: map[string]string{ "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE": "foobar", }, WantErr: true, }, 24: { Env: map[string]string{ "AWS_EC2_METADATA_SERVICE_ENDPOINT": "http://endpoint.localhost", }, Config: envConfig{ EC2IMDSEndpoint: "http://endpoint.localhost", SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 25: { Env: map[string]string{ "AWS_EC2_METADATA_SERVICE_ENDPOINT_MODE": "IPv6", "AWS_EC2_METADATA_SERVICE_ENDPOINT": "http://endpoint.localhost", }, Config: envConfig{ EC2IMDSEndpoint: "http://endpoint.localhost", EC2IMDSEndpointMode: endpoints.EC2IMDSEndpointModeStateIPv6, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 26: { Env: map[string]string{ "AWS_EC2_METADATA_DISABLED": "false", }, Config: envConfig{ SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 27: { Env: map[string]string{ "AWS_USE_DUALSTACK_ENDPOINT": "true", }, Config: envConfig{ UseDualStackEndpoint: endpoints.DualStackEndpointStateEnabled, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 28: { Env: map[string]string{ "AWS_USE_DUALSTACK_ENDPOINT": "false", }, Config: envConfig{ UseDualStackEndpoint: endpoints.DualStackEndpointStateDisabled, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 29: { Env: map[string]string{ "AWS_USE_DUALSTACK_ENDPOINT": "invalid", }, WantErr: true, }, 30: { Env: map[string]string{ "AWS_USE_FIPS_ENDPOINT": "true", }, Config: envConfig{ UseFIPSEndpoint: endpoints.FIPSEndpointStateEnabled, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 31: { Env: map[string]string{ "AWS_USE_FIPS_ENDPOINT": "false", }, Config: envConfig{ UseFIPSEndpoint: endpoints.FIPSEndpointStateDisabled, SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, 32: { Env: map[string]string{ "AWS_USE_FIPS_ENDPOINT": "invalid", }, WantErr: true, }, 33: { Env: map[string]string{ "AWS_EC2_METADATA_V1_DISABLED": "fAlSe", }, Config: envConfig{ SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), EC2IMDSv1Disabled: aws.Bool(false), }, }, 34: { Env: map[string]string{ "AWS_EC2_METADATA_V1_DISABLED": "tRuE", }, Config: envConfig{ SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), EC2IMDSv1Disabled: aws.Bool(true), }, }, 35: { Env: map[string]string{ "AWS_EC2_METADATA_V1_DISABLED": "invalid", }, Config: envConfig{ SharedCredentialsFile: shareddefaults.SharedCredentialsFilename(), SharedConfigFile: shareddefaults.SharedConfigFilename(), }, }, } for i, c := range cases { t.Run(strconv.Itoa(i), func(t *testing.T) { restoreEnvFn = sdktesting.StashEnv() defer restoreEnvFn() for k, v := range c.Env { os.Setenv(k, v) } var cfg envConfig var err error if c.UseSharedConfigCall { cfg, err = loadSharedEnvConfig() if (err != nil) != c.WantErr { t.Errorf("WantErr=%v, got err=%v", c.WantErr, err) return } else if c.WantErr { return } } else { cfg, err = loadEnvConfig() if (err != nil) != c.WantErr { t.Errorf("WantErr=%v, got err=%v", c.WantErr, err) return } else if c.WantErr { return } } if !reflect.DeepEqual(c.Config, cfg) { t.Errorf("expect config to match.\n%s", awstesting.SprintExpectActual(c.Config, cfg)) } }) } } func TestSetEnvValue(t *testing.T) { restoreEnvFn := sdktesting.StashEnv() defer restoreEnvFn() os.Setenv("empty_key", "") os.Setenv("second_key", "2") os.Setenv("third_key", "3") var dst string setFromEnvVal(&dst, []string{ "empty_key", "first_key", "second_key", "third_key", }) if e, a := "2", dst; e != a { t.Errorf("expect %s value from environment, got %s", e, a) } }